Pentest With Kali Linux [PWK v1] Module 4 Active Information Gathering p1
Pentest With Kali Linux [PWK v1] Module 4 Active Information Gathering p2
Pentest With Kali Linux [PWK v1] Module 4 Active Information Gathering p3
Lesson 40 : SMB Null Session
Null session nghĩa là không cần có session ẫn có thể connect được và một khi connect với công cụ như rpcclient thì attacker hay pentester có thể chạy các lệnh để làm được nhiều điều hay lấy được các thông tin khác một khi smb cấu hình sau, ví dụ sau khi connect pentester có thể chạy lệnh srvinfo, enumdomusers,getdompinfo (xem chính sách password)
#rpcclient -U ” ” 192.168.75.131 đối với bài thực hành cho bug kiểu này thì các seri trên HA là rất hay và thích hợp, tuy nhiên BQT sẽ trình bày về chúng sau còn bây giờ các bạn hãy tham khảo bài trình bày sau đây của OffSec để thấy những gì ta có thể là khi có điểm nhạy cảm smb null session trên mục tiêu
rpccleint $> srvinfo
lênh này sẽ cho thấy OS version, server type …
hoặc chạy lệnh enumdomusers sẽ cho thấy danh sách các tài khoản, mà khi biết tài khoản thì hacker có thể tiến hành bruteforce rất là nguy hiểm.
Lesson 41 Enum4Linux , đây là tool khá mạnh mẽ để tiến hành dò quét hay liệt kê các thông tin liên quan đến smb . Hãy tham khảo bài Enumerate SMB with Enum4linux & Smbclient và thực hành theo hướng dẫn để vững vàng cho trận chiến, hay bài lab trên Null Byte Enumerate NetBIOS Shares with NBTScan & Nmap Scripting Engine (2 bài lab này ta có thể dùng Kali và mục tiêu sẽ là Metasploitable 2)
hãy thực thi lệnh sau với mục tiêu là M2
#enum4linux -v 192.168.31.206 và xem kết quả sẽ thấy rất nhiều thông tin như username, share hay chính sách mật khẩu và cả những gợi ý chạy các lệnh để chui vào như rpcclient, nmap nse share, smbclient … như minh họa sau
Các bạn hãy thực hành trên lab CBT của mình và chụp hình minh họa.
Lesson 42 : NMAP SMB Script
Nmap với nhiều scrpt để enum smb hay share rất hay và mạnh mẽ như trong phần trên có link đến một bài rất thú vị. Hãy vào thư mục /usr/share/nmap/script và grep smb để xem các script này, ta có thể chạy lệnh tất cả smb script với kí tự đại diện.
Nếu muốn chạy 1 script nào đó mà không nắm cú pháp các bạn vào trang nsedocs để tìm hiểu thêm, ví dụ để enum user là chạy lệnh :
#nmap -p 139,445 –script smb-enum-users 192.168.75.132
ta sẽ thấy các user nếu nmap dò ra
Hoặc các bạn có thể bật thêm LAB THEROCK và chạy scrpt smb-check-vulns sẽ thấy bug MS08_067 như video offsec, còn chạy trên lab Windows 7 hay Windows 10 VM sẽ thấy Ms17_010 …
Lesson 43 – SMTP Enumeration
Mail server được cài sẳn trên Windows 7 PreOSCP Lab giống với mô hình thực hành, nếu các bạn cài từ ISO thì copy Tool trong thư mục PreOSCP để cài trên máy mục tiêu và thực hành. Trong ví dụ netcat ta đã thử lệnh như :
#nc -nc 192.168.31.215 25
sẽ thấy port mở và dịch vụ sendmail
sau đó có thể chạy lệnh tìm kiếm xác nhận user như VRFY bob hay VRFY idonexist (ý là tìm đại 1 user không có sẽ ra kết quả không thấy, kết quả có code là 550, còn nếu có thì sẽ thông báo với code 250 như bài hướng dẫn sau
Lesson 44 : SMTP VRFY Bash Script
Các bạn đã nắm cách dùng bash shell để chạy những lệnh như host để phân giải tên domain, phân giải ngược từ IP ra domain hay trước nữa là lọc các domain trên trang chủ cisco.com
Ở đây là một ví dụ khác, cần thực hành đầy đủ …
Trước tiên, hãy tạo 1 danh sách tên trong tập tin users.txt (như danh sách domain trong list.txt), trogn thực tế thì danh sách này cần phải thu thập qua tiến trình recon hay thu thập thông tin, footprinting …
ta cần VRFY ác user trong danh sách users.txt nên phải có lệnh for user in $(cat users.txt); và sau đó là thực hiện conect và xác nhận với lệnh :
echo VRFY $user , bước này phải sau khi kết nối đến máy chủ với netcat qua lệnh nc -nv -w 192.168.31.215 25
Tuy nhiên, phần output này các bạn phải bắt qua 2>/dev/null để grep vi nó là kết qủa của nhiều bước khác nhau chứ không phải chỉ là 1 lệnh, hãy xem các luồng dữ liệu trên linux ở phần stdin stdout để nắm thêm về cú pháp này, rồi sau đó grep dòng có mã 250 với grep ^”250″
Câu lệnh cuối cùng sẽ là :
#for user in $(cat users.txt);do echo VRFY $user | nc -nv -w 192.168.31.215 25 2>/dev/null | grep ^”250″
Các bạn thấy lệnh hơi khó nhớ thì ghi chú lại, nhưng bài thi họ không yêu cầu nhiều về mấy cái này đâu mà lo, nếu cần thì ta sẽ chơi luôn python scrit cho nhanh gọn và cũng có sẵn đây trên github cho các bạn lấy về mà ngâm cứu viết theo , nếu không muốn ngồi code lại từng dòng.
Hãy tham khảo video chi tiết
Để nắm vững vàng cho trận chiến thực hành trên lab các bạn xem thêm các bài sau
SMTP Pentest Lab Setup in Ubuntu (Port 25) (nếu thích cứ cài, không thì dùn bản cài sẵn)
4 ways to SMTP Enumeration (bài này làm dựa trên lab dựng ở bài trên)
Lesson 45 : Python Port
Trong bài kế tiếp các bạn cần convert đoạn script trên qua python, đây là một ngôn ngữ mạnh mẽ nhưng dễ sử dụng, đang được dùng để dạy lập trinh cho trẻ em thay cho pascal. Nếu bạn chưa rành về python thì không sao, hãy tải thêm sách mà đọc hay là vào sololearn bỏ ra 3 tuần để luyện là ổn ngay, hoặc đăng kí Lab Python trên thao trường mạng Security365 .
Ở đây tôi giới thiệu vắn tắt, nếu ai đã học qua lâp trình sẽ thấy “bình thường”
đầu tiên, tạo 1 file văn bản (chuyên nghiệp thì dùng IDE của python có trên Kali, hay cài thêm cũng nhiều như PyCharm)
dòng đầu khai báo !#/usr/bin/python
sau đ1o import mấy cái thư vie65nc ần thiết như socket, sys
import socket
import sys
sau đó kiểm tra tham số (là tên cần xác nhận), nếu không có thì in thiếu tham số và đưa ra , hu7o71g dẫn và thoát
if len(sys.argv) !=2
print “Usage”vrfy.py (username)”
sys.exit(0)
tiếp theo tạo socket
rối kết nối đến máy chủ smtp
in ra
nhận kết quả trả về (banner) , in banner, sau đó gởi lệnh VRFY , nhận kết quả (result) ,rồi in ra …….. và đóng socket
Toàn bộ thao tác này nếu dùng C chắc code cũng vã, nhưng với python thì chỉ hơn chục dòng, quá nhanh quá nguy hiểm. Hãy xem bài hướng dẫn sau và code lại cho quen tay hoặc lên github có nhiều người code sẵn cả mấy đoạn này …
Xem tại liệu Python Hack 4 Beginer
Các bài cuối của Mod 4 sẽ trình bày về SNMP gồm SNMP Enum, SNMP MIB là gì và cách dùng SNMP Walk. Chủ đề SNMP này trong PWKv1 -VN tôi có trình bày trên lab Metasploitable 3 (M3), các bạn có thể google để xem kỹ hơn và làm lại trên CBT Lab của mình như là 1 yêu cầu bắt buộc. Lấy ví dụ, có thể firewall lọc 3389 nhưng smnp cấu hình sai vẫn cho ta thấy có dịch vụ này chạy trên máy chủ của M3, rồi tool snmpwalk dùng thế nào
Lesson 46 SNMP Enumeration
Lesson 47 : SNMP MIB
Lesson 48 : SNMPWalk
Chủ đề 4 các bạn nên dành nhiều thời gian để thực tập, rồi đọc thêm các bài tham chiếu, tham khảo. ếu được yêu cầu từ BQT các bạn hãy lab theo (BQT cần có video demo hay minh họa trước bất kì bài yêu cầu nào, hạn chế như các thầy trong trường bài nào không làm hay chưa làm thì giao cho sinh viên làm đồ án hay bài tập, đề án)