Image Cover
Avatar

Viblo Security

@security

Báo cáo

Bài viết được ghim

IV. Phân tích và khai thác các lỗ hổng Web cache poisoning

  1. Ví dụ về tìm kiếm unkeyed values

Như ở bài viết trước đã đề cập, việc tìm kiếm các giá trị unkeyed đóng vai trò quan trọng trong tấn công web cache poisoning. Trong bài lab Web cache poisoning with an unkeyed header, chúng ta sẽ sử dụng một extension "đắc lực" trong công cụ Burp Suite để tìm kiếm các giá trị unkeyed.

Quan sát resp...

176
2
0 0

Tất cả bài viết

Thumbnail Image
120
2
0 0
Avatar Viblo Security thg 10 30, 2023 9:00 SA
5 phút đọc

Insecure deserialization vulnerability - Các lỗ hổng Insecure deserialization (phần 6)

III. Lỗ hổng Deserialization trong ngôn ngữ Java (tiếp)

  1. Khai thác lỗ hổng Deserialization trong Java với custom gadget - Ví dụ 1

Với sự phát triển liên tục của ứng dụng, các lỗ hổng cũng thể hiện ngày càng đa dạng, dẫn đến những payload được xây dựng sẵn như ysoserial có thể không hiệu quả trong nhiều trường hợp. Khi đó chúng ta cần dựa vào luồng hoạt động của từng chương trình cụ thể để t...

Thumbnail Image
215
3
0 0
Avatar Viblo Security thg 10 30, 2023 8:00 SA
9 phút đọc

Insecure deserialization vulnerability - Các lỗ hổng Insecure deserialization (phần 5)

III. Lỗ hổng Deserialization trong ngôn ngữ Java (tiếp)

  1. Gadget chains

Gadget chains là một chuỗi các đối tượng Java được sử dụng để thực hiện một hành động bất hợp pháp. Các đối tượng trong chuỗi gadget có thể kích hoạt các phương thức hoặc các lớp để thực hiện một hành động không mong muốn, chẳng hạn như việc thực thi mã độc.

Ví dụ, một gadget chain có thể bao gồm các đối tượng Serializa...

Thumbnail Image
215
3
0 0
Avatar Viblo Security thg 10 27, 2023 9:00 SA
6 phút đọc

Insecure deserialization vulnerability - Các lỗ hổng Insecure deserialization (phần 4)

II. Lỗ hổng deserialization trong ngôn ngữ PHP (tiếp)

  1. Vấn đề deserialization trong session

Mỗi khi người dùng truy cập một ứng dụng sẽ được coi là một phiên và tạo ra một giá trị session (thường được đặt trong cookie). Về phía server, dữ liệu session này được lưu trữ trong một biến toàn cục $_SESSION. Đối với các yêu cầu (request) liên tiếp từ cùng một khách hàng, server cần quan tâm đến c...

Thumbnail Image
147
4
0 0
Avatar Viblo Security thg 10 27, 2023 8:00 SA
5 phút đọc

Insecure deserialization vulnerability - Các lỗ hổng Insecure deserialization (phần 3)

II. Lỗ hổng deserialization trong ngôn ngữ PHP (tiếp)

  1. Khai thác lỗ hổng deserialization với các magic methods trong PHP - Ví dụ 1

Ở phần trước chúng ta đã tìm hiểu về khái niệm, công dụng của một số magic methods trong PHP. Để tận dụng được chúng đòi hỏi kẻ tấn công cần hiểu về luồng hoạt động của mã nguồn ứng dụng, thêm phần tư duy nhạy bén mới có thể kết hợp khéo léo từng thành phần meth...

Thumbnail Image
217
2
0 0
Avatar Viblo Security thg 10 25, 2023 9:00 SA
3 phút đọc

Insecure deserialization vulnerability - Các lỗ hổng Insecure deserialization (phần 2)

