Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
birp — Big Iron Recon & Pwnage | Kitploit
Herramientas/GitHubGitHub/sensepost/birp
ReconocimientoAnálisis de VulnerabilidadesProxies Web e InterceptaciónRecopilación de InformaciónPruebas de Penetración
GitHubsensepost/birp

birp

Big Iron Recon & Pwnage

Ver Repositorio
12532hace 8 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Big Iron Recon & Pwnage (BIRP)

por @singe (Dominic White @ SensePost)

Resumen

BIRP es una herramienta que ayudará en la evaluación de seguridad de aplicaciones mainframe servidas a través de TN3270. De la misma manera que BURP y otros proxies de aplicaciones web hacen por las evaluaciones de aplicaciones web, BIRP pretende hacer lo mismo para las evaluaciones de aplicaciones TN3270. Y, al igual que con las aplicaciones web, poder ver y modificar campos que el desarrollador de la aplicación asumió que no eran ni visibles ni modificables permite que se sorteen las presunciones de seguridad.

En particular, BIRP proporciona dos capacidades para el aspirante a hacker de TN3270. La primera es que muestra todos los datos devueltos por la aplicación en la pantalla. Esto incluye campos ocultos. La segunda es que permite modificar campos marcados como "protegidos", también conocidos como "no modificables". Dependiendo de cómo se haya desarrollado la aplicación, esto puede permitir que se modifique la funcionalidad de la aplicación.

Ejecución

./birp.py -h le dará la ayuda de inicio si quiere ponerse en marcha.

Todo lo que necesita es especificar un objetivo con -t . La especificación del objetivo puede incluir un puerto con un : después de la IP, p. ej. 10.10.10.10:1023. Si no se especifica ningún puerto, se usará por defecto :23 según el comportamiento por defecto de x3270.

Puede usar -l para cargar un archivo de historial guardado previamente en el historial. Debe especificar siempre un objetivo y, por desgracia, todavía no puede simplemente ver el historial.

Consulte los requisitos previos a continuación para la instalación. Lamentablemente, esto solo funcionará en entornos Unix por el momento, sin soporte para Windows.

Funcionalidad

Actualmente, BIRP tiene un conjunto de funcionalidades bastante limitado. Estas son:

  • Modo interactivo

El modo interactivo es el corazón de la funcionalidad de BIRP. Pasará pulsaciones de teclas y otros comandos de BIRP a x3270 y permitirá al analista interactuar con la aplicación como lo haría si estuviera usando x3270 directamente. Sin embargo, también mostrará la vista "hacker" marcada de cada pantalla devuelta, además de registrar las "transacciones" y almacenarlas en el historial del proxy para su posterior análisis e inspección.

En el modo interactivo, pulsar Ctrl-h imprimirá una pantalla de ayuda, Ctrl-k mostrará una clave de colores y ESC saldrá de vuelta al menú.

BIRP intenta determinar cuándo ha ocurrido una "transacción" y registra la pantalla anterior y posterior, así como los campos modificados. Ciertas teclas suelen garantizar el inicio de una transacción, como Enter o cualquiera de las teclas PF/PA. Sin embargo, si por cualquier razón la pantalla requiere teclas diferentes para funcionar, puede "empujar" manualmente una transacción con Ctrl-u justo después de realizar la acción.

Finalmente, si quiere que la pantalla se vuelva a imprimir, pulse Ctrl-r.

  • Ver historial

Esto mostrará el historial de todas las transacciones que BIRP registró y permitirá inspeccionarlas. En concreto, proporciona acceso a la pantalla enviada, a los campos que se modificaron en esa pantalla (es decir, los datos enviados) y a la respuesta.

Para cada pantalla, solo se muestra la primera fila como contexto, pero la pantalla completa se puede imprimir si se ve la transacción.

Además, puede entrar en python y examinar el objeto de la pantalla directamente.

  • Buscar en el historial

Aquí puede realizar una búsqueda sensible a mayúsculas y minúsculas para encontrar transacciones con pantallas que contengan cierto texto.

  • Guardar historial

Puede guardar su historial en un archivo y cargarlo de nuevo más tarde con el interruptor -l en la línea de comandos. Debe guardarlo con un nombre de archivo único.

  • Consola de Python

La herramienta aún no está terminada y ahora mismo hay muchas buenas razones para poder jugar con los objetos directamente. Puede entrar en un shell embebido de IPython en varios lugares. BIRP tiene un conjunto de objetos de python bastante útil que puede interrogar, y me he asegurado de que tengan una salida pitónica útil (str/repr). El objeto superior es el "history" (historial), que contiene una lista de "transactions" (transacciones). Puede interrogar la última transacción añadida refiriéndose a history.last(). Cada transacción tiene un objeto de pantalla de request (solicitud) y de response (respuesta). Así, por ejemplo, para obtener una lista de todos los campos ocultos en la última respuesta del servidor podría usar: history.last().response.hidden_fields

Para más detalle, sería mejor ver el módulo tn3270.py.

Requisitos previos:

  • Librerías de Python: py3270 (v0.3.4), colorama, IPython Estas se pueden instalar con pip o easy_install. Hasta que py3270 acepte este pull request (https://github.com/py3270/py3270/pull/13) use mi librería py3270 (https://github.com/singe/py3270).

  • Cliente x3270 modificado (v3.6) Los parches están incluidos. Puede descargar el código fuente en http://x3270.bgp.nu/download.html y luego hacer cd al directorio suite3270 una vez extraído, y aplicar patch -p1 < suite3270-full.patch Puede usar un cliente sin modificar, pero entonces no podrá editar los campos protegidos. El parche hace dos cambios: el primero es permitir que los campos protegidos se editen; el otro es hacer visibles los campos ocultos (mostrados con resaltado de texto inverso). Esta funcionalidad está dividida en otros dos parches si por alguna razón solo quisiera una u otra.

Decisiones de diseño

La funcionalidad de manejo de teclas que uso es mi propia implementación personalizada de getch. Es bastante horrible, pero funciona. Me encantaría usar una implementación de manejo de teclas más madura como curses, pygame, urwid, etc., pero todas quieren tomar el control de su pantalla también. Personalmente, encuentro que el búfer de desplazamiento hacia atrás es invaluable para registrar mis actividades o simplemente para poder desplazarme hacia arriba y recordar lo que hice, así que no quería perder eso, de ahí este enfoque.

Encontré py3270 bastante tosco y terminé envolviendo parte de él. Lo he proporcionado como un envoltorio separado que puede usar en sus propios programas.

Agradecimientos

  • Gracias a Soldier of Fortran (@mainframed767) por la ayuda para entender estas cosas de mainframes.
  • Andreas Lindh (@addelindh) por el ingenioso nombre de la herramienta.
  • Rogan Dawes por sentarse frente a mí durante la mayor parte de la escritura de la herramienta, siempre con punteros útiles.
  • Un cliente sin nombre que me dio la oportunidad de probar sus mainframes y desarrollar la herramienta.

Por dominic () sensepost.com (@singe)

Licencia

Big Iron Recon & Pwnage por SensePost está bajo una Licencia Creative Commons Atribución-CompartirIgual 4.0 Internacional (http://creativecommons.org/licenses/by-sa/4.0/) Los permisos más allá del alcance de esta licencia pueden estar disponibles en http://sensepost.com/contact us/.

Descargar herramienta