Bài tập 2 – Kiểm tra lỗ hổng ứng dụng web

Xem bài tập 1 : Crack Password web

Trong nhiều trường hợp, các tổ chức sử dụng các ứng dụng có sẵn. Trong các tình huống khác, các tổ chức sử dụng kết hợp các ứng dụng có sẵn và ứng dụng tùy chỉnh. Các bản vá và bản cập nhật cho các ứng dụng sắp ra mắt được tạo và phát hành bởi nhà cung cấp đã tạo ra ứng dụng đó. Bây giờ tổ chức có trách nhiệm cập nhật các ứng dụng sẵn có của họ để vá các ứng dụng này. Trong trường hợp của các ứng dụng tùy chỉnh, đây không phải là kịch bản. Các ứng dụng tùy chỉnh được phát triển để đáp ứng nhu cầu kinh doanh cụ thể. Một tổ chức có thể có một nhóm phát triển nội bộ để tạo ứng dụng hoặc nó có thể được thuê ngoài cho một nhà cung cấp khác. Phát hành bản cập nhật là một vấn đề phổ biến với các ứng dụng tùy chỉnh. Các nhà cung cấp không cung cấp các bản cập nhật trong hầu hết các trường hợp. Vì thế,

Có một số lỗ hổng ứng dụng Web đã biết. Dự án Bảo mật Ứng dụng Web Mở, thường được gọi là OWASP, công bố 10 lỗ hổng ứng dụng Web hàng đầu, được công bố sau vài năm một lần. Dữ liệu này được thu thập từ các tổ chức khác nhau thông qua nghiên cứu sâu rộng, và sau đó 10 ứng dụng Web hàng đầu được chọn. Hãy nhớ rằng – có hàng trăm lỗ hổng ứng dụng Web, và do đó, khi thực hiện một cuộc tấn công đạo đức, bạn có thể tập trung vào những lỗ hổng chính nhưng đừng bỏ qua để kiểm tra các lỗ hổng khác. 10 lỗ hổng ứng dụng web hàng đầu năm 2017 do OWASP phát hành là:

  • A1: 2017 – Tiêm
  • A2: 2017 – Xác thực bị hỏng
  • A3: 2017 – Phơi nhiễm dữ liệu nhạy cảm
  • A4: 2017 – Các thực thể bên ngoài XML (XXE)
  • A5: 2017 – Kiểm soát truy cập bị hỏng
  • A6: 2017 – Cấu hình sai bảo mật
  • A7: 2017 – Kịch bản trên nhiều trang web (XSS)
  • A8: 2017 – Hủy đăng ký không an toàn
  • A9: 2017 – Sử dụng các thành phần có lỗ hổng đã biết
  • A10: 2017 – Ghi nhật ký & Giám sát không đầy đủ

Mô-đun này sẽ bao gồm một số lỗ hổng bảo mật mà bạn có thể tìm thấy và khai thác.Lưu ý: Trong mô-đun này, bạn sẽ sử dụng một ứng dụng Web có tên bWAPP, được thiết kế với hơn 200 lỗ hổng. Việc khai thác một ứng dụng Web trực tiếp trên Internet là không hợp pháp và do đó, bạn sẽ sử dụng ứng dụng Web này để học nghệ thuật khai thác một ứng dụng Web. Nó sẽ không thể bao phủ tất cả các loại lỗ hổng do thời gian ngắn trong môi trường phòng thí nghiệm.

Trong bài tập này, bạn sẽ tìm hiểu về cách tìm và khai thác Lỗ hổng của ứng dụng Web.

Kết quả học tập

Sau khi hoàn thành bài tập này, bạn sẽ có thể:

  • Thực hiện các cuộc tấn công xác thực bị hỏng
  • Xem ID phiên trong URL
  • Tiến hành tấn công tiêm lệnh hệ điều hành
  • Thực hiện phía máy chủ bao gồm tấn công tiêm (SSI)
  • Thực hiện tấn công kịch bản chéo trang web
  • Thực hiện Cross-site Scripting (XSS) – Reflected (HREF) Attack

Thiết bị của bạn

Bạn sẽ sử dụng các thiết bị sau trong phòng thí nghiệm này. Vui lòng bật nguồn này ngay bây giờ.

  • PLABDC01 – (Windows Server 2019 – Máy chủ miền)
  • PLABWIN10 – (Windows 10 – Máy trạm)
  • PLABKALI01 – (Kali 2019.2 – Máy trạm Linux Kali)
Ảnh chụp màn hình Practice Labs.

Nhiệm vụ 1 – Thực hiện các cuộc tấn công xác thực bị hỏng

Xác thực là một quá trình xác nhận danh tính của người dùng bằng tên người dùng và mật khẩu. Danh tính của người dùng được xác thực bởi máy chủ hoặc ứng dụng Web. Trong kịch bản ứng dụng Web, quy trình xác thực như sau:

  • Trên biểu mẫu đăng nhập của một ứng dụng Web, người dùng nhập thông tin đăng nhập dưới dạng tên người dùng và mật khẩu.
  • Sau khi người dùng gửi thông tin đăng nhập của người dùng, chúng sẽ được gửi đến ứng dụng Web, nơi thông tin đăng nhập của người dùng được xác minh cho người dùng, sau đó một phiên được tạo và lưu trữ trong cơ sở dữ liệu.
  • Một cookie được gửi đến hệ thống của người dùng.
  • Khi người dùng thực hiện một yêu cầu tiếp theo, ID phiên được xác minh với ID được lưu trữ trong cơ sở dữ liệu. Trình duyệt Web ở máy khách lưu trữ và gửi mã thông báo dưới dạng cookie đến máy chủ. Nếu cả hai giá trị ID phiên khớp nhau, yêu cầu của người dùng sẽ được xử lý. Tuy nhiên, nếu các giá trị không khớp, thì yêu cầu sẽ không được xử lý thêm.
  • Sau khi thực hiện các tác vụ nhất định, khi người dùng đăng xuất khỏi ứng dụng Web, từ máy khách và máy chủ, phiên này sẽ bị hủy.

