Posted by Nightweaver
Tue, 24 Jun 2008 21:30:00 GMT
Iza nas je rekord Firefox-a u broju preuzetih kopija programa u jednom danu. U prva četiri sata preko 3 miliona preuzetih kopija. Može to i brojkama: 3 000 000. Izuzetno! No, ono što mene zanima a što, kladim se, niste znali jeste uloga FreeBSD-a 7 u ovoj novoj Mozilli kao i obaranju rekorda. Novi Firefox je od nama dragog demona sa Berkija preuzeo par jako važnih funkcija koje su mu omogućile stabilnost i bezbednost. Firefox 3 ima novi alokator memorije, jemalloc, koji je napisao Džejson Evans, član razvojnog tima FreeBSD-a. Iako je jemalloc već deo FreeBSD 7 operativnog sistema Mozilla razvojni tim je odlučio da i u sam Firefox 3 ubaci ovu funkciju. Stjuart Parmenter, jedan od programera iz Mozille, na svom blogu kaže: "Primetili smo smanjenje upotrebe memorije i do 22% kada je jemalloc bio uključen." Druga važna funkcija jeste bsdiff’. U pitanju je sistem za binarno ažuriranje FreeBSD sistema. Ovo je uticalo na znatno ubrzanje i smanjenje upotrebe resursa pri ažuriranju Firefoxa. Ovaj sistem je i Apple počeo da koristi za ažuriranje svog OSX-a (pitam se samo kako su se tačno zahvalili zajednici i kako su joj vratili… banditi!)
A sada najvažniji momenat za našu priču i razlog zbog kog se svaki FreeBSD korisnik oseti ponosnim na svoj sistem. Glavni Mozillin server za preuzimanje, jedini koji nije pao ni jednom u toku ovog ludila od preuzimanja programa, se nalazi kod Internet Systems Consortium (ISC) - mozilla.isc.org. ISC je organizacija koja odavno podržava FreeBSD sistem te je i ovaj njihov server koristio FreeBSD 7. Server je podneo opterećenje od gigabita u sekundi u momentima najvećeg broja konekcija na njega.
"ISC je doživeo četiri puta veće opterećenje od uobičajenog na mozilla.isc.org sajtu za vreme Download Day", rekao je Piter Lošer, menadžer u ISC. "Kao po običaju, FreeBSD se pokazao platformom čvrstom kao stena i omogućio nam da isporučimo sadržaj bez problema".
FreeBSD 7. Upamtite to ime. Dostojan slogana "The Power to Serve". Šta, još uvek niste prešli na FreeBSD?:)
Posted in geek, bsd, unix, bofh, sysadmin | Tags BSD, Download_Day, Firefox3, FreeBSD | no comments
Posted by Nightweaver
Thu, 08 May 2008 11:55:00 GMT
Posle jedne od diskusija na linuxo.net forumima palo mi je na pamet da sastavim jedno malo uputstvo za povećanje bezbednosti OpenSSH servera. OpenSSH je odlična aplikacija za udaljeni pristup računarima jer omogućava kriptovanu vezu i potpuni osećaj rada u komandnoj liniji kao na lokalnoj mašini. OpenSSH je projekat, pazi ti to, OpenBSD ekipe. Dakle, postoji više načina da zaštitite svoj SSH pristup od radoznalaca i loših ljudi. Ja ću se ovde koncentrisati na jedan konkretan - sertifikati.
Upotreba sertifikata za pristup udaljenoj mašini je jedan od boljih načina da se poveća sveukupna bezbednost servera. Sertifikati se obično koriste za tzv. pristup bez šifre. Naime, da ne biste pamtili stalno svoju šifru kreiraćete sertifikat koji nema šifru i pomoću njega pristupati sistemu. Ovo je loše jer ako neko dođe u posed vašeg sertifikata onda nastaju problemi. Za ovu priliku ću ipak koristiti seritifkat sa šifrom. Dakle, pređimo na posao.
# local$ ssh-keygen -t rsa - obavezno unesite šifru u dijalogu za nju
# local$ scp ~/.ssh/id_rsa.pub udaljena_masina
# local$ ssh username@udaljena_masina
# remote$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
# remote$ chmod 644 ~/.ssh/authorized_keys - obavezno ovo uradite jer u suprotnom sistem neće čitati sertifikat nego će tražiti šifru.
To je to. Prekinete vezu sa udaljenom mašinom i kada pokušate ponovo da se nakačite dobićete nešto ovako:
Enter passphrase for key ‘/home/nightweaver/.ssh/id_rsa’:
Unesete šifru RSA ključa i bićete na sistemu. OK, idemo korak dalje. Ukoliko neko nema sertifikat biće prebačen na obično logovanje. Mi to ne želimo. Želimo da samo ljudi sa sertifikatom mogu da pristupe sistemu. Slede momenti napredne paranoje.
Pre svega, napravimo korisnika koji ima neko neobično ime. Nešto što će biti teško povezati sa vama. Recimo, gatto. Dakle, imamo korisnika gatto. Prebacimo onaj sertifikat od malopre u home DIR korisnika gatto. Proverimo da li radi tako što ćemo uraditi:
ssh gatto@udaljena_masina
Ako se traži šifra sertifikata onda je sve OK. Idemo dalje. OpenSSH server ne mora slušati na podrazumevanom portu 22. To je port koji će razni skeneri prvo napadati. Prebacimo taj port na nešto visoko i nestandardno. Recimo: 7000. Ovo sve radim na OpenBSD mašini ali je procedura identična i za FreeBSD i GNU/Linux. Dakle:
vim /etc/ssh/sshd_config
Pri vrhu datoteke ćete videti liniju: Port 22. Izmenite to u 7000. Sačuvajte izmene i restartujte SSH server. Sada čete se na sistem kačiti na sledeći način:
ssh -p 7000 gatto@udaljena_masina
a sftp če raditi ovako:
sftp -oPort=7000 gatto@udaljena_masina
Proverite da li sve radi kako treba. Radi? Sjajno, idemo dalje.
Kao što sam već naveo, ukoliko neko nema sertifikat bićemu tražena obična šifra. Ali mi želimo da ti "brute force" pokušaji unošenja šifre budu potpuno onemogućeni. Izmenimo sshd_config podatke da izgledaju ovako:
LoginGraceTime 1m
PermitRootLogin no
StrictModes yes
MaxAuthTries 3
AllowUsers gatto
Ovako postižemo sledeće: korisnik ima 1m da unese svoju šifru, logovanje root korisnika direktno nije dozvoljeno a na raspolaganju će imati samo tri šanse da unese šifru. Poslednji red je veoma koristan. Samo korisnička imena koja se tu nalaze će uopše moći da priđu SSH serveru. Dakle, čak i da ne koristite sertifikate samo čete korisnikom gatto moći da se ulogujete. Lukavo, zar ne? Idemo dalje. Ukažimo sistemu gde mu se nalate RSA ključevi:
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
Isključimo sve ostalo:
RhostsRSAAuthentication no
HostbasedAuthentication no
IgnoreRhosts yes
Sledeći redovi su jako bitni. Stavite ovde NO samo ako ste prethodno testirali pristup RSA ključevima. Posto kada ovo prebacite u NO više neće biti moguće ući na sistem običnom šifrom.
PasswordAuthentication no
PermitEmptyPasswords no
Dakle, sada samo korisnik gatto može pokušati da se uloguje i to ako i samo ako ima RSA sertifikat. No, ovo meni nije bilo dovoljno. Želeo sam da čak i ako neko uspe da uđe na sistem ne može tek tako doći do root naloga. Zato korisnika gatto nisam stavio u grupu wheel te samim tim komanda SU nije radila za njega. No, gatto se može prebaciti na nekog drugog korisnika. Napravio sam sebi radni nalog nightweaver koji je član grupe wheel i može postati root. Da vidimo sada malo skicirano kako izgleda ulaz na sistem:
A nema sertifikat i ne zna dozvoljenog korisnika –> server - odbijen i pokušaj prilaska
A ima sertifikat ali ne zna dozvoljenog korisnika –> server - odbijen i pokušaj prilaska
A ima sertifikat, zna dozvoljenog korisnika ali ne za koji korisnik moze da radi SU –> ne može da napravi veliku štetu
Putanja do sistema bi onda izgledala ovako:
A mora imati sertifikat
A mora znati koji korisnik koristi taj sertifikat i koja je šifra sertifikata
A mora znati koji korisnik na serveru može da radi SU i koja je njegova šifra
A se mora prebaciti na korisnika koji može raditi SU pa tek onda postati root
Sve ovo može izgledati dosta komplikovano… verujte mi, nije. Probajte sami pa ćete videti. Kao neko ko se dosta dugo bavi bezbednošču računarskih mreža mogu vam reći da ni jedan sistem nikada neće biti najbezbedniji. Uz dovoljno truda i znanja svaka se zaštita može pre ili kasnije probiti. Ali zašto ne zakomplikovati put do sistema za one kojima tamo nije mesto?
Posted in geek, bsd, unix, security, bofh, sysadmin | Tags BOFH, BSD, FreeBSD, OpenBSD, OpenSSH, security | 1 comment
Posted by Nightweaver
Sat, 05 Apr 2008 19:55:00 GMT
Evo malo zabave za tmurno subotnje popodne. Pošto nam se grad napunio raznim bežičnim mrežama i na sve strane nas zrače (hehe) hajde da malo “zloupotrebimo” neke od tih bežičnih mreža te da se nakačimo na koju dok sedimo u parku ili kafeu koji nije tzv. HotSpot.
Alatke
Tema ovog teksta jeste skoro pa nelegalno kačenje na tuđi AP. Nešto što bi se moglo nazvati dokaz koncepta i služi isključivo u rekreativne i edukativne svrhe. A i za ubijanje dosade dok sedite i čekate devojku koja kasni a imate laptop pri ruci. Dakle, ovo nije lepo raditi i tako to. Neću vam ja biti kriv ako vas neko nalupa što mu se kačite na AP.
Elem, posle ove moralne poruke da se vratimo temi ovog popodnevnog teksta. Šta nam je sve potrebno da bismo izveli ono što želimo?
- Jedan primerak laptopa koji, jel’ te, ima wifi karticu i na njemu FreeBSD/OpenBSD ili GNU/Linux
- Alatka koja se zove AirCrack-NG i koja se nalazi u portovima.
- Kriptovana bežična mreža – ovom prilikom radimo na WEP kriptovanoj mreži
- Opciono možete slušati KCEA radio stanicu dok to radite. Apsolutno genijalna stanica koja 24/7 pušta swing i big band jazz. Ništa bolje za oblačno subotnje popodne.
Malo teorije
Šta je kog vraga WEP? WEP predstavlja stari i jako loš sistem kriptovanja bežičnih mreža. 3-bitni vektor pod nazivom Inicijalizacioni Vektor (IV) se dodaje paketima na osnovu predefinisanog ključa koji svi klijenti znaju. E, ukoliko neko koristi WEP kriptivanje skoro svaki paket koji generiše klijent ili AP će nam biti od koristi da napadnemo mrežu i dobijemo ključ… ako nakupimo dovoljno paketa… par stotina hiljada paketa.
Alatke za akciju
AirCrack-NG je jedan fin švajcarski nož koji donosi nekoliko jako bitnih alatki za rad. One koje ćemo mi upotrebiti su:
- airodump – Hvata IV-jeve
- aircrack – Krakuje IV-jeve
- airdecap – Dekodiranje uhvaćenih paketa
- airreplay – Ovaj je dobar… ubacuje pakete u AP kako bi izveo napad.
Pređimo na posao
Prvo moramo naći mežu u koju ćemo upasti. Postoji više načina da to uradimo. Najjednostavniji je da na BSD-u uradite ovo:
ifconfig NIC up scan
Naravno, umesto NIC stavite svoju mrežnu kartu. Ovo će izlistati sve mreže koje hvatate. Ono što nas zanima:
- Tip enkripcije: Da li je 64-bit? 128-bit?
- Na kom je kanalu? Ovo može dosta ubrzati prikupljanje IV-a.
Hvatanje IV-a
Ok, pošto znamo koga napadamo vreme ja da hvatamo malo pakete.
./airodump NIC output prefix channel IV flag
- NIC je naravno vaša mrežna karta
- output prefix – ime datoteke u koju će se upisivati rezultati – potrebno.
- channel – specifičan kanal koji skeniramo.
- IVs flag- 0 ili 1, zavisti da li želite da sve pakete ili samo IV.
Moja kartica je ath0 tako da bi kod mene ovo izgledalo ovako:
./airodump ath0 dump 3 1
Dekriptovanje ključa
Hajde da se sad pravimo da smo nakupili dovoljnu količinu IV-a da bismo započeli napad. Otvorite novi terminal dok još uvek radi airodump u prvom i pokrenite:
./aircrack [options] input file
Šta može ići pod options?
- -a 1 : nameće WEP napad dok je 2 WPA napad
- ili -b za bssid ili -e za essid šta god je vama lakše.
- -n 64 ili -n 128 : dužina WEP ključa. Možete izostaviti ako do sada niste otkrili koliki je ključ.
Tako da bi naša komanda izgledala ovako nekako:
./aircrack -a 1 -b 00:23:1F:55:XX:XX -n 128 dump.ivs
And zer she blows. Sada vam ostaje da malo sačekate dok aircrack sastavlja sliku za vas.
Očekivani problemi i rešenja
Velika je šansa da ćete naići na neki problem. Ako ništa drugo imaćete dosta posla da podesite sve alatke da rade kako treba. To ovde nisam objašnjavao jer to nije tema ove priče.
Nema saobraćaja
- Nema saobraćaja tako da ne možete da uhvatite ni jedan IV.
- Ono što možete da uradite jeste da “ubacite” posebne pakete kako biste prevarili AP da šalje pakete.
Filtriranje MAC adresa
- AP odgovara samo povezanim klijentima. Verovatno zato što je uključeno filtriranje MAC adresa.
- Koristeći airodump možete videti koje MAC adrese tu rade, postavite neku od njih za svoj uređaj i možete nastaviti… upotrebite Google da vidite kako se radi MAC spoofing. ;-)
Ne možete krakovati čak ni sa tonom IV-a
- Neki statični napadi mogu stvarati lažne pozitivne odgovore i odvesti vas u pogrešnom pravcu.
- Pokušajte sa -k N (gde je N=1..17) ili -y kako biste varirali svoj napad.
I dalje ništa?
- Nađite AP prateći signal i pitajte admina koji je WEP ključ – social engineering, NLP a možda i brute force metoda upali.
I to je to. Neko će možda reći da je WEP zastareo metod zaštite i da ga niko ne koristi. Jel da? Prošetajte malo Beogradom pa mi onda recite da niko ne koristi WEP.
Posted in geek, bsd, security | Tags hacking, security, wireless | no comments
Posted by Nightweaver
Mon, 10 Mar 2008 22:25:00 GMT

