Professional Documents
Culture Documents
- Vul assessment (đánh giá lỗ hổng): Đánh giá lỗ hổng bảo mật là việc xem xét một cách có hệ
thống các điểm yếu về bảo mật trong hệ thống thông tin. Nó đánh giá xem hệ thống có dễ bị ảnh hưởng
bởi bất kỳ lỗ hổng đã biết nào hay không, ấn định mức độ nghiêm trọng cho các lỗ hổng đó và đề xuất
biện pháp khắc phục hoặc giảm thiểu, nếu và bất cứ khi nào cần.
- Penetration testing (Kiểm thử xâm nhập): Penetration Testing là một cuộc tấn công mạng mô
phỏng được ủy quyền trên máy tính, nhằm đánh giá tính bảo mật của hệ thống. Quá trình thử
nghiệm được thực hiện để xác định tất cả điểm yếu (còn được gọi là lỗ hổng), bao gồm khả năng
các bên không được phép truy cập vào những tính năng và dữ liệu hệ thống, cũng như điểm
mạnh là cho phép đánh giá rủi ro trên toàn hệ thống.
- Types of Penetration Testing:
o Internal/External infrastructure penetration testing.
o Wireless Penetration Testing
o Web Application Testing
o Mobile Application Testing
o Build and Configuration Review
o Physical Pentest
o Social Engineering
- Quy trình pentesting.
o 1. Lập kế hoạch và khảo sát trước
Xác định phạm vi và mục tiêu của thử nghiệm, bao gồm các hệ thống được xử lý
và những phương pháp thử nghiệm sẽ được sử dụng.
Thu thập thông tin (ví dụ như tên mạng và tên miền, mail server) để hiểu rõ hơn
cách mục tiêu hoạt động và các lỗ hổng tiềm năng của nó.
o 2. Quét
Bước tiếp theo là hiểu cách ứng dụng mục tiêu sẽ phản ứng với các yếu tố xâm nhập
khác nhau. Điều này thường được thực hiện bằng cách sử dụng:
Phương pháp phân tích tĩnh - Kiểm tra code của ứng dụng để xác định hành vi
của nó trong khi chạy. Các công cụ này có thể quét toàn bộ code trong một lần
chạy.
Phương pháp phân tích động - Kiểm tra code của ứng dụng trong trạng thái
đang chạy. Đây là phương pháp quét thực tế hơn, vì nó cung cấp chế độ xem
thời gian thực đối với hiệu suất của ứng dụng.
o 3. Giành quyền truy cập
Giai đoạn này sử dụng các cuộc tấn công ứng dụng web, chẳng hạn như cross-
site scripting, SQL injection và backdoor, để khám phá ra những lỗ hổng mục
tiêu. Sau đó, người kiểm tra sẽ thử khai thác các lỗ hổng này, thường là bằng
cách giành quyền kiểm soát toàn bộ hệ thống, đánh cắp dữ liệu, chặn lưu lượng,
v.v.. để biết được thiệt hại mà chúng có thể gây ra.
o Duy trì truy cập
Mục tiêu của giai đoạn này là để xem liệu lỗ hổng có thể được sử dụng để khai thác
lâu dài trong hệ thống bị xâm nhập hay không (đủ lâu để một hacker có thể truy cập
sâu vào hệ thống). Ý tưởng là bắt chước các cuộc tấn công APT, thường tồn tại
nhiều tháng trong một hệ thống để đánh cắp dữ liệu nhạy cảm nhất của tổ chức.
o Phân tích
Kết quả kiểm thử thâm nhập sau đó được tổng hợp thành một báo cáo chi tiết, bao
gồm:
Lỗ hổng cụ thể đã được khai thác
Dữ liệu nhạy cảm được truy cập
Thời lượng mà người tiến hành cuộc kiểm tra pen test có thể ở lại trong
hệ thống mà không bị phát hiện
Thông tin này được nhân viên phụ trách bảo mật phân tích, giúp cấu hình cài đặt
WAF cho doanh nghiệp, đưa ra những giải pháp bảo mật ứng dụng khác để vá các
lỗ hổng và bảo vệ chống lại các cuộc tấn công trong tương lai.
- Information Gathering: Thu thập thông tin là bước đầu tiên của quá trình kiển thử, và
đây là bước quan trọng có ảnh hướng to lớn đến kết quả kiểm thử. Nếu thông tin thu
thập đầy đủ và chính xác sẽ giúp rút ngắn thời gian kiểm thử và mang lại kết nhiều kết
quả chính xác. Sau khi thực hiện thu thập thông tin chúng ta sẽ biết chi tiết về mô hình
mạng của mục tiêu, các phiên bản phần mềm, open port và hiểu được các hoạt động ở
bước tiếp theo để đánh giá hệ thống.
- Ngoài ra chúng ta có thể xác định loại hệ thống nào đang đang có trong mạng như:
Thông tin hệ điều hành, dịch vụ đang chạy trên chúng, từ đó sẽ giúp người kiểm thử lựa
chọn các công cụ hợp lý để thực hiện kiểm thử.
o Lệnh Google Hacking:
Cache: là một từ khóa sẽ hiển thị phiên bản của web trang mà Google chứa
trong bộ nhớ cache của nó, thay vì hiển thị phiên bản hiện tại.
Cache: <website>
Link: liên kết được sử dụng để liệt kê bất kỳ trang web nào có chứa liên
kết đến trang hoặc trang web được chỉ định trong truy vấn.
Link: <website>
Info: trình bày thông tin về trang được liệt kê.
Info:<website name>
Site: trình bày thông tin về trang được liệt kê.
<keyword>site:<website>: Tìm kiếm 1 keyword trong 1 website
Allintitle: trình bày thông tin về trang được liệt kê.
Allintitle:<keyword>
Allinurl: trình bày thông tin về trang được liệt kê.
Allinurl:<keyword>
Một số trang web hỗ trợ tìm kiếm:
https://earth.google.com/web/
https://www.shodan.io
Nmap:
Open có nghĩa là một ứng dụng trên máy đích đang lắng nghe các kết nối / gói tin
trên cổng đó.
Filtered có nghĩa là tường lửa, bộ lọc hoặc chướng ngại vật mạng khác đang chặn
cổng để Nmap không thể biết nó đang mở hay đóng.
Closed là các port không có dịch vụ nào lắng nghe chúng, mặc dù chúng có thể mở ra
bất cứ lúc nào.
1. Nmap:
STT Lệnh
Session Hijacking
Tấn công từ chối dịch vụ
Tấn công man-in-the-middle
Nghe trộm gói tin
Chặn bắt thông tin
Connection Hijacking
VoIP tapping
Đặt lại kết nối
Đánh cắp mật khẩu
DNS Cache Poisoning
Giao thức phân giải tên miền(DNS):
Hệ thống tên miền (DNS) được sử dụng trong hệ thống mạng để dịch tên miền
thành địa chỉ IP. Khi một DNS server nhận được yêu cầu, nó không có đầu vào,
nó sẽ tạo lệnh hỏi bản dịch cho một DNS server khác. DNS server có bản dịch sẽ
phản hồi với DNS yêu cầu, sau đó lệnh hỏi được giải quyết.
Trong trường hợp nhận được đầu vào sai, DNS server sẽ cập nhật dữ liệu của nó.
Để hoạt động tốt hơn, DNS server tạo ra một bộ nhớ đệm để cập nhật đầu vào, từ
đó giải quyết lệnh hỏi nhanh hơn. Đầu vào sai tạo ra sai sót trong bản dịch DNS
cho đến khi bộ nhớ đệm hết hạn. DNS poisoning được thực hiện để hướng giao
thông mạng đến thiết bị của kẻ tấn công.
DNS Cache Poisoning
Người dùng Internet sử dụng DNS của nhà cung cấp dịch vụ internet (ISP). Trong
hệ thống, những tổ chức sử dụng DNS Server của mình để cải thiện hoạt động
bằng cách ghi bộ nhớ đệm thường xuyên. DNS Cache poisoning được thực hiện
nhờ khai thác sai sót trong phần mềm DNS. Kẻ tấn công thêm hay chỉnh sửa đầu
vào bộ nhớ đệm DNS, từ đó hướng giao thông mạng đến site ác ý. Khi Internal
DNS server không thể xác nhận tính hợp lệ của phản hồi DNS từ DNS server có
thẩm quyền, nó cập nhật đầu vào cục bộ để giải quyết yêu cầu của user.
CAM Attack(làm tràn bảng CAM - content address memory của switch)
Địa chỉ MAC (Media Access Control) : là kiểu địa chỉ vật lí, đặc trưng cho một thiết bị
hoặc một nhóm các thiết bị trong mạng LAN. Địa chỉ này được dùng để nhận diện các
thiết bị giúp cho các gói tin lớp 2 có thể đến đúng đích.
Địa chỉ MAC được phân làm 3 loại:
Unicast: đây là loại địa chỉ dùng để đại diện cho một thiết bị duy nhất.
Multicast: đây là loại địa chỉ đại diện cho một nhóm các thiết bị trong mạng LAN.
Broadcast: địa chỉ này đại diện cho tất cả các thiết bị trong cùng một mạng LAN.
Chức năng chuyển mạch của switch:
Việc đưa thiết bị chuyển mạch vào một mạng LAN có nhiều mục đích nhưng mục đích
quan trong nhất là để chia một mạng LAN ra thành nhiều vùng khác nhau nhằm giảm
thiểu việc xung đột gói tin khi có quá nhiều thiết bị được nối vào cùng một môi trường
truyền dẫn. Các vùng được phân chia này được gọi là các collision domain.Chức năng
chính của switch là vận chuyển các frame lớp 2 qua lại giữa các collision domain này.
Các collision domain này còn được gọi là các đoạn mạng LAN (LAN segment).
Để có thể vận chuyển chính xác được gói tin đến đích, switch cần phải có một sơ đồ ánh
xạ giữa địa chỉ MAC của các thiết bị vật lí gắn tương ứng với cổng nào của nó. Sơ đồ này
được lưu lại trong switch và được gọi là bảng CAM (Content Address Memory).
Kiểu tấn công làm tràn bảng CAM (MAC flooding):
1. Phương thức tấn công:
Kiểu tấn công làm tràn bảng CAM dựa vào điểm yếu của thiết bị chuyển
mạch: bảng CAM chỉ chứa được một số hữu hạn các ánh xạ (ví dụ như switch
Catalysh 6000 có thể chứa được tối đa 128000 ánh xạ) và các ánh xạ này
không phải tồn tại mãi mãi trong bảng CAM [4]. Sau một khoảng thời gian
nào đó, thường là 300 s; nếu địa chỉ này không được dùng trong việc trao đổi
thông tin thì nó sẽ bị gỡ bỏ khỏi bảng.
Khi bảng CAM được điền đầy, tất cả thông tin đến sẽ được gửi đến tất cả các
cổng của nó trừ cổng nó nhận được. Lúc này chức năng của switch không
khác gì chức năng của một hub.
Trong ví dụ trên, host C của kẻ tấn công gửi đi liên tục hàng loạt các bản tin có
địa chỉ MAC nguồn là địa chỉ giả mạo (host X và host Y). Switch sẽ cập nhật địa
chỉ của các host giả mạo này vào bảng CAM. Kết quả là khi host A gửi tin đến
cho host B; địa chỉ của B không tồn tại trong bảng nên gói tin được switch gửi ra
các cổng của nó và bản tin A chỉ gửi riêng cho B cũng sẽ được chuyển đến C.
MiTM – DNS(giả mạo DNS)
Domain Name Server (DNS) spoofing là một kỹ thuật buộc người dùng vào một website
giả. Chứ không phải trang mà người dùng dự định truy cập. Mục tiêu của thủ phạm là
tăng lượng truy cập website giả mạo hoặc đánh cắp thông tin đăng nhập của người dùng.
Kẻ tấn công giả mạo DNS bằng cách thay đổi địa chỉ của website trong máy chủ DNS.
Nạn nhân vô tình truy cập website giả mạo và kẻ tấn công sẽ cố gắng đánh cắp thông tin
của họ.
DHCP – attack
DHCP SPOOFING
DHCP spoofing là kỹ thuật giả mạo DHCP Server trong mạng LAN. Kẻ tấn công có thể cài đặt
một phần mềm DHCP trên máy tính của mình và cấp phát địa chỉ IP cho máy nạn nhân với các
thông số giả mạo như default gateway, DNS. Từ đó, máy tính nạn nhân sẽ bị chuyển hướng truy
cập theo ý đồ của kẻ tấn công.
Máy nạn nhân sau khi nhận thông tin về địa chỉ IP từ DHCP Server giả tạo, khi truy cập một
website, ví dụ của ngân hàng, facebook,…. có thể sẽ bị chuyển hướng truy cập tới Server do kẻ
tấn công kiểm soát. Trên Server này, kẻ tấn công có thể tạo những website thật, nhằm đánh lừa
nạn nhân nhập tài khoản, mật khẩu, từ đó đánh cắp những thông tin này.
DHCP Flooding, DHCP DOS Attack.
Là kỹ thuật tấn công nhằm khiến DHCP Server bị ngập bởi các yêu cầu cấp phát địa chỉ từ các
Client giả mạo. Kẻ tấn công sử dụng DHCP Flooding để làm cho máy chủ thật quá tải trong việc
xử lý các gói tin giả mà không thể đáp ứng đủ nhanh, hay hoàn toàn không còn khả năng đáp
ứng yêu cầu từ máy người dùng. Tại đây, kẻ tấn công có thể lựa chọn việc chiếm toàn bộ dải IP
hay chỉ đưa ra số lượng gói tin yêu cầu cấp phát IP đủ nhiều để server trở nên chậm chạp hơn
server giả.
Sau khi đã thực hiện thành công quá trình Flooding và khiến nạn nhân kết nối đến máy chủ giả
mà kẻ tấn công tạo ra, hắn có thể sử dụng nhiều công cụ khác nhau để bắt được gói tin từ nạn
nhân và tiến hành phân tích chúng.