Trong nhiệm vụ này, bạn sẽ học cách thực hiện các cuộc tấn công xác thực bị hỏng. Để thực hiện việc này, hãy thực hiện các bước sau:

Bước 1

Đảm bảo bạn đã bật nguồn cho tất cả các thiết bị được liệt kê trong phần giới thiệu và kết nối với PLABWIN10 . Màn hình nền sẽ được hiển thị.

Hình 2.1 Ảnh chụp màn hình PLABWIN10
Hình 2.1 Ảnh chụp màn hình PLABWIN10: Hiển thị màn hình nền của PLABWIN10.

Bước 2

Trong hộp văn bản Nhập vào đây để tìm kiếm , hãy nhập nội dung sau:

Internet Explorer

Từ kết quả tìm kiếm, chọn Internet Explorer.

Hình 2.2 Ảnh chụp màn hình PLABWIN10
Hình 2.2 Ảnh chụp màn hình PLABWIN10: Chọn Internet Explorer từ kết quả tìm kiếm.

Bước 3

Các trình duyệt Internet Explorer cửa sổ được hiển thị. Trong thanh địa chỉ, hãy nhập URL sau:

http://192.168.0.10/bWAPP

Nhấn Enter .

Hình 2.3 Ảnh chụp màn hình PLABWIN10
Hình 2.3 Ảnh chụp màn hình PLABWIN10: Nhập URL cho ứng dụng bWAPP vào thanh địa chỉ.

Bước 4

Trang đăng nhập của ứng dụng Web bWAPP được hiển thị. Trong hộp văn bản Đăng nhập , hãy nhập tên người dùng sau:

bee

Trong hộp văn bản Mật khẩu , hãy nhập mật khẩu sau:

bug

Nhấp vào Đăng nhập .

Hình 2.4 Ảnh chụp màn hình PLABWIN10
Hình 2.4 Ảnh chụp màn hình PLABWIN10: Nhập thông tin đăng nhập của người dùng và nhấp vào nút Đăng nhập.

Bước 5

Một thanh thông báo được hiển thị về việc ghi nhớ mật khẩu. Nhấp vào Không cho trang web này .

Hình 2.5 Ảnh chụp màn hình PLABWIN10
Hình 2.5 Ảnh chụp màn hình PLABWIN10: Nhấp vào nút Không dành cho trang web này trên thanh thông báo.

Bước 6

Từ menu thả xuống Chọn lỗi của bạn:, chọn Xác thực bị hỏng – Biểu mẫu đăng nhập không an toàn và nhấp vào Hack .

Hình 2.6 Ảnh chụp màn hình PLABWIN10
Hình 2.6 Ảnh chụp màn hình PLABWIN10: Chọn Xác thực bị hỏng – Biểu mẫu đăng nhập không an toàn và nhấp vào Hack.

Bước 7

Các đăng nhập trang được hiển thị.

Hình 2.7 Ảnh chụp màn hình PLABWIN10
Hình 2.7 Ảnh chụp màn hình PLABWIN10: Hiển thị trang đăng nhập.

Bước 8

Nhiều lần, các nhà phát triển mã hóa thông tin đăng nhập trong biểu mẫu đăng nhập. Nó là khá dễ dàng để trích xuất thông tin đăng nhập. Để thực hiện việc này, hãy nhấp chuột phải vào bất kỳ đâu trên biểu mẫu đăng nhập và chọn Xem nguồn .

Hình 2.8 Ảnh chụp màn hình PLABWIN10
Hình 2.8 Ảnh chụp màn hình PLABWIN10: Nhấp chuột phải vào Trang web và chọn Xem nguồn.

Bước 9

Một Debugger cửa sổ mở trong phần dưới cùng của trang web và hiển thị mã nguồn của trang đăng nhập. Xem lại mã từ dòng 59 đến 63 . Chú ý tên người dùng và mật khẩu. Nó hiển thị tên đăng nhập là tonystark và mật khẩu là tôi là Người Sắt .

Hình 2.9 Ảnh chụp màn hình PLABWIN10
Hình 2.9 Ảnh chụp màn hình PLABWIN10: Hiển thị tên người dùng và mật khẩu trong nguồn.

Bước 10

Đóng cửa sổ Trình gỡ lỗi .

Hình 2.10 Ảnh chụp màn hình PLABWIN10
Hình 2.10 Ảnh chụp màn hình PLABWIN10: Hiển thị mật khẩu được mã hóa cứng trong mã.

Bước 11

Hãy thử một loại Xác thực bị hỏng khác . Từ menu thả xuống Chọn lỗi của bạn:, chọn Quản lý phiên – Cổng quản trị và nhấp vào Hack .

Hình 2.11 Ảnh chụp màn hình PLABWIN10
Hình 2.11 Ảnh chụp màn hình PLABWIN10: Chọn Quản lý phiên – Cổng quản trị và nhấp vào Hack.

Bước 12

Các phiên Mgmt. – Trang web Cổng thông tin quản trị hiện đã được tải.

Hình 2.12 Ảnh chụp màn hình PLABWIN10
Hình 2.12 Ảnh chụp màn hình của PLABWIN10: Hiển thị phiên Mgmt. – Trang web Cổng thông tin hành chính.

Bước 13

Nhấp vào thanh địa chỉ và để ý phần cuối cùng của URL. Nó đang đề cập đến admin = 0 , có nghĩa là một ID phiên đang được chuyển vào chuỗi truy vấn.

