Open Posted July 27, 2014 Report Posted July 27, 2014 Aceasta eroarea a fost gasita de mine acum mai mult timp in urma, si am hotarat sa il fac public. 1 Quote
Gushterul Posted July 27, 2014 Report Posted July 27, 2014 Ce "exploit" si ce "eroare":)/etc/passwd a fost mereu citibil de catre orice user de la inceputul sistemului de operare (si n-are nici o treaba ca e Redhat "cloud":)))Daca luai /etc/shadow, era alta poveste. De aceea s-a si implementat /etc/shadow, pentru ca se facea bruteforce pe parolele din /etc/passwd pe vremuri.In plus majoritatea providerilor fac parole random si greu de spart, tocmai din cauza ca se stie ca username-ul este public.Extraordinar daca dai un ls -la /var/lib/mysql o sa vezi si numele bazelor de date! Bug! Exploit! Bounty! Quote
Open Posted July 27, 2014 Author Report Posted July 27, 2014 Ce "exploit" si ce "eroare":)/etc/passwd a fost mereu citibil de catre orice user de la inceputul sistemului de operare (si n-are nici o treaba ca e Redhat "cloud":)))Daca luai /etc/shadow, era alta poveste. De aceea s-a si implementat /etc/shadow, pentru ca se facea bruteforce pe parolele din /etc/passwd pe vremuri.In plus majoritatea providerilor fac parole random si greu de spart, tocmai din cauza ca se stie ca username-ul este public.Extraordinar daca dai un ls -la /var/lib/mysql o sa vezi si numele bazelor de date! Bug! Exploit! Bounty!Da este logic la ce spui tu, dar intereseaza-te despre RedHat linux cloud Quote
Gushterul Posted July 27, 2014 Report Posted July 27, 2014 Nu este "logic", ci asa este sistemul facut. Nu conteaza ca este Redhat, Suse, Debian, Ubuntu, Hpux, Solaris, Freebsd, etc, toate /etc/passwd-urile sunt citibile de catre toti. Daca ai shell, fopen(), etc poti sa vezi /etc/passwdExista jailuri si alte chestii prea avansate dar nu e cazul tau sa le explic acum ca exceptii.Dar in cazul tau, pune un script php pe server cu:<?php echo file_get_contents('/etc/passwd');?>Sau daca ai functiile blocate, adaptezi pentru perl pentru ca asa merge si shell scriptul ala cu care te joci. N-are nici o treaba cpanelul si ce face el, dar poti sa te documentezi despre useri si grupuri.Magic...(logica de a fi citibil /etc/passwd pe vremuri era de exemplu ca puteai sa comunici cu alti utilizatori, aveai wall, finger, si alte programe, si trebuia sa ai acces la /etc/passwd fara sa faci setuid)Uite si o bucata de manual:passwd(5) - Linux manual page Quote
php5 Posted July 27, 2014 Report Posted July 27, 2014 Bre Shello , are dreptate Gusterul.... Nu vad unde e bugul in Redhat? Nici nu e bug oricum Quote
Htich Posted July 27, 2014 Report Posted July 27, 2014 Deci din acest videoclip am invatat "comenzi noi" ?Vorba lui @Gushterul nu e nimica noi 1-3 comenzi si poc.. Evrika we found some username's Quote
Open Posted July 28, 2014 Author Report Posted July 28, 2014 Ceea ce nu ati inteles voi din acest videoclip este ca aceasta "eroare" este ceva mai "speciala" deoarece sunt unele firme de hosting care are "jail pe user" mai exact nu poti sa vezi decat userul tau.Daca dai <?php echo file_get_contents('/etc/passwd');?>cum ai spus tu @Gushterul ai sa vezi decat userul tau, nu si ceilalti useri creati acolo.Cu aceasta vulnerabilitate poti extrage toti userii creati pe acel server.Pe viitor interesati-va dupa care lasati comentarii. Quote
d4rkm4nx Posted July 28, 2014 Report Posted July 28, 2014 off topic Daca ai id 0 folositi John the Ripper password cracker foarte util John the Ripper password cracker Quote
Gushterul Posted July 28, 2014 Report Posted July 28, 2014 Faptul ca ai un script in jail, si ca in realitate ai alte zeci de cai sa ajungi la /etc/passwd nu inseamna ca e o vulnerabilitate... Decat ok poti sa zici ca cPanelul nu este destul de matur sa inchida toate posibilitatile. Personal n-am vazut nici o solutie 100% jailed dar care sa ofere si servicii cum trebuie. Mie nu mi se pare normal sa oferi hosting, apoi sa tai toate cele prin el, sa nu ai acces la un python, un mail() etc.La unele versiuni/setupuri merge si din cron de exemplu, poti edita crontabul si sa iti scoti jailshellul, apoi poti face dump la /etc/passwd, ssi pe symlinks, roots, mysql load from file si multe prea multe alte cai Daca puteai de exemplu din acel jailshell sa ajungi la /etc/passwd atunci puteai sa zici ca e un bug in jailshell Quote