Visió general de les eines gratuïtes per provar recursos web i més v2

Fa un temps vaig escriure sobre això, però una mica escàs i caòtic. Després, vaig decidir ampliar la llista d'eines a la revisió, afegir estructura a l'article i tenir en compte les crítiques (moltes gràcies esquerrà per demanar consell) i el va enviar a un concurs a SecLab (i es va publicar enllaç, però per totes les raons òbvies ningú la va veure). S'ha acabat el concurs, s'han donat a conèixer els resultats i amb la consciència tranquil·la el puc publicar (l'article) a Habré.

Aplicació web gratuïta Eines de Pentester

En aquest article parlaré de les eines més populars per a pentesting (proves de penetració) d'aplicacions web utilitzant l'estratègia de la “caixa negra”.
Per fer-ho, mirarem les utilitats que ajudaran amb aquest tipus de proves. Tingueu en compte les següents categories de productes:

  1. Escàners de xarxa
  2. Escàners d'incompliment d'scripts web
  3. Explotació
  4. Automatització d'injeccions
  5. Depuradors (sniffers, servidors intermediaris locals, etc.)


Alguns productes tenen un “caràcter” universal, així que els classificaré en la categoria en què tenen unоmillor resultat (opinió subjectiva).

Escàners de xarxa.

La tasca principal és descobrir els serveis de xarxa disponibles, instal·lar-ne les versions, determinar el sistema operatiu, etc.

nmapVisió general de les eines gratuïtes per provar recursos web i més v2
Nmap ("Mapeador de xarxa") és una utilitat gratuïta i de codi obert per a l'anàlisi de la xarxa i l'auditoria de seguretat del sistema. Els oponents violents de la consola poden utilitzar Zenmap, que és una GUI per a Nmap.
Això no és només un escàner "intel·ligent", és una eina extensible seriosa (una de les "característiques inusuals" és la presència d'un script per comprovar la presència d'un cuc en un node "Stuxnet" (esmentat aquí). Exemple d'ús típic:

nmap -A -T4 localhost

-A per a la detecció de la versió del sistema operatiu, l'exploració i el seguiment de seqüències d'ordres
-Configuració de control de temps T4 (més és més ràpid, de 0 a 5)
localhost - host de destinació
Alguna cosa més dura?

nmap -sS -sU -T4 -A -v -PE -PP -PS21,22,23,25,80,113,31339 -PA80,113,443,10042 -PO --script all localhost

Aquest és un conjunt d'opcions del perfil d'"exploració completa lenta" de Zenmap. Es triga molt de temps a completar-se, però al final proporciona informació més detallada que es pot trobar sobre el sistema objectiu. Guia d'ajuda en rus, si decidiu aprofundir, també us recomano traduir l'article Guia per a principiants de Nmap.
Nmap ha rebut l'estatus de "Producte de seguretat de l'any" de revistes i comunitats com Linux Journal, Info World, LinuxQuestions.Org i Codetalker Digest.
Un punt interessant, Nmap es pot veure a les pel·lícules "The Matrix Reloaded", "Die Hard 4", "The Bourne Ultimatum", "Hottabych" i un altre.

Eines IPVisió general de les eines gratuïtes per provar recursos web i més v2
Eines IP - una mena de conjunt d'utilitats de xarxa diferents, que inclou una GUI, "dedicada" als usuaris de Windows.
Escàner de ports, recursos compartits (impressores/carpetes compartides), WhoIs/Finger/Lookup, client telnet i molt més. Només una eina còmoda, ràpida i funcional.

No té cap sentit particular considerar altres productes, ja que hi ha moltes utilitats en aquesta àrea i totes tenen principis de funcionament i funcionalitats similars. Tot i així, nmap segueix sent el més utilitzat.

Escàners d'incompliment d'scripts web

Intentant trobar vulnerabilitats populars (SQL inj, XSS, LFI/RFI, etc.) o errors (fitxers temporals no eliminats, indexació de directoris, etc.)

Escàner de vulnerabilitats web AcunetixVisió general de les eines gratuïtes per provar recursos web i més v2
Escàner de vulnerabilitats web Acunetix — des de l'enllaç podeu veure que es tracta d'un escàner xss, però això no és del tot cert. La versió gratuïta, disponible aquí, ofereix moltes funcionalitats. Normalment, la persona que utilitza aquest escàner per primera vegada i rep un informe sobre el seu recurs per primera vegada experimenta un lleuger xoc, i entendreu per què un cop ho feu. Aquest és un producte molt potent per analitzar tot tipus de vulnerabilitats en un lloc web i funciona no només amb els llocs web habituals de PHP, sinó també en altres idiomes (tot i que la diferència d'idioma no és un indicador). No té cap sentit particular descriure les instruccions, ja que l'escàner simplement "reprèn" les accions de l'usuari. Una cosa semblant a "següent, següent, següent, llest" en una instal·lació de programari típica.

NingúVisió general de les eines gratuïtes per provar recursos web i més v2
Ningú Aquest és un rastrejador web de codi obert (GPL). Elimina el treball manual rutinari. Cerca al lloc de destinació scripts no suprimits (alguns test.php, index_.php, etc.), eines d'administració de bases de dades (/phpmyadmin/, /pma i similars), etc., és a dir, comprova el recurs per detectar els errors més comuns. generalment causada per factors humans.
A més, si troba algun script popular, el comprova si hi ha exploits publicats (que es troben a la base de dades).
Informes de mètodes "no desitjats" disponibles com PUT i TRACE
Etcètera. És molt convenient si treballes com a auditor i analitzes webs cada dia.
Dels inconvenients, m'agradaria destacar l'alt percentatge de falsos positius. Per exemple, si el vostre lloc sempre dóna l'error principal en lloc d'un error 404 (quan hauria de produir-se), l'escàner dirà que el vostre lloc conté tots els scripts i totes les vulnerabilitats de la seva base de dades. A la pràctica, això no passa tan sovint, però, de fet, depèn molt de l'estructura del vostre lloc.
Ús clàssic:

./nikto.pl -host localhost

Si necessiteu estar autoritzat al lloc, podeu configurar una galeta al fitxer nikto.conf, la variable STATIC-COOKIE.

WiktoVisió general de les eines gratuïtes per provar recursos web i més v2
Wikto — Nikto per a Windows, però amb algunes addicions, com ara la lògica "difusa" a l'hora de comprovar si hi ha errors en el codi, utilitzar GHDB, obtenir enllaços i carpetes de recursos, monitoritzar en temps real les sol·licituds/respostes HTTP. Wikto està escrit en C# i requereix el framework .NET.

peix saltaVisió general de les eines gratuïtes per provar recursos web i més v2
peix salta - escàner de vulnerabilitats web de Michal Zalewski (conegut com lcamtuf). Escrit en C, multiplataforma (Win requereix Cygwin). De manera recursiva (i durant molt de temps, unes 20 ~ 40 hores, tot i que l'última vegada que em va funcionar va ser de 96 hores) rastreja tot el lloc i troba tota mena de forats de seguretat. També genera molt trànsit (diversos GB entrants/sortents). Però tots els mitjans són bons, sobretot si tens temps i recursos.
Ús típic:

./skipfish -o /home/reports www.example.com

A la carpeta "informes" hi haurà un informe en html, exemple.

w3af Visió general de les eines gratuïtes per provar recursos web i més v2
w3af — Web Application Attack and Audit Framework, escàner de vulnerabilitats web de codi obert. Té una GUI, però pots treballar des de la consola. Més precisament, és un marc amb un munt de connectors.
Pots parlar dels seus avantatges durant molt de temps, és millor provar-ho :] El treball típic amb ell consisteix a triar un perfil, concretar un objectiu i, de fet, llançar-lo.

Marc de seguretat de MantraVisió general de les eines gratuïtes per provar recursos web i més v2
Mantra és un somni fet realitat. Una col·lecció d'eines de seguretat de la informació gratuïtes i obertes integrades en un navegador web.
Molt útil a l'hora de provar aplicacions web en totes les etapes.
L'ús es redueix a instal·lar i iniciar el navegador.

De fet, hi ha moltes utilitats en aquesta categoria i és bastant difícil seleccionar-ne una llista específica. Molt sovint, cada pentester determina el conjunt d'eines que necessita.

Explotació

Per a l'explotació automatitzada i més còmoda de les vulnerabilitats, els exploits s'escriuen en programari i scripts, als quals només cal passar paràmetres per tal d'explotar el forat de seguretat. I hi ha productes que eliminen la necessitat de cercar manualment exploits, i fins i tot aplicar-los sobre la marxa. Ara es parlarà d'aquesta categoria.

Metasploit Framework Visió general de les eines gratuïtes per provar recursos web i més v2
El marc Metasploit® - una mena de monstre en el nostre negoci. Pot fer tant que les instruccions cobreixen diversos articles. Mirarem l'explotació automàtica (nmap + metasploit). La conclusió és la següent: Nmap analitzarà el port que necessitem, instal·larà el servei i metasploit intentarà aplicar-hi exploits en funció de la classe de servei (ftp, ssh, etc.). En lloc d'instruccions de text, inseriré un vídeo, força popular sobre el tema autopwn

O simplement podem automatitzar el funcionament de l'exploit que necessitem. Per exemple:

msf > use auxiliary/admin/cisco/vpn_3000_ftp_bypass
msf auxiliary(vpn_3000_ftp_bypass) > set RHOST [TARGET IP] msf auxiliary(vpn_3000_ftp_bypass) > run

De fet, les capacitats d'aquest marc són molt àmplies, així que si decidiu aprofundir, aneu a enllaç

ArmitageVisió general de les eines gratuïtes per provar recursos web i més v2
Armitage — OVA de la GUI del gènere cyberpunk per a Metasploit. Visualitza l'objectiu, recomana explotacions i proporciona funcions avançades del marc. En general, per a aquells a qui els agrada que tot es vegi bonic i impressionant.
Projecció de pantalla:

Tenable Nessus®Visió general de les eines gratuïtes per provar recursos web i més v2
Escàner de vulnerabilitats Tenable Nessus® - Pot fer moltes coses, però una de les capacitats que necessitem és determinar quins serveis tenen exploits. Versió gratuïta del producte "només a casa"

Использование:

  • Descarregat (per al vostre sistema), instal·lat, registrat (la clau s'envia al vostre correu electrònic).
  • S'ha iniciat el servidor, s'ha afegit l'usuari a Nessus Server Manager (botó Gestiona usuaris)
  • Anem a l'adreça
    https://localhost:8834/

    i obteniu el client flash al navegador

  • Escaneigs -> Afegeix -> ompliu els camps (seleccionant el perfil d'escaneig que ens convingui) i feu clic a Escaneja

Després d'un temps, l'informe d'escaneig apareixerà a la pestanya Informes
Per comprovar la vulnerabilitat pràctica dels serveis als exploits, podeu utilitzar el Metasploit Framework descrit anteriorment o intentar trobar un exploit (per exemple, a Explot-db, tempesta de paquets, recerca d'explotació etc.) i utilitzar-lo manualment contra el seu sistema
IMHO: massa voluminós. El vaig portar com un dels líders en aquesta direcció de la indústria del programari.

Automatització d'injeccions

Molts dels escàners secs d'aplicacions web cerquen injeccions, però encara són només escàners generals. I hi ha utilitats que s'ocupen específicament de la recerca i l'explotació d'injeccions. Ara parlarem d'ells.

sqlmapVisió general de les eines gratuïtes per provar recursos web i més v2
sqlmap — Utilitat de codi obert per cercar i explotar injeccions SQL. Admet servidors de bases de dades com ara: MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, SQLite, Firebird, Sybase, SAP MaxDB.
L'ús típic es redueix a la línia:

python sqlmap.py -u "http://example.com/index.php?action=news&id=1"
Hi ha prou manuals, inclòs en rus. El programari facilita molt el treball d'un pentester quan treballa en aquesta àrea.
Afegiré un vídeo de demostració oficial:

bsqlbf-v2
bsqlbf-v2 — un script Perl, un forçador brut per a injeccions Sql "cegues". Funciona tant amb valors enters a l'URL com amb valors de cadena.
Base de dades suportada:

  • MS-SQL
  • MySQL
  • PostgreSQL
  • Oracle

Exemple d'ús:

./bsqlbf-v2-3.pl -url www.somehost.com/blah.php?u=5 -blind u -sql "select table_name from imformation_schema.tables limit 1 offset 0" -database 1 -type 1

-url www.somehost.com/blah.php?u=5 — Enllaç amb paràmetres
-cec tu — paràmetre per a la injecció (per defecte l'últim s'agafa de la barra d'adreces)
-sql "seleccioneu nom_taula des de l'esquema_imformació.tables límit 1 desplaçament 0" — la nostra sol·licitud arbitrària a la base de dades
- Base de dades 1 — Servidor de bases de dades: MSSQL
-Tipus 1 — tipus d'atac, injecció "cega", basat en respostes Vertader i Error (per exemple, errors de sintaxi)

Depuradors

Aquestes eines les fan servir principalment els desenvolupadors quan tenen problemes amb els resultats de l'execució del seu codi. Però aquesta direcció també és útil per al pentesting, quan podem substituir les dades que necessitem sobre la marxa, analitzar què ve en resposta als nostres paràmetres d'entrada (per exemple, durant el fuzzing), etc.

Suite Burp
Suite Burp — un conjunt d'utilitats que ajuden amb les proves de penetració. Està a Internet bona ressenya en rus de Raz0r (encara que per al 2008).
La versió gratuïta inclou:

  • Burp Proxy és un servidor intermediari local que us permet modificar les sol·licituds ja generades des del navegador
  • Burp Spider - aranya, cerca fitxers i directoris existents
  • Burp Repeater: envia manualment sol·licituds HTTP
  • Burp Sequencer: anàlisi de valors aleatoris en formularis
  • Burp Decoder és un codificador-descodificador estàndard (html, base64, hexadecimal, etc.), del qual n'hi ha milers, que es poden escriure ràpidament en qualsevol idioma.
  • Comparador de burp - Component de comparació de cordes

En principi, aquest paquet resol gairebé tots els problemes relacionats amb aquesta àrea.

violinistaVisió general de les eines gratuïtes per provar recursos web i més v2
violinista — Fiddler és un servidor intermediari de depuració que registra tot el trànsit HTTP(S). Et permet examinar aquest trànsit, establir punts d'interrupció i "jugar" amb les dades entrants o sortints.

també hi ha Ovella de foc, monstre Wireshark i d'altres, l'elecció depèn de l'usuari.

Conclusió

Naturalment, cada pentester té el seu propi arsenal i el seu propi conjunt d'utilitats, ja que simplement n'hi ha moltes. Vaig intentar enumerar alguns dels més convenients i populars. Però perquè qualsevol pugui familiaritzar-se amb altres utilitats en aquesta direcció, proporcionaré enllaços a continuació.

Diversos tops/llistes d'escàners i utilitats

Distribucions de Linux que ja inclouen un munt d'utilitats de pentesting diferents

actualització: Documentació de BurpSuite en rus de l'equip "Hack4Sec" (afegit Anton Kuzmin)

PS No podem callar sobre XSpider. No participa en la revisió, tot i que és shareware (em vaig assabentar quan vaig enviar l'article a SecLab, en realitat per això (no coneixement, i manca de l'última versió 7.8) i no ho vaig incloure a l'article). I en teoria, s'havia previst una revisió (en tinc proves difícils preparades), però no sé si el món ho veurà.

PPS Una part del material de l'article s'utilitzarà per al propòsit previst en un informe proper a CodeFest 2012 a la secció QA, que contindrà eines que no s'esmenten aquí (gratuïtes, per descomptat), així com l'algoritme, en quin ordre utilitzar què, quin resultat esperar, quines configuracions utilitzar i tot tipus de consells i trucs quan treballant (penso en l'informe gairebé cada dia, intentaré dir-te tot el millor sobre el tema)
Per cert, hi havia una lliçó sobre aquest article a Open InfoSec Days (etiqueta a Habré, сайт), llauna robar als Korovans fes un cop d'ull Materials.

Font: www.habr.com

Afegeix comentari