Hình 2.13 Ảnh chụp màn hình PLABWIN10
Hình 2.13 Ảnh chụp màn hình PLABWIN10: Hiển thị admin = 0 làm ID phiên trong URL

Bước 14

Thay đổi admin = 0 thành admin = 1 và nhấn Enter .

Hình 2.14 Ảnh chụp màn hình PLABWIN10
Hình 2.14 Ảnh chụp màn hình PLABWIN10: Thay đổi ID phiên trong URL.

Bước 15

Lưu ý kết quả của thay đổi mà bạn đã thực hiện trong URL. Trang web hiện hiển thị thông báo rằng bạn đã mở khóa trang bằng thao tác URL.

Hình 2.15 Ảnh chụp màn hình PLABWIN10
Hình 2.15 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra của việc thay đổi ID phiên.

Bước 16

Quản lý đăng xuất là một trong những lỗ hổng phổ biến trong các ứng dụng Web. Ngay cả khi người dùng đăng xuất, phiên người dùng vẫn tồn tại. Một trong những phương pháp phổ biến là nhấp vào nút Quay lại trên trình duyệt Web để quay lại cùng một phiên sau khi đăng xuất.

Hãy thực hiện một cuộc tấn công quản lý đăng xuất trên ứng dụng Web này. Từ menu thả xuống Chọn lỗi của bạn , chọn Xác thực bị hỏng – Quản lý đăng xuất và nhấp vào Hack .

Hình 2.16 Ảnh chụp màn hình PLABWIN10
Hình 2.16 Ảnh chụp màn hình PLABWIN10: Chọn Xác thực bị hỏng – Quản lý đăng xuất và nhấp vào Hack.

Bước 17

Xác thực bị hỏng – Trang web quản lý đăng xuất được tải. Nhấp chuột phải vào đây trong câu lệnh Nhấp vào đây để đăng xuất và chọn Mở trong tab mới .

Hình 2.17 Ảnh chụp màn hình PLABWIN10
Hình 2.17 Ảnh chụp màn hình PLABWIN10: Mở tab mới bằng cách nhấp chuột phải vào đây trong câu lệnh đăng xuất.

Bước 18

Các bWAPP – Đăng nhập tab mở ra. Nhấp vào tab bWAPP – Đăng nhập . Thông báo rằng bạn đã đăng xuất thành công. Đóng tab này.

Hình 2.18 Ảnh chụp màn hình PLABWIN10
Hình 2.18 Ảnh chụp màn hình PLABWIN10: Hiển thị trang Đăng nhập trên tab thứ hai.

Bước 19

Lưu ý rằng bạn đã quay lại tab gốc đầu tiên. Bạn vẫn đang đăng nhập trong tab này.

Nhấp vào Lỗi .

Hình 2.19 Ảnh chụp màn hình PLABWIN10
Hình 2.19 Ảnh chụp màn hình PLABWIN10: Nhấp vào Bugs trong thanh menu trên tab đầu tiên.

Bước 20

Các Portal Trang web được nạp thành công. Điều này có nghĩa là bạn vẫn có thể làm việc trong ứng dụng Web.

Hình 2.20 Ảnh chụp màn hình PLABWIN10
Hình 2.20 Ảnh chụp màn hình PLABWIN10: Hiển thị Trang web Cổng thông tin.

Giữ cửa sổ Internet Explorer mở.

Nhiệm vụ 2 – Xem ID phiên trong URL

Một lỗ hổng chính khác với ứng dụng Web là sử dụng ID phiên trong URL. Nếu một ID phiên được gửi trong URL, kẻ tấn công có thể lấy phiên hiện tại, cụ thể là nếu ID phiên được gửi dưới dạng văn bản rõ ràng. Kẻ tấn công có thể nghe trộm phiên và bắt phiên hiện tại để mạo danh người dùng. ID phiên phải được gửi đến máy chủ Web trong phần nội dung của yêu cầu. Một kết nối được mã hóa phải được sử dụng để gửi yêu cầu để kẻ tấn công không thể chặn nó. Trong tác vụ này, bạn sẽ học cách xem ID phiên trong một URL. Để thực hiện tác vụ này, hãy thực hiện các bước sau:

Bước 1

Đảm bảo bạn đã bật nguồn cho tất cả các thiết bị được liệt kê trong phần giới thiệu và kết nối với PLABWIN10 . Các trình duyệt Internet Explorer cửa sổ nên mở với bWAPP ứng dụng Web nạp.Lưu ý: Nếu vì lý do nào đó, bạn đã đóng cửa sổ Internet Explorer hoặc đăng xuất khỏi phiên hiện tại, hãy đảm bảo rằng bạn đăng nhập lại vào ứng dụng Web bWAPP.

Từ menu thả xuống Chọn lỗi của bạn , hãy chọn Quản lý phiên – ID phiên trong URL và nhấp vào Hack .

Hình 2.21 Ảnh chụp màn hình PLABWIN10
Hình 2.21 Ảnh chụp màn hình PLABWIN10: Chọn Quản lý phiên – ID phiên trong URL và nhấp vào Hack.

Bước 2

Các phiên Mgmt. – ID phiên trong Trang web URL được tải. Hãy chú ý đến phần cuối cùng của URL – có một ID phiên, ở dạng văn bản rõ ràng. Điều này có thể dẫn đến một cuộc tấn công nghe trộm của kẻ tấn công.

Hình 2.22 Ảnh chụp màn hình PLABWIN10
Hình 2.22 Ảnh chụp màn hình PLABWIN10: Hiển thị ID phiên trong URL.

Giữ cửa sổ Internet Explorer mở.

Nhiệm vụ 3 – Tiến hành tấn công hệ điều hành Command Injection