Ukoliko ste skoro kupili laptop sa Intelovom grafičkom karticom naišli ste na problem da vam XOrg na FreeBSD-u ne prepoznaje Intel karticu već koristi VESA drajver. To nije tako loše ali se značajno gubi na kvalitetu slike a o 3D ubrzanju i efektima da i ne govorimo. Rešenje za ovaj problem je vrlo jednostavno. Evo ga u nekoliko koraka:
pkg_delete -f /var/db/pkg/xf86-video-i810-1.6.5_3
Brišemo i810 drajver koji dolazi uz instalaciju XOrg-a. Sistem će reći da ima problem pošto je taj drajver potreban xorg-drivers meta paketu. Nije nego.
cd /usr/ports/x11-drivers/xorg-drivers && make config
Sa liste drajver izaberite INTEL, VESA i VGA. Ostalo vam nije potrebno. Ukoliko štiklirate I810 i I740 instalacija vam neće proći jer će doći do konflikta.
make install clean
Kada instalirate drajvere kao root pokrenite:
Xorg -configure
To će napraviti: /root/xorg.conf.new i podesiti sve za vaš monitor i grafičku kartu. Sada je potrebno prebaciti ovaj fajl u /etc/X11
mv /root/xorg.conf.new /etc/X11/xorg.conf
I to je to. Sada vam grafička karta radi kako treba. Upravo sam prijatelju sređivao novi MSI laptop te sam naleteo na ovaj problemčić… možda nekome zatreba rešenje.;)
Posted in geek, bsd, sysadmin | Tags FreeBSD, HOWTO | no comments
Posted by Nightweaver
Sat, 10 Nov 2007 22:21:00 GMT
Не знам шта очекујете од наслова овог текста. Најбоље је да не очекујете ништа јер оно што следи нема никакве везе са насловом… заправо има. Тако је Мет Ситон, новинар Гардијана, описао књигу Глинене ноге коју написа генијални Тери Прачет. То, наравно, нема ама баш никакве везе са Сунашце Т1000 сервером из поруке написане 10цм ниже. Е, па има. Сем што се књига о којој причам, а коју топло препоручујем, налази на столу поред мене док ово пишем њен кратки опис на корицама ме је инспирисао да напишем ово посве занимљиво(јесте, занимљиво је!) упутство за инсталирање Solaris оперативног система на Sun Т1000 преко мреже. Како то? Па лепо, када ми је стигла машина пре 10-ак дана осетио сам се као капетан Вајмс у наведеној књизи: “Не само да сада треба открити алико, него и аликако, а он чак није био сигуран ни алишта. Али чим сазна која су права питања, пожелеће да чује и одговоре.” Прича каже следеће…
Read more...
Posted in geek, bsd, unix, sysadmin | Tags FreeBSD, Solaris, SysAdmin | no comments
Posted by Nightweaver
Wed, 26 Sep 2007 21:17:00 GMT

