Những cách thức tấn công của một Hacker để khai thác và hạ gục một Website


I. Làm thế nào để khai thác một Website ?
1. Am hiểu các loại mã nguồn: PHP, HTML, WordPress, vbb, Xenforo, ASP, v.v..
2. Biết khai thác và sử dụng mọi thông tin có được từ Google
3. Có kiến thức về các loại cơ sở dữ liệu: MySQL, SQL Server v.v..
4. Có sự kiên trì (Không phải site nào cũng dễ nuốt)
5. Có tư duy logic

sql injuction picateshackz1

II. Các bước để khai thác một Website ?
1. Chuẩn Bị
2. Quét Thăm Dò
3. Liệt Kê Các Lỗ Hỗng Tìm Được
4. Khai Thác & Xâm Nhập
5. Leo Thang – Vượt Quyền
6. Thu Thập Thông Tin & Dữ Liệu
7. Xóa Dấu Vết
8. Tạo Cửa Sau
9. Hoàn Tất

III. Tấn công trực tiếp

1. Brute Force Attack:
+ Kiểu tấn công brute force là kiểu tấn công được dùng cho tất cả các loại mã hóa.
+ Brute force hoạt động bằng cách thử tất cả các chuỗi mật khẩu có thể để tìm ra mật khẩu.
+ Vì thế nên thời gian cần rất lâu, tùy theo độ dài của mật khẩu nhưng khả năng để tìm ra là luôn luôn nếu không giới hạn thời gian.
+ Brute force thường được dùng khi các phương pháp khác đều không có hiệu quả

2. SQL injection:
• SQL injection là một kỹ thuật cho phép những kẻ tấn công lợi dụng lỗ hổng của việc kiểm tra dữ liệu đầu vào trong các ứng dụng web và các thông báo lỗi của hệ quản trị cơ sở dữ liệu trả về để inject (tiêm vào) và thi hành các câu lệnh SQL bất hợp pháp,
• Sql injection có thể cho phép những kẻ tấn công thực hiện các thao tác, delete, insert, update,… trên cơ sỡ dữ liệu của ứng dụng, thậm chí là server mà ứng dụng đó đang chạy
• Lỗi này thường xãy ra trên các ứng dụng web có dữ liệu được quản lý bằng các hệ quản trị cơ sở dữ liệu như SQL Server, MySQL, Oracle, DB2, Sysbase…

3. Bug & Exploit
– Bug & Exploit hiểu chung là những lỗi hoặc thiếu sót của hệ thống trong quá trình sản xuất và nhờ đó hacker lợi dụng để làm những việc nhằm đạt mục đích của họ !
– Trong thực tế Bug khác với Exploit, nhưng đôi khi cả 2 vẫn được ngầm hiểu như nhau.
– Trong giới hacker Bug và Exploit thường được sử dụng để khai thác và tấn công các website có mã nguồn phổ biến như mã nguồn mở hoặc mã nguồn thương mại được nhiều người biết tới .

4. Crack Password

  • Thuật ngữ Crack Password là từ mô tả công việc phá mật mã đã được mã hóa để có thể sử dụng .
  • Để có thể thực hiện được Crack Password chúng ta cần hiểu rõ loại mã hóa đang gặp phải và cơ chế của chúng để tiến hành Crack .
  • Trong một số trường hợp không được gọi là Crack Password vì đó là loại mã hóa 1 chiều, nên chúng ta có khái niệm Brute Password

5. Find & Search

  • Trong các phương thức tấn công trực tiếp, Find & Search là một hình thức đơn giản nhất nhưng dễ thực hiện và hiệu quả cao nhất.
  • Để phương thức này thành công điều quan trọng nhất là tư duy của người hacker cần phát huy tối đa.
  • Có những hình thức tấn công cực kỳ nguy hiểm và cao siêu, tuy nhiên lại không thể bằng hình thức này.

Những công cụ dùng để khai thác Website

1. Flagfox

sshot 1


Hiển thị một lá cờ cho biết địa điểm máy chủ của trang web đang vào và cung cấp vô số công cụ như kiểm tra độ an toàn của trang, whois, dịch thuật, trang tương tự, chứng thực, rút gọn URL, và còn nhiều nữa…
>> Link: https://addons.mozilla.org/vi/firefox/addon/flagfox/?src=ss

2. Hackbar:

hackbar


Một công cụ đắc lực trong việc khai thác SQL và header HTTP Website

>> Link: https://addons.mozilla.org/vi/firefox/addon/hackbar/?src=search

3. Live HTTP Header:

live httpheaders


Đây là công cụ không thể thiếu của bất kỳ một hacker nào – Kiểm tra độ bảo mật cơ bản của Website / Công cụ để xâm nhập vào website