II. Lỗ hổng deserialization trong ngôn ngữ PHP

  1. Hàm serialize() và unserialize()

Trong ngôn ngữ PHP sử dụng hàm serialize() thực hiện serialize đối tượng. Xem ví dụ sau:

<?php class Person { public $name = "Tom"; private $age = 18; protected $sex = "male"; public function hello() { echo "hello"; } } $example = new Person(); ...
Thumbnail Image
500
2
0 0
Avatar Viblo Security thg 10 25, 2023 8:00 SA
8 phút đọc

Insecure deserialization vulnerability - Các lỗ hổng Insecure deserialization (phần 1)

I. Đặt vấn đề

Trong quá trình học các loại ngôn ngữ lập trình chắc hẳn các bạn đều đã được biết tới khái niệm Serialization và Deserialization. Nếu chỉ nhìn vào khái niệm, thực sự khó để hiểu tác dụng cũng như ý nghĩa của các kỹ thuật này. Vậy thì qua bài viết này chúng ta hãy cùng nhìn nhận, tiếp cận với một góc độ khác để hiểu rõ nguyên nhân, mục đích các kỹ thuật Serialize và Deserialize đư...

Thumbnail Image
493
2
0 0
Avatar Viblo Security thg 9 6, 2023 8:00 SA
5 phút đọc

Server-side template injection vulnerabilities (SSTI) - Các lỗ hổng SSTI (phần 3)

IV. Kỹ thuật bypass filter qua một số challenge CTF

  1. Một số kỹ thuật bypass filter

Bài viết này chủ yếu tập trung vào các kỹ thuật bypass filter trong các challenge CTF.

Sử dụng request.args

request.args là một đối tượng trong framework Flask của Python, chứa tất cả các đối số được truyền từ URL vào ứng dụng Flask. Chúng ta có thể sử dụng đối tượng này bypass một số từ khóa bị filter. Ví ...

Thumbnail Image
420
3
0 0
Avatar Viblo Security thg 9 5, 2023 8:00 SA
6 phút đọc

Server-side template injection vulnerabilities (SSTI) - Các lỗ hổng SSTI (phần 2)

II. SSTI trong các template và cách ngăn chặn (tiếp)

  1. Template Twig trong PHP

Twig là một template engine cho PHP, được thiết kế để phân tách logic xử lý từ giao diện người dùng của ứng dụng. Twig cung cấp các cú pháp dễ đọc và dễ viết để tạo ra các template dynamic trong ứng dụng, cho phép tạo ra các trang web tương tác với người dùng một cách dễ dàng và linh hoạt hơn. Xét ví dụ như sau: ...

Thumbnail Image
924
2
0 0
Avatar Viblo Security thg 8 31, 2023 8:00 SA
5 phút đọc

Server-side template injection vulnerabilities (SSTI) - Các lỗ hổng SSTI (phần 1)

I. Đặt vấn đề

  1. Bối cảnh

Theo thời gian và nhu cầu, các dữ liệu hiển thị trên trang web không ngừng thay đổi. Ba yếu tố cơ bản nhất tạo nên một trang web là HTML, CSS, Javascript. Để thêm, sửa, xóa chức năng, dữ liệu, thay đổi bố cục giao diện dẫn đến lập trình viên cần chỉnh sửa toàn bộ source code - tiêu tốn tài nguyên, thời gian. Bởi vậy kỹ thuật template ra đời. Cách thức hoạt động cơ bả...

Thumbnail Image
175
4
0 0
Avatar Viblo Security thg 8 19, 2023 8:00 SA
5 phút đọc

Cross-site request forgery vulnerabilities (CSRF) - Các lỗ hổng CSRF (phần 4)

V. Phân tích, khai thác và ngăn chặn lỗ hổng CSRF với header Referer

  1. Header Referer - ưu, nhược điểm

