cwbe coordinatez:
101
63540
1701996
4658010
4688037

ABSOLUT
KYBERIA
permissions
you: r,
system: public
net: yes

neurons

stats|by_visit|by_K
source
tiamat
K|my_K|given_K
last
commanders
polls

total descendants::
total children::9
77 ❤️


show[ 2 | 3] flat


maniac0
Takze,
po 2 tyzdnoch contestu prichadza jeho koniec, vyhlasenie vitazov a full-disclourse bugov.
Bolo najdenych celkove 30 bugov, z nich 12 obzvlast skodnych (kritickych). (teda ovladanie jesterkami na 40%)

1. miesto: id 660 (miloo)

Suverenny vitaz ktory ako jediny dosiahol metu najvyssiu. Ako prvy nasiel SQL injection, php shell, a postupne to dotiahol az na roota.
Nalezy (chronologicky):

1: SQL injection v POSTe "event=configure_system_access&node_system_access=private',node_name=(select password from users where user_id=$ID_OBETE), node_id='$ID_UTOCNIKA" na "https://kyberia.sk/id/$ID_UTOCNIKA"
Utocnik takto mohol tahat lubovolne data z sql databazy rychlostou jeden string na 2 requesty. Vobec prva najdena SQL injection.

2: SQL injection v /id/19/ -> set_bookmark_category, v node_id.

3: SQL injection v delete mail. (cislo mazanej spravy nie je osetrene).

4: SQL injection v event=K (node_chosen[] checkbox)

5: PHP shell, a sice: upload datanod nekontroloval dostatocne priponu uploadovaneho suboru, takze bolo mozne uploadnut "php shell", a zadavat prikazy priamo z browseru. Jediny hacik bol v tom, ze kde sa tento subor uploadol: bolo to do kyberia.sk/files/`id_usera`/`id_nody`.php , co kopu ludi zmiatlo, a aj ked svoje phpcko uploadli, nenasli ho a nezneuzili. miloo ho uspene nasiel a pouzil, "e1m1" a "k" si sice nejake phpcka uploadli, ale pravdepodobne ich nenasli;)

6: Root shell: Po ziskani php shellu miloo tento bug nahlasil, a aby mu este chvilu trvalo kym ziska roota, bol operativne zapnuty php safe_mode (ktory bol z "historickych" dovodov vypnuty). Pri zapnutom safe_mode by malo php vediet pristupovat iba do webrootu a jeho podadresarov, a nemalo by vediet volat system(). miloo ale nasiel adresar cron, do ktoreho mal pravo zapisu, a skripty v ktorom su raz za cas vykonane. Takze si tam pridal perlovsky skript, ktory sa mu po case nakonektil na jeho masinu, a tym ziskal plnohodnotny interaktivny shell. Potom uz stacilo pouzit exploit na stare jadro, a voila!: jeden root navyse. Stare jadro tam bolo zase z dovodu historickych, a sice rucne kompilovany kernel, a kazdy sa bal ho prebuildit, aby to este nabootovalo.

2-3. miesto: id 2913932 (k), id 1580092 (sine), id 1595477 (e1m1)

Kedze som nebol schopny rozumne rozhodnut kto z tychto 3 mladikov nasiel najzavaznejsie chyby rozhodol som sa 2. az 3. miesto priradit vsetkym trom (bez poradia). Vsetci traja nasli chyby, ktore by im dovolili pristupovat viac menej k datam lubvolneho uzivatela kyberie. Nie uplne premyslenym systemom nahlasovania bugov som sposobil, ze plny potencial niektorych ucastnikov sa nemohol rozvinut, takze tentokrat su si vsetci traja rovni.
Najdene bugy:

id 2913832 (k)
1: stored XSS v nodename (IE only)
2: SQL injection v konfiguracii nody. V poliach silencelist, masterlist, executelist, banlist a oplist
nebol osetrovany apostrof na vstupe, a teda sa dali zneuzit na sql injection.
3: reflected XSS v mene usera (mail)
4: reflected XSS v archiv hladani
5: Dalsia sql injection (detaily zatial cenzurovane)
6: Neprijemna vlastnost, ktora nie je uplne zavazna, ale tazko sa odstranuje a bude ju treba riesit systematicky. (detaily zatial cenzurovane)

id 1580092 (sine)
1: CSRF (pri zmene emailu)
2: reflected XSS v preview
3: reflected XSS v chat
4: reflected XSS pri registrácii (login aj email)
5: session fixation na cookie PHPSESSID
6. reflected XSS v search
7. stored XSS v ankete
8. v configure v poliach silencelist, masterlist, executelist, banlist a oplist je aj reflected XSS
9. SQL injection v configure_external_access v node. Dopad rovnaky ako v sqli od id 660. Zaroven aj XSS.
10. Takmer blind SQL injection v logine (cez id). Da sa ziskat jeden bit na 1 request. (teoreticky mozno aj viac)
11. Stored XSS v poste, ked user posle mail sam sebe (vo vsetkych atributoch). Nie je to priamo zneuzitelne, ale da sa tak premenit reflected XSS na stored XSS.