Kada posmatrate aktivnost na UNIX ili UNIX sličnom sistemu videćete određen broj procesa od kojih su neki ativni a neki spavaju. Ponekad će vam se desiti da se na listi nađe i određen broj zombiranih procesa. Nije potrebno previše mašte da shvatite šta može biti zombi proces. Za one koji ne žele puno da maštaju na datu temu evo kratkog objašnjenja: kada određen proces završi ono što radi ali ostane u tabeli procesa on postaje nemrtav ili zombi. Dete proces je umrlo (died) ali još uvek ga Smrt nije pokupila(reaped). U normalnim okolnostima bi roditeljski proces (parent) trebalo da pročita izlaznu informaciju svog deteta (child) izvršavanjem sistemske komande wait pri čemu se zombi uklanja. Ukoliko sve ne ide po planu mali zombi ostaje u listi procesa. Ovo ponekad može biti poželjno ukliko roditeljski proces pravi nove procese koji ne bi trebalo da imaju iste ID kao prethodna deca. Opet, ovo ponekad može biti loše..posebno kada se zombirana deca prenamnože.
Evo kratkog ali slatkog uputstva kako da pobijete svu zalutalu decu…(divna terminologija, zar ne?)
Prvo pokrenite komandu ps aux da biste videli svu tu zalutalu decu. Izaberite bilo koje od njih (PID) pošto će ih biti podosta.
ps axo ppid -p | grep -v PPID | sed 's/ //g'
Ovo će nam dati PID roditelja. Ukoliko nemate pojma koji je to program evo kako ćete saznati:
which `ps axo command -p | grep -v COMMAND | cut -d' ' -f1`
Ok, sad znamo ko je vudu vrač koji podiže sve te zombije. Šta ćete sa njim raditi je na vama. Prosto restartovanje programa će pobiti sve zombije. Ukoliko želite da vidite šta se to desilo možete uraditi sledeće:
gdb /putanja/do/programa PID-roditelja
Srećno ubijanje dece…zombija…zombirane dece:-)
Posted in geek, bsd, bofh, sysadmin | Tags BOFH, BSD, HOWTO, SysAdmin | no comments
Posted by Nightweaver
Sun, 15 Apr 2007 21:10:00 GMT