Trong các HTTP header có một header Referer ghi lại địa chỉ (địa chỉ nguồn) ngay trước khi browser truy cập tới địa chỉ hiện tại (địa chỉ đích). Thông thường, địa chỉ trước khi truy cập tới một chức năng nằm trong miền domain con của ứng dụng.

Ví dụ browser truy cập tới http://bank.example...

Thumbnail Image
281
3
0 0
Avatar Viblo Security thg 8 18, 2023 8:00 SA
7 phút đọc

Cross-site request forgery vulnerabilities (CSRF) - Các lỗ hổng CSRF (phần 3)

III. Phân tích, khai thác và ngăn chặn lỗ hổng CSRF với anti-CSRF token (tiếp)

  1. Tấn công CSRF khi token không liên kết duy nhất với tài khoản

Về nguyên tắc, giá trị tham số CSRF token cần mang tính duy nhất và liên kết duy nhất với tài khoản. Một số chức năng thực tế có thể vi phạm nguyên tắc này, chẳng hạn, server lưu trữ session toàn bộ người dùng trong database để dễ quản lý (hoặc mục đí...

Thumbnail Image
361
2
0 0
Avatar Viblo Security thg 8 16, 2023 8:00 SA
6 phút đọc

Cross-site request forgery vulnerabilities (CSRF) - Các lỗ hổng CSRF (phần 2)

III. Phân tích, khai thác và ngăn chặn lỗ hổng CSRF với anti-CSRF token

  1. Tạo payload tấn công CSRF

Chúng ta có thể tạo thủ công payload tấn công CSRF là một HTML form, kết hợp javascript tự động submit. Tuy nhiên, với các bạn sử dụng công cụ Burp Suite Professional có thể tận dụng trình tạo CSRF PoC tự động được tích hợp sẵn. Chúng ta cùng phân tích bài lab CSRF vulnerability with no defens...

Thumbnail Image
433
2
0 0
Avatar Viblo Security thg 8 14, 2023 11:00 SA
4 phút đọc

Cross-site request forgery vulnerabilities (CSRF) - Các lỗ hổng CSRF (phần 1)

I. Đặt vấn đề

  1. Khái niệm lỗ hổng Cross-site request forgery (CSRF)

Lỗ hổng CSRF (Cross-site request forgery) còn được biết tới với tên One Click Attack hoặc Session Riding. Lỗ hổng cho phép kẻ tấn công đánh lừa browser của nạn nhân truy cập tới một endpoint (tại đây trang web đã xác thực danh tính nạn nhân) thực hiện các thao tác với mục đích xấu như: thay đổi địa chỉ email, mua bán sản phẩ...

Thumbnail Image
249
2
0 0
Avatar Viblo Security thg 8 7, 2023 8:00 SA
4 phút đọc

XSS vulnerabilities - Lỗ hổng XSS (Phần 6)

V. Khai thác các lỗ hổng XSS (tiếp)

  1. Khai thác XSS đánh cắp mật khẩu tự động điền (autofill)

Có phải các bạn đã từng gặp tình huống sau khi đăng nhập tài khoản ở một trang web nào đó và trình duyệt đã gợi ý việc lưu trữ mật khẩu?

Tính năng lưu trữ mật khẩu không chỉ giúp ích cho chúng ta tìm lại mật khẩu trong trường hợp bị quên sau thời gian dài, mà còn giúp chúng ta tự động điền (autofil...

Thumbnail Image
255
1
0 0
Avatar Viblo Security thg 8 6, 2023 8:00 SA
6 phút đọc

XSS vulnerabilities - Lỗ hổng XSS (Phần 5)

V. Khai thác các lỗ hổng XSS

  1. Khai thác XSS đánh cắp cookies người dùng

Việc đánh cắp cookies nạn nhân qua lỗ hổng XSS thường được kẻ tấn công sử dụng phổ biến. Với các ứng dụng web sử dụng cookies để duy trì phiên đăng nhập người dùng, kẻ tấn công có thể lợi dụng lỗ hổng XSS nhằm đánh cắp cookies nạn nhân gửi đến domain do họ sở hữu. Từ đó thay thế giá trị cookies nhằm mạo danh nạn nhân. T...

Thumbnail Image
413
3
0 0
Avatar Viblo Security thg 8 5, 2023 8:00 SA
7 phút đọc

XSS vulnerabilities - Lỗ hổng XSS (Phần 4)

IV. Lỗ hổng XSS với CSP (Content security policy)

  1. Content Security Policy (CSP) là gì?

Content Security Policy (CSP) là một tính năng bảo mật web cho phép người quản trị trang web định cấu hình các nguồn tài nguyên cho phép tải và sử dụng trên trang web đó. Điều này có thể giúp ngăn chặn các cuộc tấn công XSS bằng cách không cho phép tài nguyên không đáng tin cậy được tải và sử dụng trên t...

Thumbnail Image
436
4
0 0
Avatar Viblo Security thg 8 4, 2023 8:00 SA
7 phút đọc

XSS vulnerabilities - Lỗ hổng XSS (Phần 3)

II. Phân tích, phòng chống các lỗ hổng Reflected XSS và Stored XSS (tiếp)

Ở phần trước, hàm htmlspecialchars() đã bảo vệ trang web trước các ký tự nhạy cảm trong lỗ hổng XSS như <, >, ", ... Nhưng liệu nó đã thực sự an toàn?

Xét tình huống một trang web cho phép người dùng để lại tên tác giả, lời chúc cùng link contact được gán trong tên tác giả. Mã nguồn như sau:

Trang web đã sử dụng hàm ht...

Thumbnail Image
469
2
0 0
Avatar Viblo Security thg 8 3, 2023 8:00 SA
1 phút đọc

XSS vulnerabilities - Lỗ hổng XSS (Phần 2)

II. Phân tích, phòng chống các lỗ hổng Reflected XSS và Stored XSS (tiếp)

Như chúng ta thấy lỗ hổng xảy ra do kẻ tấn công có thể inject mã độc javascript, nếu thực sự không cần thiết, chúng ta có thể kiểm tra và block các dữ liệu nhập từ người dùng chứa các tags và attributes javascript độc hại. Ý tưởng là có thể tạo ra một blacklist các tags và attributes. Ví dụ:

<!DOCTYPE html>

l>

<body>

<...

Thumbnail Image
712
4
1 0
Avatar Viblo Security thg 8 2, 2023 7:36 SA
4 phút đọc

XSS vulnerabilities - Lỗ hổng XSS (Phần 1)

I. Đặt vấn đề

  1. Các lỗ hổng Client-side

Trải qua hành trình dài với các lỗ hổng Server-side, từ chủ đề này trở đi Viblo sẽ cùng các bạn khám phá và phân tích các lỗ hổng Client-side. Khác với các lỗ hổng server-side xuất hiện trong phần mềm hoặc hệ thống máy chủ, lỗ hổng Client-side thường xảy ra tại chính trình duyệt của người dùng dẫn đến kẻ tấn công có thể tiếp cận, truy cập dữ liệu không...

Thumbnail Image
410
1
1 0
Avatar Viblo Security thg 3 28, 2023 3:44 SA
6 phút đọc

XXE injection vulnerabilities - Lỗ hổng XML (Phần 6)

II. Phân tích và khai thác các lỗ hổng XXE injection (tiếp)

  1. Tấn công XInclude khai thác lỗ hổng XXE

Một số trang web không trực tiếp nhận dữ liệu XML từ người dùng, mà nhúng các dữ liệu người dùng vào document XML. Điều này khiến kẻ tấn công không thể chỉnh sửa payload XML theo mong muốn.

Ví dụ khi dữ liệu do người dùng gửi được hệ thống kết hợp vào một SOAP backend request, sau đó được x...

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí