Image Cover
Avatar

Viblo Security

@security

Report

Pinned Posts

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...

174
2
0 0

All posts

Thumbnail Image
56
2
1 0
Avatar Viblo Security thg 5 10, 8:00 SA
3 min read

General knowledge in Cryptography - kiến thức tổng quan trong mật mã học (phần 3)

IV. Giới thiệu một số mật mã cổ điển

  1. Mật mã Caesar

Mật mã Caesar là một trong những mật mã cổ điển xuất hiện sớm nhất, được đặt tên theo nhà văn và nhà sử học người La Mã Julius_Caesar - người đã sử dụng nó trong các thư từ bí mật của mình. Mã hóa Caesar còn được biết đến với tên mật mã chuyển vị, biểu thị cho phương thức mã hóa dịch chuyển vị trí chữ cái.

Mật mã Caesar điển hình và thườ...

Thumbnail Image
151
1
1 0
Avatar Viblo Security thg 4 24, 8:00 SA
6 min read

General knowledge in Cryptography - kiến thức tổng quan trong mật mã học (phần 2)

II. Một số kỹ thuật mã hóa cơ bản (tiếp)

  1. Mã hóa Base64

Base64 là một dạng chương trình mã hóa thực hiện mã hóa đối tượng bằng cách sử dụng 64866486 bit, giúp giảm đi một phần không gian lưu trữ tài nguyên.

Để mã hóa một đối tượng sang dạng Base64, chúng ta thực hiện các bước sau:

  • Bước 11: Chuyển đối tượng sang dạng bit.
  • Bước 2626 ký tự.
  • Bước 33: Chuyển từng nhóm tương ứng với một k...
Thumbnail Image
326
3
1 0
Avatar Viblo Security thg 4 12, 9:00 SA
8 min read

General knowledge in Cryptography - kiến thức tổng quan trong mật mã học (phần 1)

I. Mở đầu về chuỗi bài viết Cryptography

  1. Lịch sử hình thành

Mật mã học (Cryptography) là một lĩnh vực nghiên cứu khoa học đóng vai trò quan trọng và hấp dẫn trong ngành khoa học máy tính (Computer Science) và an toàn thông tin (Infomation Security).

Các vấn đề liên quan đến mật mã đã xuất hiện từ hàng ngàn, chục ngàn năm trước, trước khi khái niệm của nó được định nghĩa. Sự hiện hữu đầu t...

Thumbnail Image
545
7
5 0
Avatar Viblo Security thg 3 18, 8:00 SA
7 min read

JSON web tokens (JWT) attack - Tấn công JWT (phần 5)

IV. Algorithm confusion attacks

