Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - @XSStringManolo

#731
GNU/Linux / Re: linux en general..
1 Marzo 2020, 15:03 PM
Creo que sé que malware es.
Qué versión de router tienes?
Puede ser que te empezó a pasar tras conectarse a Tor?
Al conectarte a internet si miras el cpu va al 100% por eso se te freezea el PC?

Si es lo que pienso, te lo instalaron mediante un nodo de salida de Tor, mediante una inyección haciendo un MITM a tu conexión wi-fi o red móvil(esto último muy raro pero posible si estamos hablando de alguien con conocimientos de redes) o explotando tu router.

El malware se instala en el gestor de arranque de tu disco duro y de ahí pasa al sistema. En kali no te afecta directamente porque corre en la RAM no en el disco duro. Si lo instalas te va a pasar lo mismo.


Para solucionarlo:
- Descárgate la última versión de firmware del router y guárdalo en un pendrive.
- Quita el pendrive.
- Instala Windows.
- Descarga RogueKiller.
- Descarga Eset.
- Descarga instalador Free Alarm Zone Av + Firewall.
- Conéctate por cable del PC a router y desactiva el Wi-Fi.
- Actualiza el firmware descargado en el Pendrive.
- Corre RogueKiller.
- Escanea con Eset. Y pasa el reporte al foro. Desinstala Eset.
- Espera a que te indiquemos lo que eliminar.
- Elimina lo indicado e instala Zone alarm ...
- En los móviles que tengas vas a ajustes, red, modo de red. Y seleccionas solo 3G o solo 4G si te va bien(y tienes esta opción). Nunca 2G ni conectar automáticamente.
- En la opciones de puntos de acceso, tipo de APN deja solo default/internet, que sirven para acceder a internet y el supl que sirve para determinar tu ubicación geográfica, que sirve para bloquear suplantaciones de red desde otras areas geográficas (entre otras cosas)
- Sigue una guías de hardening home network, Hardening wi-fi. Hardening router...

PD: Ni caso a los operadores, los que entienden les tienes que tocar mucho los huevos para que los pongan.

No te tienen miedo por Kali, no te freezea porque lo usas en live CD (RAM) y el malware lo tienes en la tabla de arranque del disco duro.
#732
Busca en google: email forensic analysis imap

Hay muchas cosas que mirar como para comentarlo todo por aquí.

Yo empezaría por dumpear la actividad de la cuenta en donde se recibieron los correos y comprobar la fecha a ver si ves algo raro.

Dumpeo los emails si no los tienes con Google Takeout en formato MBOX (texto plano). Después puedes ir haciendo cat y greep a los archivos desde la terminal para buscar los metadatos. Tienes herramientas como diff y radare2 que te permiten comparar correos del mismo remitente para analizar otros correos y comprobar si hay alguna diferencia en donde no debería haberla. Esta última herramienta te permite hashear bloque a bloque y comparar si el hash es diferente. Esto respecto a lo referente de análisis manual.

Normalmente esto se suele hacer con herramientas automatizadas para analizar dumps grandes. Si solo es un correo mejor hacerlo manual.

Presta especial atención al contenido del body que se suele omitir. Puedes encotrar diferencias en el propio estilo del correo. Por ponerte un ejemplo, puede que yo siempre use saltos de líneas tras cada oración en todos mis correos profesionales. Si tienes dudas de que un correo que te llego mío es suplantado, podrías revisar todos los correos que te envié y encontrar este tipo de incongruencias o indicios que van sumando credibilidad sobre la exaustibidad del análisis y por ende de la credibilidad del mismo.

Chequea si el UID está desordenado. El x-mail (es como el user agent del navegador), el time zone desde donde se envió el correo, las extensiones(metadatos), formatos del email por si usara un encoding distinto, el recipiente y si la dirección de respuesta coincide, el hash del email y en las cabeceras ARC puedes ver la firma del email que envio el email y todos los servidores que hicieron forward para que llegase al cliente. 

#733
Hacking / Re: reverse_tcp o reverse_https?
29 Febrero 2020, 15:02 PM
HTTPS son 3 capas/protocolos. La capa TCP/IP, encima va la capa SSH y encima va la capa http. Las 3 juntas forman HTTPS.

Es decir, es lo mismo que un TCP inverso pero añade una capa de negociación de cifrado y utiliza el protocolo http. Esto significa que en vez de conectarse directamente en un stream de bytes sin cifrado, negocia el cifrado con tu cliente y una vez se establece una canal cifrado, realiza una petición a tu cliente utilizando el protocolo http.

El protocolo http es texto plano que sigue una forma estandarizada de comunicarse. Para simplificarlo mentalmente puedes entender como si http fuese un lenguaje de programación. Por ejemplo para conectarte a google.com mediante http tu navegador envía:
Código (http) [Seleccionar]
GET / HTTP/1.1
Host: google.com:80
Connection: keep-alive:
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 6.0) Chrome /Version ...
Accept: text/plain,text/html...
Acept-Language: es-Es...


