You are on page 1of 9

Lý thuyết:

+ Các khái niệm:

- 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

Giai đoạn đầu tiên bao gồm:

 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

1 #nmap -F 192.168.0.0/24 Quét Nmap “nhanh" (-F) trên phạm vi mạng có


thể tạo danh sách tất cả các địa chỉ IP thuộc về
máy chủ hoạt động trên mạng, cùng với một số
thông tin bổ sung.
2 #nmap -F abc.com Ngoài việc quét các mạng cục bộ, Nmap cũng có
thể hiển thị thông tin về các mạng từ xa. Trên
thực tế, bạn có thể chạy Nmap trên trang web
muốn kiểm tra và nó sẽ phân tích cú pháp và lấy
địa chỉ IP được liên kết với tên miền của trang
web đó
3 #nmap -O 104.193.19.59 Cho thấy hệ điều hành (-O) đang được sử dụng để
lưu trữ một trang web từ xa.
4 #nmap -sV 104.193.19.59 Sử dụng địa chỉ IP đã tìm ra trước đó, người dùng
có thể thực hiện một lần quét khác với tham số -
sV, cho thấy httpd 2.0 đang được sử dụng trên
máy đích.
5 #nmap 104.193.19.59 -A chỉ định địa chỉ IP đích và sau đó nhập -A để bật
tính năng phát hiện hệ điều hành, phát hiện phiên
bản, quét tập lệnh và theo dõi.
6 #ipcalc 127.0.0.1 Lấy địa chỉ IP (dễ dàng tìm thấy bằng cách nhập
ifconfig hoặc ip a trong cửa sổ terminal) và tính
toán phạm vi mạng con dựa trên đó. Công cụ sẽ
cung cấp một dãy số như "192.168.0.0/24", chỉ
định một dải địa chỉ IP. Trong ví dụ dưới đây,
mạng con được tính toán là 127.0.0.0/24.
7 #nmap -PR 192.168.0.0/24 tiến hành quét ARP với truy vấn -PR, khá nhanh
và tích cực trong việc đưa các máy chủ trực tuyến
trở lại.
8 #nmap -p 80 -oG - 192.168.0.1 | awk xuất địa chỉ IP thuộc các thiết bị được phát hiện
'/80\/open/ {print $2}' >> abc.txt thành file TXT có tên là "abc.txt."
9 #nmap -O -iL abc.txt sử dụng flag -O để quét hệ điều hành và flag -iL
để báo cho Nmap thiết bị muốn đọc từ file TXT
của máy chủ đích.
10 #nmap -sV 192.168.0.2 -D cho thấy một cổng đang chạy phần mềm đã lỗi
192.168.0.1,192.168.0.2,192.168.0.3 thời và có một lỗ hổng đã được phát hiện. Để thực
hiện điều này, hãy sử dụng flag -sV.
11 #nmap -sS 192.168.0.2 -D thực hiện quét thử bằng flag -D để khó phát hiện
192.168.0.1,192.168.0.2,192.168.0.3 ai đang tiến hành quét trên mạng.

Exploit: Shells of metasploit


Metasploit Payloads:
Payload là những gì mà hệ thống bị khai thác phải thực hiện.
2 loại shell phổ biến trong Metasploit:
 Bind shells: Lắng nghe kết nối tại 1 port trên máy mục tiêu.
 Reverse shells: Máy nạn nhân sẽ tự kết nối đến máy tấn công. Máy tấn công phải mở 1 port
để nhận các kết nối đó.
Các loại payload
 Staged Payloads: Payload chỉ chứa các thông tin cần thiết để thiết lập kết nối giữa máy
mục tiêu và máy tấn công. Payload này được thiết kế nhỏ gọn, không yêu cầu không gian
bộ nhớ lớn.
Ví dụ: windows/shell/reverse_tcppayload
 Inline Payloads: hay còn gọi là simple payload. Dạng payload này chứa tất cả các chỉ thị
cần thiết để thực thi nhiệm vụ. do đó kích thược của nó lớn hơn so với staged payload.
Ví dụ: windows/shell_reverse_tcp
Meterpreter: được xây dựng bởi dự án Metasploit Project. Payload chạy trực tiếp trên bộ nhớ vì
vậy nó không cần phải khởi động bất kỳ một dịch vụ nào. Sử dụng Transport Layer Security
(TLS) để mã hóa kênh giao tiếp giữa nó và metasploit.

Giải thích các hình thức tấn công.


ARP Cache Poisoning
Giao thức phân giải địa chỉ (ARP):
 ARP là một giao thức không quốc tịch sử dụng trong miền truyền tin để đảm bảo
truyền thông bằng cách phân giải địa chỉ IP thành ánh xạ địa chỉ MAC. Nó hỗ trợ
ánh xạ địa chỉ L2 và L3.
 ARP bảo đảm kết nối giữa địa chỉ MAC và địa chỉ IP. Bằng cách truyền đi ARP
yêu cầu cùng với địa chỉ IP, switch sẽ biết được thông tin về địa chỉ MAC kết nối
từ phản hồi của host. Trong trường hợp không có hoặc không tìm được ánh xạ,
nguồn sẽ gửi bản tin đến tất cả các nodes. Chỉ có node với địa chỉ MAC kết hợp
với IP đó phản hồi yêu cầu, chuyển tiếp gói tin chứa ánh xạ địa chỉ MAC. Switch
sẽ ghi nhớ địa chỉ MAC và thông tin về port kết nối vào bảng CAM cố định độ
dài.
Tấn công ARP Spoofing:
 Trong tấn công này, kẻ tấn công gửi gói tin ARP giả qua mạng LAN. Swicth
