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 - Kaxperday

#211
Hacking / Re: SQLMAP a través de proxy
4 Diciembre 2015, 10:44 AM
Hehe pero si no lo meto en hacking avanzado no se donde meterlo XD, en si la herramienta es muy sencilla, pero no conozco SQL nunca lo he estudiado ni me ha llamado la atención por el momento, está bien saber que tiene proxy, bien gracias.
#212
Desarrollo Web / Ayuda con HTTP POST en C#
3 Diciembre 2015, 20:28 PM
Hola, estoy muy frustrado porque al cargar una página (que prefiero no decir en el tema) con el navegador sin cookies ni navegación en ella, al cargar su index y ver su código fuente me salen distintas cosas de las que obtengo con esto:

Código (c#) [Seleccionar]

HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("https://***.com/");
               req.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
               req.CookieContainer = cc;
               req.UserAgent = "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:33.0) Gecko/20100101 Firefox/33.0";
               req.Host = "***.com";
               req.Method = "POST";
               req.Proxy = null;
               HttpWebResponse response = (HttpWebResponse)req.GetResponse();
               using (Stream responseStream = response.GetResponseStream())
               {
                   using (StreamReader sr = new StreamReader(responseStream))
                   {
                       string sub = "name=\"_token\" value=\"";
                       string responseData = sr.ReadToEnd();
                       byte[] bytes = new byte[responseData.Length * sizeof(char)];
                       System.Buffer.BlockCopy(responseData.ToCharArray(), 0, bytes, 0, bytes.Length);
                       File.WriteAllBytes("C:\\Users\\Usuario\\Desktop\\tast.txt", bytes);
                       int indice = responseData.IndexOf(sub);
                       if (indice == -1)
                       {
                           return false;
                       }
                       indice += sub.Length;
                       while(responseData[indice] != '"')
                       {
                           token += responseData[indice];
                           indice++;
                       }
                       MessageBox.Show(token);
                   }
               }
           }


Guardo la respuesta en un archivo en el escritorio, y trato de buscar un token necesario para iniciar la sesión en la web, ese token no aparece al hacer este post, ¿puede tener algo que ver con algún javascript que ignoraría?.

Básicamente con navegador me aparece esto al cargar el index:

name="_token" value="

Y cuando hago el https post no me sale, recibo distinta respuesta, ¿porque?. Dejando de lado el idioma etc, no creo que tenga que ver.

Dice que no la encuentra esa substring, y es que es verdad no está en el html que descarga la app en C#, pero al cargar la pag con el navegador si sale, ¿porque?.

Saludos.

Edito: Más pistas, en la página al clicar un boton salta un pop up donde metes los datos de login:

https://***.com/#show=login