>> Link: https://addons.mozilla.org/vi/firefox/addon/hackbar/?src=search

4. IP Address and Domain Information

ip


Đây là một công cụ điều tra trực tuyến chi tiết về các thông tin : Địa chỉ IP, nhà cung cấp Domain, các dải IP liên quan, DNS của hosting, ..v…v

>> Link: https://addons.mozilla.org/vi/firefox/addon/ip-address-and-domain-info/

5. Tamper Data

4996

Xem và chỉnh sửa các thông số HTTP/HTTPS headers ….

>> Link: https://addons.mozilla.org/vi/firefox/addon/tamper-data/?src=search

6. Firebug

firebug


Firebug tích hợp vào Firefox vô số công cụ phát triển ngay trước đầu ngón tay của bạn. Bạn có thể chỉnh sửa, gỡ lỗi, và theo dõi CSS, HTML và JavaScript trực tiếp trên bất kì trang web nào…

>> Link: https://addons.mozilla.org/en-US/firefox/addon/firebug/

Thu thập thông tin + Google Hack

I. Thu thập thông tin
Công việc ở đây bao gồm: tìm victim, thu thập thông tin về victim. Khi xác định được site mục tiêu các bạn hãy cố gắng thu thập được càng nhiều thông tin càng tốt.

Ví dụ như: số điện thoại, facebook, email, ngày tháng năm sinh v.v…

Chắc các bạn sẽ thắc mắc tại sao cần thu thập những thông tin đó để làm gì. Nó có tác dụng gì. Mình xin nói luôn rằng hiện có rất nhiều admin đặt mật khẩu bằng số điện thoại, ngày tháng năm sinh v.v… chính vì thế việc thu thập thông tin là một bước khá quan trọng và nhiều khi nó sẽ khiên công việc trở nên dễ dàng hơn rất nhiều.

Tóm lại đừng bỏ qua bất kỳ chi tiết nhỏ nào mà bạn có thể thu thập được.

P.s: Ngoài ra trong quá trình tấn công bạn cũng nên ghi nhớ xem site đó sử dụng hosting của nhà cung cấp nào, có địa chỉ ip ra sao, sử dụng Cpanel hay Directadmin v.v…

Những thông tin này cũng khá quan trọng. Ví dụ khi biết IP 1 site có như sau: 112.213.89.41 thì ta có thể đoán ngay là hosting này của PAVietNam và dụng Cpanel.

Vì sao có kết luận này, vì theo kinh nghiêm thì Server của PAVietNam thường có IP dạng: 112.213.xx.xx và PAvietnam thì dùng Cpanel.

II. Port vào trang quản lý hosting của một số loại Control Panel

Direct Admin: 2222. Ví dụ: 112.213.89.41:2222
Cpanel: 2083, 2082, 2087 hoặc domain/cpanel. Ví dụ: https://112.213.89.41:2083
Kloxo: 7778, 7777

1. Patch của 1 số Control Panel

Direct admin: /home/user/domains/tenmien/public_html/
Cpanel: /home/tenmien/public_html/

2. Thu thâp thông tin:

– Lấy thông tin của victim. Bằng các sử dụng whois. Tìm hiểu càng nhiều thông tin về victim càng tốt. Và Google, Bing, Yandex …. đều là các công cụ hữu ích. Mình khuyên nên thử với nhiều công cụ tìm kiếm. Vì bản thân thuật toán tìm kiếm của các công cụ này khác nhau nên dẫn đến cho nhiều kết quả với hiệu quả khác nhau.

Ví dụ như nhập vào công cụ search như sau

ip:123.101.11.122 id=

Nó sẽ cho ta một số thông tin thú vị. Bạn hãy cố gắng thu thập thông tin ban đầu càng nhiều càng tốt. Chủ sở hữu domain, Admin của website, Support, kể cả số điện thoại , facebook, gmail, yahoo, địa chỉ mail của công ty. Một Attacker giỏi là một Attacker có khả năng tận dụng mọi sơ hở, mọi điểm yếu có thể tấn công.

3. Phân tích khả năng tấn công

– Đầu tiên là nên scan victim chính. Scan victim chính là công việc chủ đạo. Đối với site nằm trong Server Private của các công ty lớn thì đây là bước đóng vai trò quyết định bạn có thể Attack được nó hay không.

– Công cụ scan khá nhiều. Mình giới thiệu bạn 1 số bộ như Acunetix Vulnerablility Scanner, OpenVAS (của Kali Linux) , w3af ( của Kali Linux) , Nessus (của Kali Linux và có phiên bản trên Windows), wpscan ( scan WordPress trong Kali Linux), joomlascan ( scan bug Joomla trong Kali Linux), uniscan ( trong Kali Linux) … ngồi mà kể hết các bộ công cụ chắc đến sáng mai. Công cụ thì nhiều nhưng các bạn nên chọn lựa. Đối với victim nào nên dùng bộ nào. Và nên dùng kết hợp. Vì như mình đã nói với mỗi tool khác nhau nó dùng cơ chế, thuật toán scan khác nhau nên hiệu quả nó cũng khác nhau. Từ kết quả scan được, nó cho ta định hình phải tấn công như thế nào.

– Scan Server: Scan lấy thông tin về Server. Ví dụ như xem Server dùng hệ điều hành gì. Sử dụng Apache, IIS phiên bản bao nhiêu. Được viết trên ASP hay PHP, Port nào đang mở (Để Scan Port thì có thể dùng Nmap, đó là công cụ rất hiệu quả).

– Mọi thông tin về phiên bản, Port bạn hãy Google ngay. Hoặc vào exploit-db.com xem nó có thể bị khai thác thông qua nó hay không. Còn không bạn có thể lưu lại thông tin. Rồi sau đó kiểm tra 1 lần xem sao. Đây là các bước rất cần thiết đối với việc tấn công 1 website lớn.

Đối với Server Share Host thì phân tích khả năng tấn công. Đây cũng là một bước rất quan trọng. Nó rút ngắn thời gian tấn công của bạn. Nhưng mang lại hiệu quả cao.

– Mình thấy đa số (Và trước đây mình cũng vậy). Đó là để tấn công 1 Website ko bị lỗi, không có lỗ hổng. Mình thường Reserve IP của Server chứa victim. Rồi mở từng site check xem có sqli hay không.

– Đồng ý là SQLi rất nhiều và rất dễ khai thác. Nhưng không phải lúc nào mình cũng có thể may mắn. Check 1 cái là ra link bị lỗi ngay. Nếu scan toàn bộ site thì đến bao giờ mới xong. Có một cách rút ngắn quá trình này đó là xác định loại site cần tấn công.

Mình ví dụ. Bạn có kinh nghiệm về check WordPress. Bạn muốn tìm các site trong server sử dùng mã nguồn này để tấn công. Sau đó Local sang victim chính. Hãy dùng google với dork là

ip:112.78.2.247 “wordpress”

Tương tự cho các mã nguồn khác cũng vậy.

4. Tìm lỗi

– Đây là bước nhiều nhất, nhưng mình nói ít nhất, ví nó có quá nhiều kiểu tấn công. Biết nói thế nào cho hết được.

– Chỉ đúc kết một số kinh nghiệm. Ví dụ như đối với Forum vBB chẳng hạn. Nhiều phiên bản thực sự không có Bug. Nhưng không phải vì thế mà ta bỏ qua. Hãy xem các Web Application của nó. Ví dụ như các mod. Đối với Joomla và các mã nguồn khác cũng vậy. Hãy xem các extension đi theo. Chúng rất hay bị lỗi. Bởi vì đây đa số là các ứng dụng tích hợp được viết bởi các Web Developer việt nam. Chúng rất kém trong việc bảo mật.

– Tận dụng tối đa kết quả mà các bạn Scan ở trên. Ví dụ như bạn Scan được Server dùng apache 2.1 chẳng hạn. Hãy xem nó là bản Update chưa. Nếu chưa có lỗi để khai thác không. Tấn công vào nó. Xem thông tin từ các lỗi Public trên Google mà tấn công. Hãy cố gắng tấn công 1 cách từ từ.

Xem trong cấu trúc site khi scan được. Chỗ nào là khai thác được. Ví dụ như chúng để lại database back up trên site chẳng hạn. Tải về và phân tích ngay.

Nhiều bộ công cụ scan nó scan đến từng lỗi nhỏ. Như tìm vị trí có thể up ảnh, up file bẳng hạn. Hãy cố bypass up shell thử xem.

– Ở mục này có quá nhiều cái để nói. Và thực chất đa số mọi Tut khai thường nói về phần này. Nên mình để phần này cho các bạn. Hãy cố gắng tích hợp càng nhiều kinh nghiệm phần này. Càng nhiều càng tốt. Các phần khác nó đi theo 1 quy luật nhất định. Có thể đối với victim nào bạn cũng làm như thế. Nhưng đối với phần này nó phụ thuộc vào nhiều thứ. Phụ thuộc vào kết quả scan được. Phụ thuộc vào những đối tượng khác nhau. Nên nó rất đa dạng.