id 1595477 (e1m1)
1: Local file include (directory traversal). Cez -> event=../../../../../../../../etc/passwd%00

Ostatni:
Samozrejme nesmieme zabudnut ani na ostatnych ktory sa zucastnili, a sice (bez poradia)

id 3764244 (Harvie)
1: nodu s nastavenym net=false videt bez prihlasenia z parrent nody, ktora ma net=true
2: presna identifikacia v http headroch (napr PHP/5.2.0-8+etch13)

id 956 (gnomon)
1: je mozne preparentovat prispevok do privatnej nody kam user nema pristup

id 1859269 (Toth)
1: V user submissions children sa zobrazuju privatne nody
2: Do moderated nody sa da zapisat cez id/noda/4

id 2244 (Xanthix)
1: Stored XSS v userinfo

Dakujem vsetkym zucastnenym, dufam ze ked nic ine, aspon sa naucili nieco nove.
Contest bol myslim vyhodny pre vsetky zucastnene strany:
Kyberia sa aspon trochu zabezpecila, fixlo sa 12 najzavaznejsich z najdenych chyb, roxori si zlepsili skill, a nezainteresovana verejnost vidi ako mozu byt veci na pikacu, aj ked to nie je na prvy pohlad vidiet. (a neskor mozno zisti, ze je to tak skoro vsade;) A tiez ze informacie maju tendenciu unikat, a sakra sa oplati rozmysliet si co kde zverejnim, hoci aj v privatnej node.

Co sa tyka dopadu, tak vsetci 4 umiestneni na bodovanych prieckach by sa teoreticky (a niektory aj velmi prakticky) boli schopny dostat sa k lubovolnej node lubovolneho usera, prispevku, poste, k hashu hesla, emailovej adrese, ...

Z toho vyplyva, ze vase heslo na kyberiu by teoreticky mohlo byt zname x ludom, a obzvlast ak ho pouzivate este niekde inde by nemusel byt zly napad si ho zmenit.

Vsetci styria vitazi ziskavaju prestiz;), konta na ozivenom stroji c0re, pozvanku na najblizsiu hysteria session a pripadne ine, sukromne dohodnute benefity.

n.




000001010006354001701996046580100468803704701364
piece_of_IT
 piece_of_IT      13.05.2009 - 02:13:33 , level: 1, UP   NEW
tiez dakujem, hlavne iniciatorom tohto contestu za kreativny napad na sebarealizaciu, ochote zucastnenych podelit sa so svojim know-how a adminom za ochotu dat veci do poriadku... verim, akcie podobneho typu sa stanu castejsimi

fff

000001010006354001701996046580100468803704690042
.db
 .db      07.05.2009 - 10:15:28 , level: 1, UP   NEW
congratz, dobre

000001010006354001701996046580100468803704689709
miloo
 miloo      07.05.2009 - 02:16:37 [13K] , level: 1, UP   NEW
diky, gentlemen, bolo mi ctou
/snad by nebolo od veci si to v ramci prevencie [ne]raz zopaknut/

00000101000635400170199604658010046880370468970904690400
yerythoo
 yerythoo      07.05.2009 - 12:20:26 , level: 2, UP   NEW
rešpekt!

000001010006354001701996046580100468803704689006
ziman
 ziman      06.05.2009 - 21:03:10 , level: 1, UP   NEW
velmi pekne, chalani :)

000001010006354001701996046580100468803704688835
slash
 slash      06.05.2009 - 19:53:48 , level: 1, UP   NEW
kudos to all...mainly miloo :)

000001010006354001701996046580100468803704688757
k_[uz_vsetko_viem]
 k_[uz_vsetko_viem]      06.05.2009 - 19:23:03 (modif: 06.05.2009 - 19:25:08), level: 1, UP   NEW !!CONTENT CHANGED!!
vdaka a aj za spravodlive rozdelenie

5.bug miloov zamrzel, resp. to ze som to neprevrtal lepsie ;)

00000101000635400170199604658010046880370468875704688893
e1m1
 e1m1      06.05.2009 - 20:23:02 , level: 2, UP   NEW
-||-

000001010006354001701996046580100468803704688670
mamaralo
 mamaralo      06.05.2009 - 18:41:31 , level: 1, UP   NEW
GRATS! :)

000001010006354001701996046580100468803704688638
sine
 sine      06.05.2009 - 18:23:17 , level: 1, UP   NEW
kedze uz vsetky tieto benefity mam, nechavam sa prekvapit, co vymyslis ;)

000001010006354001701996046580100468803704688444
e1m1
 e1m1      06.05.2009 - 17:15:43 , level: 1, UP   NEW
thx za contest:)