Kada je u pitanju administracija servera i bezbednost istih ni jedan stepen paranoje nije dovoljno visok. Posebno kada je u pitanju shell pristup koji ponekad jednostavno moramo dati svojim korisnicima iako to zaista ne želimo(BOFH). Najbolji način da se zaštitimo od potencijalnih nevolja koje taj shell pristup može da izazove jeste da ih nekako zatvorimo u neki virtuelni kavez iz kog ne mogu da pobegnu te da jedina šteta koju mogu da načine jeste šteta nad sopstvenim podacima(BOFH).
Read more...
Posted in geek, bsd, unix, security | Tags BOFH, BSD, FreeBSD, security, SysAdmin | no comments
Posted by Nightweaver
Wed, 28 Mar 2007 21:07:00 GMT
Opšte je poznato da BSD sistemi teže visokom stepenu sigurnosti koji ponekad prelazi u potpunu paranoju. No, kada se radi o serverima i administraciji istih ni jedan stepen paranoje nije dovoljno visok. Ipak, kada koristite FreeBSD kao desktop mašinu normalno je da vam ta paranoja smeta pri svakodnevnim aktivnostima. Jedna od takvih je i upotreba optičkih uređaja. Postoje dva načina da koristite svoj CD-ROM.
Read more...
Posted in geek, bsd, unix | Tags BSD, FreeBSD, SysAdmin | no comments
Posted by Nightweaver
Mon, 12 Mar 2007 22:13:00 GMT

Imagine this situation: you are a regular BOFH in an IT company and one day your boss decides that all chats and visits to certain web sites are to be prohibited. Since you are local sys admin/BOFH it’s up to you to come up with a good solution. You sit down and give it a thought. One solution is to use Squid or any other proxy. That’s OK but on that particular day you feel kind of lazy to mess around that nasty Squid config file. On the other hand, since you are a smart BOFH, you’ve installed OpenBSD as you company’s router OS. Bingo! Great Goth in the cloudy sky had giveth us the joy of Packet filter(PF). So let’s kill some MSNs with our sweet PF.
Read more...
Posted in geek, bsd, security, bofh | Tags BOFH, BSD, OpenBSD, security | no comments