Chèn lệnh là một kiểu tấn công trong đó kẻ tấn công thực hiện các lệnh tùy ý thông qua một ứng dụng dễ bị tấn công đối với hệ điều hành chủ. Khi một ứng dụng cho phép truyền dữ liệu không an toàn do người dùng cung cấp, chẳng hạn như biểu mẫu, cookie, tiêu đề HTTP đến hệ thống máy chủ, kẻ tấn công có thể lợi dụng lỗ hổng này để truy cập vào hệ thống máy chủ cơ bản. Các cuộc tấn công tiêm lệnh diễn ra bởi vì các trường đầu vào chấp nhận dữ liệu tùy ý mà không có đủ xác nhận đầu vào.

Trong nhiệm vụ này, bạn sẽ học cách tiến hành một cuộc tấn công tiêm lệnh hệ điều hành. Để thực hiện việc này, hãy thực hiện bước sau:

Bước 1

Đảm bảo bạn đã bật nguồn cho tất cả các thiết bị được liệt kê trong phần giới thiệu và kết nối với PLABWIN10 . Cửa sổ Internet Explorer sẽ mở.

Từ menu thả xuống Chọn lỗi của bạn , chọn Hệ điều hành Command Injection và nhấp vào Hack .

Hình 2.23 Ảnh chụp màn hình PLABWIN10
Hình 2.23 Ảnh chụp màn hình PLABWIN10: Chọn OS Command Injection và nhấp vào Hack.

Bước 2

Các tiêm OS lệnh trang web được hiển thị. Lưu ý rằng trong hộp văn bản Tra cứu DNS, văn bản sau được nhập theo mặc định:

www.nsa.gov

Nhấp vào Tra cứu .

Hình 2.24 Ảnh chụp màn hình PLABWIN10
Hình 2.24 Ảnh chụp màn hình PLABWIN10: Nhấp vào Tra cứu trên trang web Hệ điều hành Command Injection.

Bước 3

Chú ý đầu ra. Tường lửa chặn truy vấn DNS đi ra khỏi môi trường phòng thí nghiệm và do đó, bạn gặp phải lỗi hết thời gian kết nối.

Hình 2.25 Ảnh chụp màn hình PLABWIN10
Hình 2.25 Ảnh chụp màn hình PLABWIN10: Hiển thị lỗi dưới dạng đầu ra của Tra cứu.

Bước 4

Thay thế văn bản hiện có trong hộp văn bản tra cứu DNS và nhập như sau:

|hostname

Nhấp vào Tra cứu .

Hình 2.26 Ảnh chụp màn hình PLABWIN10
Hình 2.26 Ảnh chụp màn hình PLABWIN10: Nhập | hostname và nhấp vào Tra cứu.

Bước 5

Đầu ra bây giờ được hiển thị.

Trong thanh thông báo liên quan đến Tự động điền để ghi nhớ các mục nhập Web, hãy nhấp vào Không .

Hình 2.27 Ảnh chụp màn hình PLABWIN10
Hình 2.27 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra của lệnh | hostname.

Bước 6

Thay thế văn bản hiện có trong hộp văn bản tra cứu DNS và nhập như sau:

|net user

Nhấp vào Tra cứu .

Hình 2.28 Ảnh chụp màn hình PLABWIN10
Hình 2.28 Ảnh chụp màn hình PLABWIN10: Nhập | net user và nhấp vào Lookup.

Bước 7

Đầu ra bây giờ được hiển thị. Có hai người dùng, không ai cả và ong .

Hình 2.29 Ảnh chụp màn hình PLABWIN10
Hình 2.29 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra của lệnh | net user.

Bước 8

Chuyển sang PLABKALI01 . Gọi Firefox từ ngăn bên trái và tải Trang web sau:

http://192.168.0.10/bWAPP

Trên Trang web Đăng nhập , hãy sử dụng thông tin đăng nhập sau:

Đăng nhập:

bee

Mật khẩu:bọ cánh cứng

Nhấp vào Đăng nhập .Lưu ý: Nếu bạn nhận được lời nhắc lưu thông tin đăng nhập, hãy nhấp vào Không lưu .

Hình 2.30 Ảnh chụp màn hình PLABKALI01
Hình 2.30 Ảnh chụp màn hình PLABKALI01: Nhập thông tin đăng nhập của người dùng của trang Đăng nhập.

Bước 9

Từ menu thả xuống Chọn lỗi của bạn , chọn Hệ điều hành Command Injection và nhấp vào Hack .

Hình 2.31 Ảnh chụp màn hình PLABKALI01
Hình 2.31 Ảnh chụp màn hình PLABKALI01: Chọn OS Command Injection và nhấp vào Hack.

Bước 10

Các tiêm OS lệnh Trang web hiện đang được nạp.

Thay thế văn bản hiện có trong hộp văn bản tra cứu DNS và nhập như sau:

|whoami

Nhấp vào Tra cứu .

Hình 2.32 Ảnh chụp màn hình PLABKALI01
Hình 2.32 Ảnh chụp màn hình PLABKALI01: Nhập | whoami và nhấp vào Tra cứu.

Bước 11

Đầu ra của lệnh được hiển thị.

Hình 2.33 Ảnh chụp màn hình PLABKALI01
Hình 2.33 Ảnh chụp màn hình PLABKALI01: Hiển thị đầu ra của | whoami.

Bước 12

Thay thế văn bản hiện có trong hộp văn bản tra cứu DNS và nhập như sau:

|pwd

Nhấp vào Tra cứu .

Hình 2.34 Ảnh chụp màn hình PLABKALI01
Hình 2.34 Ảnh chụp màn hình PLABKALI01: Nhập | pwd và nhấp vào Tra cứu.

Bước 13