Según he leido este operador (#) se usa para incluir código de otras urls más o menos, estaría bien una aclaración, seguiré leyendo.
#213
Hacking / SQLMAP a través de proxy
3 Diciembre 2015, 00:42 AM
¿Alguna aplicación capaz de hacerlo?.

Saludos.
#214
Hola, quiero hacer una red P2P donde todos los ordenadores actuarían de servidores y clientes a la vez, cada ordenador descargaría una tabla a través de un servidor web que actuaría de tracker y luego con la lista de ips de los ordenadores conectados que facilita la tabla establecerían conexión.

Pero ¿no necesito abrir los puertos de cada router si me quiero conectar a un ordenador específico?. Cuando levnto un servidor en un ordenador salta alerta del firewall y entoces permitimos permisos (también se puede añadir la excepción de manera automatizada), pero con eso no es suficiente para que alguien se pueda conectar a nuestro servidor solo con nuestra ip verdad?.

¿Habría que hacer NAT o no? ¿alternativas?.

Ejemplo: Juan de murcia con IP XX.XX.XX.XX trata de hacer connect() a Jaime de Lisboa con IP YY.YY.YY.YY, al hacer connect indica la IP de Jaime y su puerto donde Jaime tiene escuchando su servidor.

¿Se llegaría a producir esa conexión así solo vía sockets de punto a punto?, ¿o habria falta algo más, qué?.

Un saludo y gracias.
#215
Si pertenece a un proyecto y es necesario para que pueda rodar en sí, pero no es lo que piensas, lo que trato de hacer es modificar paquetes TCP tanto de origen y destino, pero si el checksum no queda actualizado el paquete se descarta, el checksum ip si que lo conseguí calcular bien, pero este no.

Mí código que hice para calcularlo es sencillo, suma bien de 16 bits en 16 y controlando el acarreo de bit, el problema es más teórico. Necesito algo de ayuda.

Un saludo.

Os dejo el código que tengo, solo necesito calcular bien el tcp len para poder comprobar si funciona lo demás:

Código (cpp) [Seleccionar]

//http://www.arcesio.net/checksum/checksumTCP.html
u_char* tcp_checksum(u_char* datos, int tamaño)
{
u_char *checksum = new u_char[2]();
uint16_t sumando = 0;
bitset<17> total;

//sumo ip origen e ip destino
for (int i = 26; i < 33; i++){
total = sumando + (uint16_t)((datos[i] << 8) + datos[i + 1]);
sumando += (uint16_t)((datos[i] << 8) + datos[i + 1]);
if (total[16] == 1)
sumando++;
i++;
}

//sumo el byte de ceros y el numero de protocolo TCP
total = sumando + (uint16_t)(0x06);
sumando += (uint16_t)(0x06);
if (total[16] == 1)
sumando++;

//aqui sumaría el tcp len no se calcular aún.
//[IP Total Length] - (([IP IHL] + [TCP Data offset]) * 4)
//Aquí sumaríamos el TCP len ¿cuanto es?.
/*total = sumando + (uint16_t)((datos[38] << 8) + datos[39]);
sumando += (uint16_t)((datos[38] << 8) + datos[39]);
if (total[16] == 1)
sumando++;*/

//sumo todo el campo de cabecera con el checksum a cero
for (int i = 34; i < 54; i++){
if (i != 50){
total = sumando + (uint16_t)((datos[i] << 8) + datos[i + 1]);
sumando += (uint16_t)((datos[i] << 8) + datos[i + 1]);
if (total[16] == 1)
sumando++;
}
i++;
}

//sumo todo el campo de datos a lo que teníamos.
for (int i = 55; i < tamaño - 1; i++){
total = sumando + (uint16_t)((datos[i] << 8) + datos[i + 1]);
sumando += (uint16_t)((datos[i] << 8) + datos[i + 1]);
if (total[16] == 1)
sumando++;
i++;
}

//invertimos y pasamos a dos bytes el resultado.
sumando = sumando & 0xFFFF;
sumando = ~sumando;
checksum[0] = (sumando >> 8) & 0x00FF;
checksum[1] = sumando & 0x00FF;
return checksum;
}


Edito:

Finalmente, para calcular el TCP checksum hay que tener crear un array de u_short formado por la concatenación del pseudoheader, cabecera tcp, y tcp payload (datos tcp).

Yo no formo el array paso directamente a sumar sus partes. Sumo primero las ips, luego sumo  el numero protocolo y el tcp len que son 96 bits.

Depués sigo sumando al resultado toda la cabecera casi siempre son 20 bytes, que sumamos de 16 bits en 16 bits cada par.

Después sumo los datos TCP de 16 bits en 16 bits como siempre.

Una vez está todo sumado, invierto el u_short y lo divido en 2 bytes (u_char).

¿Es el método correcto? ¿Por qué falla?.

El tcp len no es el único problema (ya que no lo sé calcular), pues con wireshark compruebo que hay paquetes que lo llevan a cero, y aún así no coinciden los checksums.

Saludos y gracias.
#216
Buenas, a ver si puedo cerrar el tema por una vez:

http://www.tcpipguide.com/free/t_TCPChecksumCalculationandtheTCPPseudoHeader-2.htm

Lo que tengo que hacer para calcular primero el pseudoheader y sumar todos sus campos como de u_short en u_short (16 bits en 16 bits), ¿luego sumamos toda la cabecera TCP, y luego el payload?

¿Todo de 16 bits en 16 bits?, porque me daba todo unos luego ¿hacía algo mal, no tiene sentido o tenía algún error, o no se calcula así?.

Saludos.
#217
Hay alguno que no comprende bien lo que dicen los demás y tacha de ignorantes lo que dicen...

En el conflicto no hay 2 frentes principales es evidente, por un lado los que apoyan a al-Assad (la mayoría de la población Siria.. ¡OJO ya los demás no hacen falta ni nombrar pues son terceros! pero lo haré, Rusia ya que es un aliado importante, Irán, China, etc..), y luego están los que arman a la oposición porque les interesa un gobierno occidental que actúe a su favor, y saben que encabezando y armando a los rebeldes lo pueden conseguir.

No nos engañemos, ¿alguien cree que a estados unidos les importa las libertades que piden algunos rebeles sirios? Si tanto como la de los palestinos hijo, es evidente y mucho que no, ¿entonces por que los arman?, están ahí por el interes como Rusia, pero la diferencia es que Rusia está defendiendo a su aliado del ataque occidental, que ya consiguió hacer en varios países que ya conoceréis y no voy a nombrar. ¿Pero de verdad, alguien los está apoyando actualmente?, desenmascararos por favor.

Y claro que si se va el ISIS, el conflicto continúa es una guerra civil, pero ahí no pintan nada países terceros, solo buscan interés aprovechar el conflicto para su beneficio nada más. Y es probable que ese conflicto haya podido ser generado/manipulado en gran parte también por servicios de inteligencia... no voy a decir nada nuevo.

El conflicto podría solucionarse centrandose solo en combatir al ISIS, pero otros prefieren meter ***** a Siria y armar "rebeldes" AKA mercenarios, AKA posibles miembros del ISIS.
Con la excusa de siempre "vamos a combatir el terrorismo", mirad al pasado para entender el presente por favor, ¿que paso el Iraq? ¿cómo invadieron ese país, que excusas usaron, porqué lo hicieron?, entonces quizás empeceréis a comprender porque llevan "combatiendo al ISIS" más de un año sin resultado alguno jajaja.

Y sí, sigue habiendo terroristas en Iraq, solo que ahora no hay petróleo ni casas.

Cita de: drvy!La próxima vez que digáis que Rusia "solo" bombardea a los "rebeldes que quieren democracia", pensad en quienes son esos rebeldes, de donde vienen y que ideología tienen.

Muy bien dicho, y bien dados los datos de las elecciones sirias, donde se ve claro que Siria apoya a al-Assa, lo demás es manipulación y *****, y si, al-Assad es muy malo, es un asesino al que no le importa la estabilidad de Siria, preferimos a el lider de la oposición Siria que no es un asesino, y que seguro se va a preocupar más por los intereses sirios. Los sirios han hablado.

Saludos.

Edito: Os paso un link sobre la auténtica ayuda de USA a la población iraquí, recordad que entraron en la guerra para luchar contra los terroristas igual que hacen en Siria, siempre dando prioridad por supuesto a la población civil y sus tradiciones, juegos.. y demás mariposas: LINK. Gracias a ellos ahora ya no hay terroristas en el mundo y cada vez son menos. Con aliados así quien quiere enemigos.
#218
Programación C/C++ / Enviando Email C++ 2.0
25 Noviembre 2015, 22:53 PM
Parte 1.0:

https://foro.elhacker.net/programacion_cc/fallo_al_enviar_email_a_servidor-t444524.0.html

Parte 2.0:

Buenas, sigo intentando crear una función para enviar correos electronicos en C++. Por lo visto voy a necesitar una cuenta de correo ya conocida, y el servidor smtp al que pertenece esa cuenta.

Comence conectando al puerto 25 de smtp.live.com (servidor smtp de hotmail), pero tras el "HELO" saltaba a "STARTTLS", es decir el servidor rechazaba que introdujera más datos (como usuario de corre y contraseña) ya que requería usar "STARTTLS" para pasar a una conexión cifrada TLS/SSL.

Ahí es donde nació el problema por lo que abro el hilo. Pues informandome de los puertos que usa hotmail, gmail etc, traté de conectarme ("connect") a ellos con SSL y no respondía las peticiones, algo por lo que desconozco la causa actualmente:

Código (cpp) [Seleccionar]
CRYPTO_malloc_init();
SSL_library_init();
OpenSSL_add_all_algorithms();
SSL_CTX* ctx = SSL_CTX_new(SSLv23_client_method());
SSL* ssl;
BIO* bio = BIO_new_ssl_connect(ctx);
if (bio == NULL) {
SSL_CTX_free(ctx);
return false;
}
BIO_get_ssl(bio, &ssl);
SSL_set_mode(ssl, SSL_MODE_AUTO_RETRY);
BIO_set_conn_hostname(bio, (host + ":465").c_str());
if (BIO_do_connect(bio) <= 0) {
BIO_free_all(bio);
SSL_CTX_free(ctx);
return false;
}


En yahoo pude comprobar que permite acceder al servidor con las credenciales en texto plano, por lo que desde un correo de yahoo podría mandar fácilmente a otro, pero iría en texto plano, y además no tengo correo yahoo vaya.

https://www.fastmail.com/help/technical/ssltlsstarttls.html

¿Por qué no no responde mis petición SSL a su puerto 465 donde se supone que usa SMTP bajo SSL?. Creo que tengo que comenzar en texto plano con HELO, y luego usar el comando STARTTLS, pero no se si es un comando y apenas encuenro documentación sobre como funciona, solo programas hechos que ya lo implementan, otras soluciones dicen que basta con conectarse directamente al puerto SSL del servidor SMTP, pero como ya dije ignora mis peticiones.

Saludos.

Edito: Ojo me trato de conectar con un cliente SSL, no con uno TLS, pero no creo que sea eso no tiene mucho sentido.

CitarSTARTTLS

220 2.0.0 SMTP server ready
il.com Hello

Después de esto ¿qué?, no me acepta conexiones SSL.. en ningun puerto..


Edito: Muy buenas chicos, he probado con gmail y funciona el SSL, ya que al parecer, el hotmail soporta solo TLS no SSL, por eso no respondía pero gmail si y ya me pide autentificacion, perfecto :), aunque una pena no poder hacerlo para hotmail.