Kết quả ở phần này. Là bạn có thể có được tài khoản admin. Up được shell.

III. Google Hack

Là phương pháp sử dụng kỹ thuật khai thác bộ máy tìm kiếm Google để tìm thông tin đối tượng cần tấn công hoặc thông tin phục vụ quá trình khai thác tấn công .

A. Goole Search Basic :

1. Cache Website
Để xem cache của một website các bạn dùng cách search như sau:
cache:abc.com

Như vậy các bạn có thể xem được cache của site được lưu trên google. Thông qua việc xem cache này nhiều khi các bạn sẽ có thể thu được khá nhiều thông tin bổ ích, ví dụ như path của site để phục vụ Local hay xác định site đó dùng Direct Admin hay Cpanel…

2. Sử dụng Google như 1 Proxy Sever
Sử dụng google như một Proxy Server dựa trên tính năng dịch website của google translate

3. Directory Listings
Sử dụng google để tìm kiếm các site bị lỗi cho phép xem thư mục

Ví dụ ta tìm kiếm như sau:

INDEX OF /MP3

1

Hoặc

Index of /admin

2

B. Goole Search Key:

INTITLE:”TỪKHÓA”

INURL:”TỪKHÓA”

FILETYPE:”TỪKHÓA”

INTEXT:”TỪKHÓA”

CACHE:ABC.COM

INDEX.OF.ADMIN (INDEX OF /ADMIN)

Lệnh kết hợp dựa trên ý tưởng gộp , kết hợp các cú pháp lệnh với nhau :

V/D :

INURL:”THOITRANG” INDEX.OF.ADMIN

Hoặc khi các bạn tìm được 1 site bị lỗi SQL Injection có link dạng như sau:

HTTP://SITE.COM/PRODUCT_INFO.PHP?ID=58

Vậy ta có thể nghĩ ngay đến việc tìm các site có link tương tự, biết đâu dấy các site đó cũng bị SQL Injection. Ta có thể tìm như sau

INURL:”PRODUCT_INFO.PHP?ID=”
NẾU CHỈ MUỐN TÌM CÁC SITE Ở VIỆT NAM THÌ CÓ THỂ THÊM VÀO NHƯ SAU
INURL:”PRODUCT_INFO.PHP?ID=” SITE:VN

Ngoài ra còn rất nhiều kiểu tìm khác:

inurl:”sanpham.php?id=”

Cái này hay con gọi là dork đấy ạ

Tham khảo: http://en.wikipedia.org/wiki/Google_hacking#Advanced_operators

C. Một số cách tìm kiếm với google

1. Tìm kiếm từ hoặc cụm từ chính xác: “truy vấn tìm kiếm”
Sử dụng dấu ngoặc kép để tìm kiếm một từ hoặc cụm từ chính xác.
Chỉ sử dụng tính năng này nếu bạn đang tìm kiếm một từ hoặc cụm từ chính xác, vì nếu không bạn sẽ vô tình bỏ qua các kết quả hữu ích.

Ví dụ:

“THỰC PHẨM”

sshot 3

2. Loại trừ một từ: -query
Thêm một dấu gạch ngang (-) trước một từ hoặc trang web để loại trừ tất cả kết quả có chứa từ đó. Điều này đặc biệt hữu ích cho các từ đồng nghĩa như thương hiệu xe Jaguar và jaguar nghĩa là báo đốm trong tiếng Anh.

jaguar tốc độ -xe

sshot 4

3. Tìm kiếm trong trang web hoặc miền: site:truy vấn
Nếu bạn muốn tìm kiếm nhiều kết quả hơn từ một trang web nhất định, hãy bao gồm site: trong truy vấn của bạn. Ví dụ: bạn có thể tìm tất cả đề cập về “olympic” trên trang web Vietnamnet như sau:

olympic site:vietnamnet.vn

sshot 5

4. Tìm kiếm các trang liên kết tới một URL: link:truy vấn
Bằng cách sử dụng toán tử link: , bạn có thể tìm các trang liên kết tới một trang nhất định. Ví dụ: bạn có thể tìm kiếm các trang liên kết tới google.com.vn.

LINK:GOOGLE.COM.VN

5. Tìm kiếm trang tương tự với một URL: related:truy vấn
Để tìm các trang web tương tự với một URL bạn đã biết, hãy sử dụng toán tử related: . Ví dụ: khi bạn tìm kiếm các trang web liên quan tới báo Vietnamnet, bạn sẽ tìm thấy các trang web tin tức khác mà bạn có thể quan tâm.

related:vietnamnet.vn

Tác giả: QuyLe – VHBGroup


Bình luận

Email của bạn sẽ không được hiển thị công khai.