Algorithm Confusion attacks trong JWT (JSON Web Tokens) là một phương thức tấn công nhắm vào việc lợi dụng sự nhầm lẫn hoặc thiếu sót trong việc xác định thuật toán (algorithm) được sử dụng để ký hoặc xác minh JWT (Tham khảo thêm CVE-2016-5431/CVE-2016-10555). Trước hết, chúng ta sẽ tìm hiểu về hai dạng thuật toán thông dụng trong JWT: Thuật toán đối xứng (symme...

Thumbnail Image
593
3
0 0
Avatar Viblo Security thg 2 20, 8:00 SA
8 min read

JSON web tokens (JWT) attack - Tấn công JWT (phần 4)

III. Phân tích các phương pháp tấn công JWT và biện pháp ngăn chặn (tiếp)

  1. Tấn công tham số jwk trong self-signed JWTs

Các server sử dụng JWT chứa tham số jwk xác thực người dùng thường lưu trữ danh sách hữu hạn các public keys hợp lệ trong một đường dẫn, ví dụ:

Tuy nhiên, có thể trong quá trình xây dựng ứng dụng, lập trình viên cần thực hiện kiểm thử chương trình nên đã cho phép server xá...

Thumbnail Image
1.1K
4
5 1
Avatar Viblo Security thg 2 19, 8:00 SA
9 min read

JSON web tokens (JWT) attack - Tấn công JWT (phần 3)

III. Phân tích các phương pháp tấn công JWT và biện pháp ngăn chặn (tiếp)

  1. Tấn công vét cạn (Brute-forcing) secret key

Trong trường hợp chương trình sinh token JWT cho người dùng sử dụng secret key không đủ tính phức tạp, kẻ tấn công hoàn toàn có thể sử dụng các công cụ với phương pháp tấn công vét cạn nhằm tìm ra secret key. Một khi secret key sử dụng để sinh các token JWT xác thực bị lộ s...

Thumbnail Image
525
2
1 0
Avatar Viblo Security thg 2 7, 8:00 SA
8 min read

JSON web tokens (JWT) attack - Tấn công JWT (phần 2)

I. Kiến thức chuẩn bị (tiếp)

  1. Ưu, nhược điểm của JWT và lưu ý khi sử dụng

Ưu điểm

  • Dữ liệu được mã hóa: JWT mã hóa thông tin người dùng bằng các thuật toán, đảm bảo tính bảo mật của dữ liệu khi truyền tải.
  • Tính tích hợp: JWT có thể dễ dàng tích hợp vào nhiều ngôn ngữ lập trình khác nhau, thích nghi cao với phần lớn các công nghệ và ứng dụng hiện nay.
  • Dễ dàng phát hiện khi dữ liệu bị t...
Thumbnail Image
1.6K
6
7 0
Avatar Viblo Security thg 2 5, 8:00 SA
5 min read

JSON web tokens (JWT) attack - Tấn công JWT (phần 1)

I. Kiến thức chuẩn bị

  1. Kiểu dữ liệu JSON

JSON (JavaScript Object Notation) là một định dạng dữ liệu nhẹ và độc lập với ngôn ngữ lập trình, được thiết kế để truyền tải và lưu trữ dữ liệu. JSON có định dạng giống như JavaScript Object, với các cặp key - value trong dấu ngoặc nhọn { } và được phân cách bằng dấu phẩy.

{ "name": "John", "age": 30, "address": { "street": "123 Main St",...

Thumbnail Image
133
2
1 0
Avatar Viblo Security thg 1 29, 8:00 SA
6 min read

# Prototype Pollution attack (phần 5)

V. Một số biện pháp ngăn chặn lỗ hổng Prototype Pollution

  1. Kiểm tra các giá trị property keys

Dễ dàng nhận thấy hầu hết tất cả các kỹ thuật khai thác lỗ hổng đều phải sử dụng đến property key proto, như vậy một cách đơn giản nhất để ngăn chặn tấn công chính là phát hiện và loại bỏ chuỗi từ khóa này. Chẳng hạn, với các ứng dụng sử dụng Nodejs, các lập trình viên có thể sử dụng các flags ...

Thumbnail Image
66
2
0 0
Avatar Viblo Security thg 1 26, 8:00 SA
3 min read

Prototype Pollution attack (phần 4)

IV. Phân tích và khai thác các kỹ thuật phát hiện, tấn công Server-side - Prototype Pollution (tiếp)

  1. Sử dụng các phương thức ghi đè kiểm tra lỗ hổng

5.1. Ghi đè Status code

Trong quá trình sử dụng trang web, đôi khi chúng ta gặp các tình trạng không thể truy cập một endpoint nào đó, điều này xảy ra có thể do nhiều nguyên nhân. Thường thấy nhất là do chúng ta không đủ quyền hạn để truy cập...

Thumbnail Image
82
2
0 0
Avatar Viblo Security thg 1 24, 8:00 SA
6 min read

Prototype Pollution attack (phần 3)

IV. Phân tích và khai thác các kỹ thuật phát hiện, tấn công Server-side - Prototype Pollution

  1. Điểm khác biệt với lỗ hổng phía client

Khác với lỗ hổng xảy ra ở phía client, Server-side - Prototype Pollution chỉ các lỗ hổng xuất hiện với các dữ liệu hoạt động tại máy chủ. Mặc dù JavaScript ban đầu là một ngôn ngữ chuyên sinh ra với mục đích lập trình cho hệ thống front end, nhưng theo sự tha...

Thumbnail Image
81
3
0 0
Avatar Viblo Security thg 1 22, 8:00 SA
8 min read

Prototype Pollution attack (phần 2)

III. Phân tích và khai thác các kỹ thuật phát hiện, tấn công Client-side - Prototype Pollution

Client-side prototype pollution xảy ra khi ứng dụng web cho phép người dùng kiểm soát các thuộc tính hoặc giá trị của prototype phía client. Kẻ tấn công có thể lợi dụng lỗ hổng này nhằm thay đổi các thuộc tính quan trọng trong prototype, gây ảnh hưởng đến hành vi của ứng dụng và có thể dẫn đến các cu...

Thumbnail Image
173
2
2 0
Avatar Viblo Security thg 1 19, 8:00 SA
5 min read

Prototype Pollution attack (phần 1)

I. Kiến thức chuẩn bị

Mở đầu chuỗi bài viết về chủ đề Prototype Pollution, chúng ta sẽ cùng làm quen với các khái niệm Object, Prototype. Phạm vi tìm hiểu ban đầu của chúng sẽ nằm trong ngôn ngữ JavaScript - loại ngôn ngữ lập trình tiêu biểu và đặc trưng dựa trên mô hình prototypal inheritance (prototypal inheritance model) để quản lý đối tượng.

  1. Object trong JavaScript

Trong JavaScript, đ...

Thumbnail Image
269
3
1 0
Avatar Viblo Security thg 1 5, 8:00 SA
2 min read

HTTP Host header attack - Tấn công tiêu đề Host trong giao thức HTTP (phần 2)

II. Phân tích các dạng HTTP Host header attack và ngăn chặn (tiếp)

  1. Sử dụng tấn công Host header khai thác SSRF

Một trong những phương pháp tấn công phổ biến kết hợp lỗ hổng Host header attack và SSRF là Routing-based SSRF. Kỹ thuật tấn công này thường được sử dụng trong các hệ thống đám mây. Kẻ tấn công sẽ khai thác thành phần trung gian (như máy chủ reverse proxy) để tấn công vào các hệ t...

Thumbnail Image
682
4
0 0
Avatar Viblo Security thg 1 3, 8:00 SA
6 min read

HTTP Host header attack - Tấn công tiêu đề Host trong giao thức HTTP (phần 1)

I. Đặt vấn đề

  1. HTTP Host Header

Trong giao thức HTTP, trường Header Host được sử dụng để chỉ định tên miền (domain name) của máy chủ web được đang được truy cập hoặc đang trả về nội dung. Host header được sử dụng trong các yêu cầu HTTP cho phép máy chủ web nhận biết tên miền được yêu cầu và phục vụ nội dung phù hợp.

Xét thao tác truy cập URL https://viblo.asia/followings, quan sát trong Bu...

Thumbnail Image
140
2
1 0
Avatar Viblo Security thg 1 1, 8:00 SA
6 min read

Web cache poisoning - Lỗ hổng đầu độc bộ nhớ cache (phần 4)

V. Case study và ví dụ

  1. Case study: Redirect DoS

Case study đầu tiên tôi muốn giới thiệu tới các bạn là sự kết hợp lỗ hổng web cache poisoning nhằm tấn công DoS (denial of service) tới người dùng khác thông qua quy trình chuyển hướng request của Cloudflare.

Một đường dẫn đăng nhập của Cloudflare tại dash.cloudflare.com/login, sau khi người dùng đăng nhập, họ được chuyển hướng tới /login/, ...

Thumbnail Image
186
3
0 0
Avatar Viblo Security thg 12 29, 2023 8:00 SA
4 min read

Web cache poisoning - Lỗ hổng đầu độc bộ nhớ cache (phần 3)

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

  1. Cache parameter cloaking

Ở các phần trước, chúng ta đã cấu hình Varnish Cache ngăn chặn tấn công web cache poisoning bằng cách loại bỏ các tham số vô nghĩa khỏi quá trình xử lý caching, đồng thời chú ý đến các tham số UTM. Điều này hầu như đã ngăn chặn tốt việc tấn công web cache poisoning bằng cách tấn công Unkeyed query st...

Thumbnail Image
174
2
0 0
Avatar Viblo Security thg 12 27, 2023 8:00 SA
7 min read

Web cache poisoning - Lỗ hổng đầu độc bộ nhớ cache (phần 2)

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...

Thumbnail Image
364
4
1 0
Avatar Viblo Security thg 12 25, 2023 8:00 SA
10 min read

Web cache poisoning - Lỗ hổng đầu độc bộ nhớ cache (phần 1)

I. Đặt vấn đề

  1. Web caching là gì?

Ở thời kỳ sơ khai của Internet, khi những trang web đầu tiên được tạo ra, quá trình người dùng tải các trang web thường chậm và có kết nối không ổn định. Điều này là do sự hạn chế về tốc độ băng thông cũng như vấn đề địa lý dẫn đến độ trễ cao, mang lại trải nghiệm không tốt cho người dùng. Bên cạnh các phương pháp cải thiện băng thông, đường truyền, để giảm...

Thumbnail Image
164
4
0 2
Avatar Viblo Security thg 11 1, 2023 8:00 SA
5 min read

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

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ụ 2

Ví dụ thứ hai là challenge WAF-Deser trong cuộc thi Sinh viên An toàn thông tin vòng sơ khảo năm 20222022. Chúng ta sẽ cùng tìm hiểu từ các bước dựng môi trường, phân tích mã nguồn, tìm kiếm điểm kích hoạt lỗ hổng và cuối cùng là xây dựng custom gadget. Mã nguồn ch...

Viblo
Let's register a Viblo Account to get more interesting posts.