De todas formas ¿no podría tener un servidor SMTP propio de el proovedor de internet??? Vendría de perlas, porque sino las credenciales deberían de ir dentro de la app para mandar el correo, un saludo.

Edito: Tras mucho sufrimiento me consigo loguear en gmail y me dice que vaya a la web. " Please log in via your web browser and
534-5.7.14 then try again."
#219
No les verás atacando a un avión de USA, esos son sus aliados, los aliados de los terroristas, los que les dan las armas, en cambio los que tratan de acabar con lo terroristas (los rusos) se llevan la manipulación de los medios, y todos los batacazos y sanciones.

Recuerdo cuando comenzó la guerra de Iraq y la caída de las torres gemelas, cuando estados unidos comenzó la guerra atacando a Bagdad para "combatir a los terroristas", es la nueva excusa que tienen ahora para tomar el control de los países de oriente medio por lo visto.

Bravo, que sigan armando a los terroristas que no son rebeldes son terroristas del ISIS, vamos que son lo mismo la misma *****, todos matan gritando "allah akbar", debería de salir Obama gritando en una rueda de prensa al final "allah akbar" le quedaría de p**a madre la verdad.

Un saludo.
#220
Seguridad / Re: Camuflaje en internet
24 Noviembre 2015, 23:37 PM
No creo que sea buena idea usar un proxy para bajar porno, te pillarán y tardará en bajarse XD.