Đầu ra của lệnh được hiển thị. Nó hiển thị thư mục cho ứng dụng Web hiện tại.

Hình 2.35 Ảnh chụp màn hình PLABKALI01
Hình 2.35 Ảnh chụp màn hình PLABKALI01: Hiển thị đầu ra của | pwd

Bước 14

Bạn cũng có thể đọc nội dung của tệp bằng cách sử dụng cuộc tấn công tiêm lệnh. Thay thế văn bản hiện có trong hộp văn bản tra cứu DNS và nhập như sau:

|cat /etc/passwd

Nhấp vào Tra cứu .

Hình 2.36 Ảnh chụp màn hình PLABKALI01
Hình 2.36 Ảnh chụp màn hình PLABKALI01: Nhập | cat / etc / passwd và nhấp vào Tra cứu.

Bước 15

Chú ý đầu ra được hiển thị. Nội dung của tệp / etc / passwd được hiển thị.

Hình 2.37 Ảnh chụp màn hình PLABKALI01
Hình 2.37 Ảnh chụp màn hình PLABKALI01: Hiển thị đầu ra của | cat / etc / passwd

Nhiệm vụ 4 – Thực hiện phía máy chủ bao gồm tấn công tiêm (SSI)

Các lệnh SSI được sử dụng trong các ứng dụng Web để cung cấp nội dung động cho các trang HTML. SSI thực thi một tập hợp các hành động đã xác định trước khi Trang web được tải. Do đó, máy chủ Web, nơi lưu trữ ứng dụng Web, phân tích SSI trước khi trang HTML được tải trong trình duyệt Web của người dùng. Các SSI chủ yếu được đưa vào các trường chấp nhận đầu vào. Khi đầu vào trường được gửi, tập lệnh, đã được thêm vào trường đầu vào, sẽ được thực thi. Trong một cuộc tấn công SSI, kẻ tấn công sẽ đưa các đoạn mã độc hại vào các trang HTML. Bằng cách chèn các tập lệnh, kẻ tấn công có thể truy cập vào thông tin nhạy cảm hoặc thậm chí thực hiện các lệnh shell. Các chỉ thị SSI được đưa vào các trường đầu vào và chúng được gửi đến Máy chủ trang web. 

Để thực hiện một cuộc tấn công SSI, hãy thực hiện các bước sau:

Bước 1

Đảm bảo bạn đã bật nguồn cho tất cả các thiết bị được liệt kê trong phần giới thiệu và kết nối với PLABWIN10 . Các trình duyệt Internet Explorer cửa sổ sẽ được mở.

Từ menu thả xuống Chọn lỗi của bạn , chọn Chèn bao gồm (SSI) phía máy chủ và nhấp vào Hack .

Hình 2.38 Ảnh chụp màn hình PLABWIN10
Hình 2.38 Ảnh chụp màn hình PLABWIN10: Chọn Máy chủ bao gồm (SSI) Injection và nhấp vào Hack.

Bước 2

Các Server-Side Includes (SSI) Máy Ép Trang web được tải. Trong hộp văn bản Tên , hãy nhập như sau:

plab

Trong Last name text box, gõ như sau:

user

Nhấp vào Tra cứu .

Hình 2.39 Ảnh chụp màn hình PLABWIN10
Hình 2.39 Ảnh chụp màn hình PLABWIN10: Nhập thông tin đăng nhập của người dùng trên trang Bao gồm phía máy chủ (SSI).

Bước 3

Lưu ý rằng đầu ra được hiển thị với địa chỉ IPv4.

Hình 2.40 Ảnh chụp màn hình PLABWIN10
Hình 2.40 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra và nhấp vào nút Quay lại.

Bước 4

Nhấp vào mũi tên Quay lại để điều hướng trở lại trang trước.

Quay lại Trang web Chèn phía Máy chủ Bao gồm (SSI) , bạn cần chèn thông tin sau vào hộp văn bản Tên :

<script>alert("Hacked")</script>

Trong Last name text box, gõ như sau:

user

Nhấp vào Tra cứu .

Hình 2.41 Ảnh chụp màn hình PLABWIN10
Hình 2.41 Ảnh chụp màn hình PLABWIN10: Nhập tập lệnh vào trường Tên và người dùng trong trường Họ.

Bước 5

Chú ý đầu ra. Tập lệnh được nhúng trong hộp văn bản Tên đã được thực thi thành công.

Bấm OK .

Hình 2.42 Ảnh chụp màn hình PLABWIN10
Hình 2.42 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra của tập lệnh đã nhập dưới dạng dấu nhắc.

Bước 6

Một lần nữa, văn bản trên Trang web được thay đổi thành địa chỉ IPv4. Nhấp vào nút Quay lại trên trình duyệt Web.

Hình 2.43 Ảnh chụp màn hình PLABWIN10
Hình 2.43 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra và nhấp vào nút Quay lại.

Bước 7

Quay lại Trang web Chèn phía Máy chủ Bao gồm (SSI) , bạn cũng có thể tìm nạp cookie từ máy chủ Web. bạn cần chèn phần sau vào hộp văn bản Tên :

<script>alert(document.cookie)</script>

Trong Last name text box, gõ như sau:

user

Nhấp vào Tra cứu .

Hình 2.44 Ảnh chụp màn hình PLABWIN10
Hình 2.44 Ảnh chụp màn hình PLABWIN10: Tìm nạp cookie từ máy chủ Web bằng cách sử dụng tập lệnh trong hộp văn bản Tên.

Bước 8

Chú ý đầu ra. Tập lệnh được nhúng trong hộp văn bản Tên đã được thực thi thành công. Cookie đang được hiển thị trong hộp thoại. Bấm OK .

Hình 2.45 Ảnh chụp màn hình PLABWIN10
Hình 2.45 Ảnh chụp màn hình PLABWIN10: Hiển thị cookie trong hộp thoại.