sẽ cập nhật địa chỉ MAC của kẻ tấn công với địa chỉ IP của user hoặc server
chính thống. Sau đó, switch sẽ chuyển tiếp gói tin đến kẻ tấn công do nhận
định đó là MAC của user. Tấn công ARP Spoofing giúp kẻ tấn công lấy thông
tin trích rút từ gói tin. Bên cạnh đó, tấn công này còn được dùng để:

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

Phương thức nâng cao an toàn bảo mật


 Cài đặt hệ thống bảo mật cho máy tính doanh nghiệp.
 Việc đầu tiên mà doanh nghiệp nên cân nhắc khi muốn nâng cao an ninh
mạng chính là cài đặt bảo mật máy tính. Bởi vì, chỉ một thao tác nhỏ như
tải phần mềm xuống máy tính từ internet thôi cũng đủ để virus có thể xâm
nhập và ăn cắp dữ liệu một cách dễ dàng.
 Việc cài đặt bảo mật sẽ giúp doanh nghiệp có được một hệ thống máy tính
chắc chắn, chống lại sự xâm nhập của phần mềm độc hại, lừa đảo. Tất
nhiên, cũng nên chọn phần mềm cài đặt bảo mật chất lượng và thường
xuyên nâng cấp phần mềm của mình để phù hợp với sự phát triển của
công nghệ hiện đại.
 Bảo vệ theo từng cấp độ mạng đầy đủ nhất.
Doanh nghiệp cần phải tìm hiểu kỹ lưỡng những cấp độ mạng khác nhau và bảo
mật một cách đầy đủ. Cụ thể:
 Tường lửa – đây là hệ thống bảo vệ bên ngoài và cảnh báo những phần
mềm độc hại đang có ý định xâm nhập vào sâu bên trong máy tính.
 Wifi cần có mạng LAN riêng: mạng wifi khá phổ biến nên việc ăn cắp dữ
liệu thông qua internet wifi cũng không có gì lạ. Muốn đảm bảo chắc chắn
thì mạng wifi của doanh nghiệp phải có mạng LAN riêng để nâng cao tính
bảo mật.
 Cáp Ethernet – giải pháp tối ưu trong công nghệ hiện đại: Internet và wifi
thì đã quá quen thuộc rồi nhưng Ethernet thì có vẻ như còn khá là mới mẻ.
Với Ethernet, việc đánh cắp, truy cập hay phá vỡ cấu trúc sẽ khó khăn hơn
bởi Ethernet được tạo nên từ một nền tảng vững chắc và được bảo mật
nghiêm ngặt.
 Thiết lập bảo mật phần cứng cho máy tính.
 Để thực hiện nâng cao bảo mật cho hệ thống mạng doanh nghiệp thì nhất
định không được bỏ qua phương án bảo mật phần cứng. Nghĩa là, bất cứ
thiết bị nào đang được kết nối với mạng internet thì đều phải bảo mật hoàn
toàn.
 Những thiết bị này bao gồm máy tính xách tay, ổ đĩa sử dụng để lưu trữ dữ
liệu của công ty, điện thoại thông minh, máy tính bảng hay máy chủ tại
công ty. Thậm chí, những thiết bị được nhân viên sử dụng để truy cập dữ
liệu từ xa cũng cần được bảo vệ bằng tường lửa và những phần mềm bảo
mật an toàn tuyệt đối.
 Cân nhắc cài đặt mật khẩu mạnh để bảo vệ hệ thống mạng.
 Nhiều doanh nghiệp sẽ sử dụng mật khẩu chung cho các thiết bị, máy móc
để dễ nhớ và tạo nên sự thống nhất khi truy cập, nhập – xuất dữ liệu.
Nhưng chính điều này là cơ hội để những kẻ bên ngoài muốn xâm nhập hệ
thống mạng dễ dàng hơn trong việc mở khóa thiết bị.
 Vậy thì, để tránh trường hợp này, doanh nghiệp nên cân nhắc những mật
khẩu mạnh và mỗi thiết bị nên đặt riêng một mật khẩu khác biệt. Mật khẩu
mạnh sẽ là mật khẩu có 12 ký tự trở lên, bao gồm chữ hoa, chữ thường, ký
hiệu đặc biệt và chữ số.
 Quản lý đặc quyền cho phép truy cập cho từng người dùng cụ thể.
 Ứng dụng quản lý người có quyền truy cập vào hệ thống mạng của công ty
và biết chính xác những thông tin mà họ thực hiện trên hệ thống là rất cần
thiết. Bởi nếu biết chính xác những ai đang thao tác và có quyền truy cập
thì việc tìm ra hung thủ khi dữ liệu bị đánh cắp không còn là vấn đề nan
giải nữa.
 Đặc biệt, mỗi người truy cập vào hệ thống mạng sẽ có một tài khoản riêng.
Lúc không cần thiết hoặc trường hợp họ rời công ty và không còn làm việc
ở công ty nữa. Ta có quyền khóa tài khoản của họ và không cho phép truy
cập thì hệ thống mạng sẽ được bảo đảm tuyệt đối.

You might also like