Entonces google te podría responder algo como:
Código (http) [Seleccionar]
HTTP/1.1 200 OK
content-type: text/html

<html><body>Hola</body></html>


Esto significa que si la víctima instala un https inverso, va a hacer una petición para negociar la conexión (msfvenom tiene un cliente ssh y manejo de sesiones) una vez se establezca el canal seguro, te va a enviar la petición GET y tu le debes responder con un 200 OK enviándole una lista de comandos para que los ejecute o lo que sea.

Si quieres probar, puedes hacer lo siguiente desde la terminal:
netcat -v -l -k 127.0.0.1 8080

Con esto tienes un "servidor" a la escucha en la terminal. Si ahora vas al navegador y pones:
http://127.0.0.1:8080
Verás que te llega una petición http GET a la terminal.

El navegador se quedará como cargando a la espera de una respuesta HTTP. Podrías escribirla en la terminal para contestar o hacer cat a un archivo o cualquier historia.

Si ahora pones https://127.0.0.1:8080 verás como se envía unos "caracteres" raros. No es texto, son bytes, pero la terminal intenta traducirlo a texto y por eso se ve raro. Esta es la capa SSH sobre HTTP que sirve para que alguien inspeccionado el tráfico no pueda ver que es lo que se envia.
De esta forma, si la victima pusiese un analizador de tráfico en su red, no vería que pone: comandos: subir imágenes, descargar malware, ...
O si el antivirus lo hace, tampoco podrá detectar automáticamente la conexión robando datos personales.
#734
Qué módulos tiene el intérprete integrado en Ncat de Lua?

Por lo que veo se puede utilizar Lua desde Ncat sin tener Lua instalado. Es decir, tiene un intérprete de Lua integrado. Lo he estado probando y buscando info y lo único que saco en claro es que tiene algunos módulos integrados. Me gustaría tener un listado de todos los módulos que tiene este intérprete.
#735
PHP / Re: Subir varios archivos FTP
28 Febrero 2020, 03:30 AM
$_FILES es un array. Usa count para obtener el tamaño de un array.
$numArchivos = count($_FILES);

Igual te interesa filtrar y demás. Mirando por SO dicen que puede ser necesario para remover strings vacios del array.

https://stackoverflow.com/questions/2704314/multiple-file-upload-in-php
#736
Casi siempre que se tenga dudas entre hacer algo utilizando la configuración del servidor y hacerlo en php, suele ser mucho más óptimo hacerlo modificando los archivos del servidor.
#737
Hice una aplicación web para obtener las cabeceras http y el código fuente desde el navegador a partir de una url. También hice un coloreador de código HTML y un parser del código para poder interpretarlo.

Blog - Versión Live

Github - Código Fuente

Podeis usarlo en local directamente o con vuestro propio servidor simplemente modificando una variable que tiene tiene la url de http://cors-anywhere... Por la ip local de vuestro server en el siguiente formato. http://127.0.0.1:8080/

El código es un poco caos porque ando aún en desarrollo. El html highlighter es prácticamente una función pura. Solo necesita un poco de CSS para aplicar a los span que añado.

*Si no te funcionan los botones, usa un navegador (con soporte ES6/EcmaScript2015) más actualizado. Pronto lo haré compatible con ES5.
#738
Depende lo que quieras hackear te puedo recomendar unas herramientas u otras.

Si tienes unos cuantos gb de memoria interna prueba a ver si te funciona bien archStrike sobre termux. Tiene un montón de herramientas.
https://wiki.termux.com/wiki/Archstrike tiene un montón de herramientas de base.

Si vas a rootear, si tienes un Android < 8 puede que lo puedas rootear  directamente con el kingoRoot o alguna app del estilo. Si no, Magisk

Hay un montón de herramientas para linux que te puedes bajar desde termux. Tiene php, python, nodejs, perl, ruby, lua... Y no ocupan mucho, asique puedes hacer gitclone de muchas de las herramientas que hay para linux y te funcionan sin problema. Algunos de los más comunes que más uso yo son nmap, sqlmap, nikto, curl, netcat, radare2, apktool, jadx, zipaligner, apksigner, enjarify, y wget.

Fuera de termux uso el java n-ide, AndFTP,  hexeditor, Dexplorer, notepad++ y Z-Anti. Hay un montón de herramientas gratuitas online. Y lo que no encuentres lo puedes programar tú y subirlo a un hosting gratuito o correrlos en termux.
#739
Lmao. Reco facial en shooters :huh: Igual funciona pero no debe ser sencillo de poner a funcionar. xD
#740
Os comparto un script que hice para resaltar palabras que suelen ser comunes en las inyecciones DOM XSS.

Qué hace?
-Obtiene el código fuente de la página web en la que estás, y te lo muestra con las palabras más interesantes coloreadas. Util para centrar la vista en lo que quieres y entender de un vistazo como entran los datos en la aplicación.

Preview del resultado de aplicar el scriprt a una página:


Como usar?
-Copiar el código, pegarlo en la barra del navegador y darle a enter.
*Si tu navegador elimina la palabra javascript de la barra de direcciones automáticamente al pegar el código, puedes copiar todo el script menos la primera letra j. Escribes la j en la barra del naevegador y pegas el código.