Bước 9

Một lần nữa, văn bản trên Trang web được thay đổi thành địa chỉ IPv4. Nhấp vào nút Quay lại trên trình duyệt Web.

Hình 2.46 Ảnh chụp màn hình PLABWIN10
Hình 2.46 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra và nhấp vào nút Quay lại.

Bước 10

Quay lại Trang web Chèn phía Máy chủ Bao gồm (SSI) , bạn có thể hiển thị tên tài liệu hiện tại. bạn cần chèn phần sau vào hộp văn bản Tên :

<!--#echo var="DOCUMENT_NAME" -->

Trong Last name text box, gõ như sau:

plab

Nhấp vào Tra cứu .

Hình 2.47 Ảnh chụp màn hình PLABWIN10
Hình 2.47 Ảnh chụp màn hình PLABWIN10: Nhập tập lệnh vào hộp văn bản Tên.

Bước 11

Chú ý đầu ra. Nó hiển thị tên tài liệu hiện tại trước họ, là plab . Nhấp vào nút Quay lại trên cửa sổ trình duyệt Web.

Hình 2.48 Ảnh chụp màn hình PLABWIN10
Hình 2.48 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra và nhấp vào nút Quay lại.

Bước 12

Quay lại Trang web Chèn phía Máy chủ Bao gồm (SSI) , bạn có thể hiển thị đường dẫn ảo và tên tệp. Để thực hiện việc này, bạn cần chèn thông tin sau vào hộp văn bản Tên :

<!--#echo var="DOCUMENT_URI" -->

Trong Last name text box, gõ như sau:

plab

Nhấp vào Tra cứu .

Hình 2.49 Ảnh chụp màn hình PLABWIN10
Hình 2.49 Ảnh chụp màn hình PLABWIN10: Nhập tập lệnh vào hộp văn bản Tên.

Bước 13

Chú ý rằng đầu ra hiển thị đường dẫn ảo và tên tệp. Nhấp vào nút Quay lại trên trình duyệt Web.Lưu ý: Hãy thử lệnh sau: <! – # echo var = “DATE_LOCAL” -> và lưu ý kết quả đầu ra.

Hình 2.50 Ảnh chụp màn hình PLABWIN10
Hình 2.50 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra và nhấp vào nút Quay lại.

Bước 14

Nhấp vào nút Quay lại trên cửa sổ trình duyệt Web.

Bạn sẽ trở lại Trang web Chèn phía Máy chủ Bao gồm (SSI) .

Hình 2.51 Ảnh chụp màn hình PLABWIN10
Hình 2.51 Ảnh chụp màn hình PLABWIN10: Nhấp vào nút Quay lại và sau đó hiển thị trang Chèn phía máy chủ bao gồm (SSI).

Giữ cửa sổ trình duyệt Web mở.

Nhiệm vụ 5 – Thực hiện tấn công mã hóa nhiều trang web

Cross-site scripting (XSS) là một kiểu tấn công trong đó kẻ tấn công đưa các tập lệnh độc hại vào các ứng dụng web dễ bị tấn công, do đó gây ra thiệt hại nghiêm trọng cho các ứng dụng. Tập lệnh độc hại được thực thi trong trình duyệt web của nạn nhân khi nạn nhân truy cập trang bị nhiễm. JavaScript là ngôn ngữ kịch bản phổ biến nhất được sử dụng để phát triển mã độc hại. Có hai loại tấn công kịch bản trên nhiều trang web. Những điều này như sau:

  • XSS được phản ánh
  • XSS được lưu trữ

Một cuộc tấn công XSS được phản ánh còn được gọi là cuộc tấn công XSS không liên tục. Trong kiểu tấn công này, kẻ tấn công gửi mã độc hại dưới dạng một liên kết trong email hoặc đăng nó trên trang web. Nạn nhân nhấp vào liên kết. Tập lệnh độc hại được nhúng trong liên kết sẽ được thực thi và được phản ánh trở lại trên trình duyệt web của nạn nhân. Sau đó, trình duyệt sẽ gửi thông tin cookie về phiên của nạn nhân cho kẻ tấn công. Do đó, một cuộc tấn công XSS được phản ánh xảy ra nếu nạn nhân nhấp vào các liên kết độc hại. Các liên kết độc hại thường được tìm thấy trong phần nhận xét và email không xác định của các trang web kém an toàn.

Một cuộc tấn công XSS được lưu trữ còn được gọi là cuộc tấn công XSS liên tục. Trong kiểu tấn công này, kẻ tấn công sẽ tiêm trực tiếp tập lệnh độc hại vào một ứng dụng web dễ bị tấn công. Tập lệnh độc hại đánh cắp thông tin cookie từ các phiên của nạn nhân và gửi nó cho kẻ tấn công. Do đó, trong cuộc tấn công XSS được lưu trữ, thiệt hại nhiều hơn khi tập lệnh độc hại thực thi mỗi lần truy cập vào ứng dụng web.

Trong tác vụ này, bạn sẽ thực hiện các cuộc tấn công tập lệnh xuyên trang trên ứng dụng bWAPP .

Bước 1

Đảm bảo bạn đã bật nguồn cho tất cả các thiết bị được liệt kê trong phần giới thiệu và kết nối với PLABWIN10 . Các trình duyệt Internet Explorer cửa sổ sẽ được mở.

Để bắt đầu tấn công kịch bản trên nhiều trang web được phản ánh, từ menu thả xuống Chọn lỗi của bạn , hãy nhấp vào Tập lệnh trên nhiều trang web – Đã phản ánh (GET) và nhấp vào Hack .

