By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
FantasistaFantasista
  • Home
  • Network
  • System
  • Software
  • Security
    SecurityShow More
    Hướng dẫn chung về Kali Linux
    27/05/2022
    Ransomware tấn công có chủ đích vào các tổ chức
    03/11/2021
    Series Pentesterlab – Day 22: CVE-2007-1860: mod_jk double-decoding
    04/10/2021
    Series Pentesterlab – Day 21: From SQL Injection to Shell
    15/09/2021
    Series Tryhackme – Day 01: Starting Out In Cyber Sec
    13/09/2021
  • Coding
  • Life
Search
© 2022 Foxiz News Network. Ruby Design Company. All Rights Reserved.
Reading: Series Pentesterlab – Day 09: LDAP
Share
Sign In
Notification Show More
Latest News
Hướng dẫn chung về Kali Linux
27/05/2022
Ransomware tấn công có chủ đích vào các tổ chức
03/11/2021
Hướng dẫn kích hoạt IDM Full không cần crack, sử dụng key an toàn
10/10/2021
Series Pentesterlab – Day 22: CVE-2007-1860: mod_jk double-decoding
04/10/2021
Series Pentesterlab – Day 21: From SQL Injection to Shell
15/09/2021
Aa
FantasistaFantasista
Aa
Search
Have an existing account? Sign In
Follow US
© 2022 Foxiz News Network. Ruby Design Company. All Rights Reserved.
Fantasista > Blog > Fantasista > Bảo mật > Pentest > Series Pentesterlab – Day 09: LDAP
Bảo mậtPentest

Series Pentesterlab – Day 09: LDAP

Fantasista
Fantasista 31/08/2021
Updated 2021/08/31 at 10:43 Chiều
Share
6 Min Read
SHARE
Mục lục
LDAP 01LDAP 02

LDAP 01

Trong ví dụ đầu tiên này, bạn kết nối với máy chủ LDAP, sử dụng tên người dùng và mật khẩu của mình. Trong trường hợp này, Máy chủ LDAP không xác thực bạn, vì bằng chứng xác thực của bạn không hợp lệ.

Tuy nhiên, một số máy chủ LDAP cho phép NULL Bind: nếu giá trị null được gửi, máy chủ LDAP sẽ tiến hành ràng buộc kết nối và mã PHP sẽ nghĩ rằng thông tin xác thực là chính xác. Để nhận ràng buộc có 2 giá trị null, bạn sẽ cần phải xóa hoàn toàn tham số này khỏi truy vấn. Nếu bạn giữ một cái gì đó như tên username=&password= trong URL, các giá trị này sẽ không hoạt động, vì chúng sẽ không có giá trị; thay vào đó, chúng sẽ trống rỗng. Do đó bạn phải xoá hết đi.

Pasted 6 - Series Pentesterlab – Day 09: LDAP

LDAP 02

Hình thức injection LDAP phổ biến nhất là có thể injection trong một bộ lọc. Ở đây, chúng ta sẽ thấy cách bạn có thể sử dụng LDAP injection để bỏ qua kiểm tra xác thực.

Đầu tiên, bạn cần tìm hiểu một chút về cú pháp LDAP. Khi bạn đang truy xuất một người dùng, dựa trên tên người dùng của người đó, những điều sau sẽ được sử dụng:

1
(cn=[INPUT])

Nếu bạn muốn thêm nhiều điều kiện hơn và một số logic boolean, bạn có thể sử dụng:

  • Một boolean OR sử dụng |: (|(cn=[INPUT1])(cn=[INPUT2])) để lấy các bản ghi trùng với [INPUT1] or [INPUT2].
  • Một boolean AND sử dụng &: (&(cn=[INPUT1])(userPassword=[INPUT2])) lấy bản ghi có cn bằng [INPUT1] mật khẩu trùng với [INPUT2].

Như bạn có thể thấy, logic boolean nằm ở đầu bộ lọc. Vì bạn có khả năng chèn sau nó, không phải lúc nào cũng có thể (tùy thuộc vào máy chủ LDAP) để đưa logic vào bên trong bộ lọc, nếu nó chỉ là (cn=[INPUT]).

LDAP rất thường xuyên sử dụng ký tự đại diện * để khớp với bất kỳ giá trị nào. Điều này có thể được sử dụng để so khớp mọi thứ * hoặc chỉ các chuỗi con (ví dụ: adm* cho tất cả các từ bắt đầu bằng adm).

Như với các lần injection khác, chúng tôi sẽ cần xóa bất kỳ thứ gì được thêm bởi mã phía máy chủ. Chúng tôi có thể loại bỏ phần cuối của bộ lọc, sử dụng NULL BYTE (được mã hóa là %00).

Ở đây, chúng tôi có một kịch bản đăng nhập. Chúng ta có thể thấy điều đó nếu chúng ta sử dụng:

  • username=hacker&password=hacker và chúng ta được xác thực (đây là một request bình thường).
  • username=hack*&password=hacker và chúng ta được xác thực (wildcard matches the same value).
  • username=hacker&password=hac* chúng ta không được xác thức (mật khẩu có thể đã bị hashed).

Bây giờ, chúng ta sẽ xem cách chúng ta có thể sử dụng LDAP injection, trong tham số tên người dùng để bỏ qua xác thực. Dựa trên các thử nghiệm trước đây của chúng tôi, chúng tôi có thể suy ra rằng bộ lọc có thể trông giống như sau:

1
(&(cn=[INPUT1])(userPassword=HASH[INPUT2]))

Trong đó HASH là một hàm băm unsalted (có thể là MD5 hoặc SHA1).

1
LDAP supports several formats: `{CLEARTEXT}`, `{MD5}`, `{SMD5}` (salted MD5), `{SHA}`, `{SSHA}` (salted SHA1), `{CRYPT}` for storing passwords.
Vì [INPUT2] đã được băm, chúng tôi không thể sử dụng nó để chèn tải trọng của mình. Mục tiêu của chúng tôi ở đây sẽ là đưa vào bên trong [INPUT1] (tham số tên người dùng). Chúng tôi sẽ cần inject:
  • The end of the current filter using hacker).
  • An always-true condition ((cn=*) for example)
  • A ) to keep a valid syntax and close the first (.
  • A NULL BYTE (%00) to get rid of the end of the filter.

Sau khi bạn kết hợp điều này với nhau, bạn sẽ có thể đăng nhập với tư cách là hacker bằng bất kỳ mật khẩu nào. Sau đó, bạn có thể thử tìm những người dùng khác bằng thủ thuật ký tự đại diện. Ví dụ: bạn có thể sử dụng dấu * trong phần đầu tiên của bộ lọc và kiểm tra xem bạn đăng nhập với tư cách nào.

Trong hầu hết các trường hợp, việc inject LDAP sẽ chỉ cho phép bạn bỏ qua kiểm tra xác thực và ủy quyền. Việc truy xuất dữ liệu tùy ý (trái ngược với việc chỉ nhận được nhiều kết quả hơn) thường thực sự khó khăn hoặc không thể.

1
http://ptl-9a22fd37-39a85aa5.libcurl.st/?name=admin)(cn=*))%00&password=admin

 

You Might Also Like

Hướng dẫn chung về Kali Linux

Ransomware tấn công có chủ đích vào các tổ chức

Series Pentesterlab – Day 22: CVE-2007-1860: mod_jk double-decoding

Series Pentesterlab – Day 21: From SQL Injection to Shell

Series Tryhackme – Day 01: Starting Out In Cyber Sec

Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Fantasista 31/08/2021
Share this Article
Facebook TwitterEmail Copy Link Print
Share
Posted by Fantasista
Follow:
Xin chào, mình là Tân. Mình tạo blog này 01/06/2021. Đây là nơi mình ghi chép lại những suy nghĩ, cảm nhận trong cuộc sống và những kiến thức mà mình học được.
Previous Article Series Pentesterlab – Day 08: File Include
Next Article Series Pentesterlab – Day 10: MongoDB Injection
Leave a comment Leave a comment

Trả lời Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Stay Connected

235.3k Followers Like
69.1k Followers Follow
11.6k Followers Pin
56.4k Followers Follow
136k Subscribers Subscribe
4.4k Followers Follow
- Advertisement -
Ad imageAd image

Latest News

Hướng dẫn chung về Kali Linux
Bảo mật Công cụ bảo mật 27/05/2022
Ransomware tấn công có chủ đích vào các tổ chức
An toàn thông tin Bảo mật 03/11/2021
Hướng dẫn kích hoạt IDM Full không cần crack, sử dụng key an toàn
Phần mềm Tiện ích 10/10/2021
Series Pentesterlab – Day 22: CVE-2007-1860: mod_jk double-decoding
Bảo mật Pentest 04/10/2021
https://pbs.twimg.com/profile_images/1542611508093661184/MR5LYGqH_normal.jpg
@envato
1.5k Following
71k Followers
https://pbs.twimg.com/profile_images/1542611508093661184/MR5LYGqH_normal.jpg 31 phút ago
@reputeinfosys Hi there, can you provide us with the ticket number to your request and we will make sure someone ge… https://t.co/TPdKynvll8
https://pbs.twimg.com/profile_images/1542611508093661184/MR5LYGqH_normal.jpg 44 phút ago
@joeyancey_ Hi there, we would be more than willing to review this case for you. Please submit a support ticket her… https://t.co/V7jXIg1G3q
https://pbs.twimg.com/profile_images/1542611508093661184/MR5LYGqH_normal.jpg 9 giờ ago
@barts_ron Hi! Thanks for contacting us. It looks like all our systems are running smoothly. You can check the stat… https://t.co/Haz9yXFnMM

You Might also Like

Hướng dẫn chung về Kali Linux

27/05/2022
An toàn thông tinBảo mật

Ransomware tấn công có chủ đích vào các tổ chức

03/11/2021
Bảo mậtPentest

Series Pentesterlab – Day 22: CVE-2007-1860: mod_jk double-decoding

04/10/2021
Bảo mậtPentest

Series Pentesterlab – Day 21: From SQL Injection to Shell

15/09/2021
//

We influence 20 million users and is the number one business and technology news network on the planet

Quick Link

  • About
  • Contact
  • FAQs

Top Categories

  • Home
  • Network
  • System
  • Software
  • Security
  • Coding
  • Life
FantasistaFantasista
Follow US

© 2022 Foxiz News Network. Ruby Design Company. All Rights Reserved.

Join Us!

Subscribe to our newsletter and never miss our latest news, podcasts etc..

Zero spam, Unsubscribe at any time.

Removed from reading list

Undo
Welcome Back!

Sign in to your account

Register Lost your password?