Copiar De Aquí

Otros usos?
- Puedes cambiar las palabras por las que tu quieras y darle otro uso. O utilizar prompt() dentro de un bucle para obtener las palabras de forma interactiva.

Comentario del código:
Código (javascript) [Seleccionar]

/*Funcion que remplaza varios caracteres inseguros del string que se le pase como parámetro en la llamada por su entidad homóloga. */
function htmlEntities(str) {
  r='replace'; /* Acortador para el método replace */
  z=document; /* Acortador para document */
  x=str[r] /* Utilizo la sintaxis del operador array en lugar de la de punto para acortar el código. Ej, de window.alert("hola") a window["alert"]("hola") o si utilizas variables a w[a](h); */
(/ /g,"&#32;")[r]
(/!/g,"&#33;")[r]
(/"/g,"&#34;")[r]
(/%/g,"&#37;")[r] /* Son múltiples replaces sobre el msimo string utilizando encadenamiento de métodos. El replace toma 2 parámetros, el string a remplazar y el string que ocupará su lugar. Utilizo RegExp Expresiones regulares /caracter/ para buscar un caracter y //g para buscar todas las ocurrencias de ese caracter en el string que se le pasó por parámetro a la función. El segundo parámetro es la entidad HTML correspondiente a dicho caracter. La entidad nos permite ver el caracter sin que se interprete. */
(/'/g,"&#39;")[r]
(/\(/g,"&#40;")[r]
(/\)/g,"&#41;")[r]
(/</g,"&#60;")[r]
(/>/g,"&#62;")[r]
(/`/g,"&#96;")[r]
(/a/g,"&#97;")[r]
(/A/g,"&#65;")[r]
(/e/g,"&#101;")[r]
(/E/g,"&#69;")[r]
(/i/g,"&#105;")[r]
(/I/g,"&#73;")[r]
(/o/g,"&#111;")[r]
(/O/g,"&#79;")[r]
(/u/g,"&#117;")[r]
(/U/g,"&#85;")[r]
(/{/g,"&#123;")[r]
(/}/g,"&#125;")[r]
(/'/g,"&#8216;")[r]
(/'/g,"&#8217")[r]
(/,/g,"&#8218;")[r]
(/"/g,"&#8220;")[r]
(/"/g,"&#8221;")[r]
(/,,/g,"&#8222;")[r]
(/′/g,"&#8242;")[r]
(/″/g,"&#8244;")[r]
(/‹/g,"&#8249;")[r]
(/›/g,"&#8250;")[r]
(/s/g,"&#115;")[r]
(/S/g,"&#83;"); /* Se puede acortar el código con el constructor de Reg Exp, declarando todas las palabras y regexp del código como un único string separadas por un espacio y hacer split de string a array. Con que el código no laggease al pegar en la url me valia. */
  return x; /* Retorna el string convertido a entidades */
}

var temp;

/* Para rodear las palabras y aplicarles css para colorearlas */
var c="<span class='xssRed'>";
var d="</span>";


/* Todas las palabras que encontré que de forma frecuente puede que sean relevantes en inyecciones DOM XSS */
var b=[
"write","writeln","domain","innerHTML",
"outerHTML","insertAdjacentHTML","onevent","baseURI",
"documentURI","location","referrer","URL",
"URLUnencoded","href","search","hash","pathname","self","name","eval",
"javascript","setInterval","setTimeout","import url",
"add","after","append","animate",
"insertAfter","insertBefore","before","prepend",
"replaceAll","replaceWith","wrap","wrapInner",
"wrapAll","has","constructor","init",
"index","parseHTML"];

/* Obtiene el fuente de la página actual */
var a=document.querySelector("html").outerHTML;

/* Itera una vez por palabra */
for(var i=0; i<b.length; ++i) {

/* Crea una expresión regular Global caseInsensitive de cada palabra. Es decir, busca todas las ocurrencias de la palabra que toque indistintamente de si tiene mayusculas o minuúsculas. */
  temp=new RegExp(b[i],"gi");

/* Remplaza las palabras que encuentre en el código por cadenas temporales reconocibles que no vayan a ser codificadas a entidades. En medio de estas cadenas pon la palabra original.*/
  a=a.replace(temp,"nblblbl"+b[i]+"nhlhlhl");
}

a=htmlEntities(a); /* Transforma el fuente a entidades para poder leerlo sin que se interprete. */
a=a.replace(/nblblbl/g,"<span class='xssRed'>"); /* Modifica las cadenas temporales reconocibles por los elementos span. */
a=a.replace(/nhlhlhl/g, "</span>");
document.write(' /* Escribe un código html sin entidades en el que meter dentro el código con entidades. Así se interpretan los <span> y el nuevo código para colorear su innerHTML. */
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
  </head>
  <body>
    <section id="code">'+a+'</section>
    <style>
#code {
  background-color: #fefefe;
}

.xssRed {
  color:red;
}
    </style>
  </body>
</html>');