Hình 2.52 Ảnh chụp màn hình PLABWIN10
Hình 2.52 Ảnh chụp màn hình PLABWIN10: Nhấp vào Cross-site Scripting – Reflected (GET) và nhấp vào Hack.

Bước 2

Trên Trang web XSS – Đã phản ánh (GET) , Trong hộp văn bản Tên , hãy nhập tên sau:

Plab

Trong Last name text box, gõ tên sau đây:

User

Nhấp vào Bắt đầu .

Hình 2.53 Ảnh chụp màn hình PLABWIN10
Hình 2.53 Ảnh chụp màn hình PLABWIN10: Nhập thông tin đăng nhập của người dùng trên trang XSS – Reflected (GET).

Bước 3

Quan sát đầu ra được hiển thị trên thanh địa chỉ.

Đầu vào được chuyển đến máy chủ được phản ánh trong ứng dụng. Điều này cho thấy một điểm vào tốt cho các cuộc tấn công XSS được phản ánh khi phản hồi đang được phản ánh.

Hình 2.54 Ảnh chụp màn hình PLABWIN10
Hình 2.54 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu vào được chuyển đến máy chủ được phản ánh trong ứng dụng.

Bước 4

Trên Trang web XSS – Được phản ánh (GET) , Trong hộp văn bản Tên , hãy nhập mã JavaScript bằng cách nhập như sau:

<script>alert(‘Hacked’)</script>

Trong Last name text box, gõ tên sau đây:

User

Nhấp vào Bắt đầu .Lưu ý: Tập lệnh chứa các thẻ sau : < script>: Thẻ này xác định thời điểm bắt đầu JavaScript, alert: Thẻ này sẽ hiển thị hộp cảnh báo khi thực thi tập lệnh, Bị tấn công: Đây là văn bản được hiển thị trong hộp cảnh báo, </ script >: Thẻ này xác định phần cuối của JavaScript.

Hình 2.55 Ảnh chụp màn hình PLABWIN10
Hình 2.55 Ảnh chụp màn hình PLABWIN10: Nhập mã JavaScript vào hộp văn bản Tên.

Bước 5

Máy chủ xử lý tập lệnh và hiển thị hộp thông báo cảnh báo.

Bấm OK .Lưu ý : Tập lệnh được thực thi và phản hồi lại trong phản hồi của máy chủ, đây là một lỗ hổng. Sử dụng lỗ hổng này trong môi trường thời gian thực, kẻ tấn công có thể đưa các tập lệnh độc hại vào các ứng dụng kém an toàn hơn để lấy cắp cookie, tìm hiểu về vị trí tài liệu, v.v.

Hình 2.56 Ảnh chụp màn hình PLABWIN10
Hình 2.56 Ảnh chụp màn hình PLABWIN10: Hiển thị đầu ra của tập lệnh được đưa vào.

Bước 6

Bạn đã quay lại Trang web XSS – Được phản ánh (GET) . Từ menu thả xuống Chọn lỗi của bạn , hãy chọn Kịch bản trang chéo – Đã lưu trữ (Blog) và nhấp vào Hack .

Hình 2.57 Ảnh chụp màn hình PLABWIN10
Hình 2.57 Ảnh chụp màn hình PLABWIN10: Chọn Cross-Site Scripting – Stored (Blog) và nhấp vào Hack.

Bước 7

Trên Trang web XSS – Đã lưu trữ (Blog) , hãy nhập thông báo sau vào hộp văn bản:

Welcome to the PLAB blog!

Nhấp vào Gửi .

Hình 2.58 Ảnh chụp màn hình PLABWIN10
Hình 2.58 Ảnh chụp màn hình PLABWIN10: Nhập câu lệnh vào hộp văn bản trên trang XSS – Đã lưu trữ (Blog).

Bước 8

Quan sát kết quả hiển thị trên màn hình.

Các giá trị đã nhập được lưu trữ trong cơ sở dữ liệu của ứng dụng và được hiển thị vĩnh viễn trong trang XSS – Đã lưu trữ (Blog) của ứng dụng . Đây có thể là một điểm vào tiềm năng cho các cuộc tấn công XSS được lưu trữ.

Hình 2.59 Ảnh chụp màn hình PLABWIN10
Hình 2.59 Ảnh chụp màn hình PLABWIN10: Hiển thị câu lệnh đã lưu đã được nhập vào hộp văn bản.

Bước 9

Trên Trang web XSS – Đã lưu trữ (Blog) , hãy nhập thông báo sau vào hộp văn bản:

<script>alert(‘Hacked’)</script>

Nhấp vào Gửi .

Hình 2.60 Ảnh chụp màn hình PLABWIN10
Hình 2.60 Ảnh chụp màn hình PLABWIN10: Nhập tập lệnh vào hộp văn bản trên trang XSS – Đã lưu trữ (Blog).

Bước 10

Máy chủ xử lý tập lệnh và hiển thị hộp thông báo cảnh báo.

Bấm OK .

Hình 2.61 Ảnh chụp màn hình PLABWIN10
Hình 2.61 Ảnh chụp màn hình PLABWIN10: Hiển thị lời nhắc dưới dạng đầu ra của tập lệnh đã nhập.

Bước 11

Bạn đã trở lại Trang web XSS – Được lưu trữ (Blog) . Lưu ý rằng có một mục thứ hai trong danh sách, nhưng nó trống. JavaScript đã nhập sẽ được phản ánh trong phần XSS được lưu trữ của trang web. Không giống như XSS được phản ánh, XSS được lưu trữ là vĩnh viễn vì các giá trị đã nhập được lưu trữ trong cơ sở dữ liệu của ứng dụng.

Do đó, những kẻ tấn công có thể sử dụng lỗ hổng này để phá hoại bất kỳ trang web nào bằng cách hiển thị hình ảnh sử dụng XSS được lưu trữ, đánh cắp cookie của người dùng, v.v.

Hình 2.62 Ảnh chụp màn hình PLABWIN10
Hình 2.62 Ảnh chụp màn hình PLABWIN10: Hiển thị các mục nhập trong hộp danh sách.

Bước 12

Một lần nữa, chọn Cross-Site Scripting – Stored (Blog) từ menu thả xuống Chọn lỗi của bạn và nhấp vào Hack .

Hình 2.63 Ảnh chụp màn hình PLABWIN10
Hình 2.63 Ảnh chụp màn hình PLABWIN10: Chọn Cross-Site Scripting – Stored (Blog) và nhấp vào Hack.

Bước 13

Tập lệnh XSS được lưu trữ mà bạn đã sử dụng trên trang này sẽ tự động hiển thị trở lại.

Bấm OK trong hộp thông báo cảnh báo.

Điều này là do JavaScript được đưa vào được lưu trữ trong cơ sở dữ liệu và nó được thực thi mỗi khi bạn điều hướng đến phần XSS được lưu trữ.

Tuy nhiên, trong XSS được phản ánh, điều này không xảy ra vì các giá trị không được lưu trữ trong cơ sở dữ liệu của ứng dụng.

Hình 2.64 Ảnh chụp màn hình PLABWIN10
Hình 2.64 Ảnh chụp màn hình PLABWIN10: Hiển thị lời nhắc Bị tấn công trên trang XSS – Đã lưu trữ (Blog).

Bước 14

Các XSS – lưu trữ (Blog) trang web hiện nay được hiển thị.

Hình 2.65 Ảnh chụp màn hình PLABWIN10
Hình 2.65 Ảnh chụp màn hình PLABWIN10: Hiển thị danh sách các mục nhập trên trang XSS – Đã lưu trữ (Blog).

Giữ cửa sổ Internet Explorer mở.

Nhiệm vụ 6 – Thực hiện Cross-site Scripting (XSS) – Reflected (HREF) Attack

Trong cuộc tấn công Reflected (HREF), kẻ tấn công có thể chèn một tập lệnh độc hại vào chính URL. Sự cố này xảy ra khi một Trang web yêu cầu một chuỗi thông tin, chẳng hạn như tên người dùng và hiển thị nó trong URL. Nếu đầu vào không được làm sạch, kẻ tấn công có thể lợi dụng lỗ hổng này để chạy một tập lệnh độc hại.

Trong nhiệm vụ này, bạn sẽ thực hiện một cuộc tấn công XSS – Reflected (HREF) . Để thực hiện việc này, hãy thực hiện các bước sau:

Bước 1

Đảm bảo bạn đã bật nguồn cho tất cả các thiết bị được liệt kê trong phần giới thiệu và kết nối với PLABWIN10 . Các trình duyệt Internet Explorer cửa sổ sẽ được mở.

Để bắt đầu cuộc tấn công tạo kịch bản trên nhiều trang web được phản ánh, từ menu thả xuống Chọn lỗi của bạn , hãy nhấp vào Tập lệnh trên nhiều trang web – Đã phản ánh (HREF) và nhấp vào Hack .

Hình 2.66 Ảnh chụp màn hình PLABWIN10
Hình 2.66 Ảnh chụp màn hình PLABWIN10: Chọn Kịch bản chéo trang – Phản chiếu (HREF) và nhấp vào nút Hack.

Bước 2

Các XSS – Phản ánh (href) Trang web được hiển thị. Trong hộp văn bản, hãy nhập nội dung sau:

PLAB

Nhấp vào Tiếp tục .

Hình 2.67 Ảnh chụp màn hình PLABWIN10
Hình 2.67 Ảnh chụp màn hình PLABWIN10: Nhập PLAB vào hộp văn bản và nhấp vào Tiếp tục.

Bước 3

Lưu ý rằng tên đã nhập hiện được nhúng trong URL cũng như hiển thị trên Trang web.

Hình 2.68 Ảnh chụp màn hình PLABWIN10
Hình 2.68 Ảnh chụp màn hình PLABWIN10: Hiển thị tên PLAB trong URL và trên Trang web.

Bước 4

Trong URL, thay thế tên PLAB bằng tập lệnh sau:

><script>alert(1)</script><

Nhấn Enter .

Hình 2.69 Ảnh chụp màn hình PLABWIN10
Hình 2.69 Ảnh chụp màn hình PLABWIN10: Thay thế từ PLAB bằng một tập lệnh.

Bước 5

Bạn được điều hướng đến một trang khác. Một cảnh báo được hiển thị với giá trị 1 . Bấm OK .

Hình 2.70 Ảnh chụp màn hình PLABWIN10
Hình 2.70 Ảnh chụp màn hình PLABWIN10: Hiển thị một cảnh báo dưới dạng đầu ra của tập lệnh.

Bước 6

Hộp cảnh báo sẽ tiếp tục hiển thị ngay cả sau khi bạn nhấp vào OK . Bạn cần nhấp vào OK và nhấp nhanh vào nút Quay lại trên cửa sổ trình duyệt Web. Bạn có thể phải thử một vài lần. Các XSS – Phản ánh (href) trang web với bộ phim niêm yết và Xin chào <script> sẽ được hiển thị.

Hình 2.71 Ảnh chụp màn hình PLABWIN10
Hình 2.71 Ảnh chụp màn hình PLABWIN10: Hiển thị trang XSS – Reflected (HREF) với đầu ra của tập lệnh.

1 bình luận cho “CEH vLAB : Hacking Web Applications p2”

Trả lời

Bạn cần phải đăng nhập để gửi bình luận:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Đăng xuất /  Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Đăng xuất /  Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Đăng xuất /  Thay đổi )

Connecting to %s

%d người thích bài này: