Professional Documents
Culture Documents
Công ty WSmart
Tài liệu thiết kế - Học kỳ 4
GV hướng dẫn: Nguyễn Siêu Đẳng
Lớp: J1.2004.E0
Lời Cảm Ơn
Lời đầu tiên nhóm em xin gửi lời cảm ơn đến trường FPT JETKING
cùng cách thầy cô trong trường. Đặc biệt em xin chân thành cảm ơn thầy
Nguyễn Siêu Đẳng đã nhiệt tình giúp đỡ và hướng dẫn nhóm trong suốt thời
gian qua. Thầy đã tạo điều kiện thuận lợi, cung cấp những kiến thức cũng như
góp ý kiến để nhóm em hoàn thành bài báo cáo này.
Nhóm cũng xin gửi lời cảm ơn đến các anh chị, bạn bè đã truyền đạt
kinh nghiệm và tạo điều kiện cho nhóm em hoàn thành đề tài này.
Trong quá trình thực hiện đề tài nếu có những sai sót, mong thầy cô và
các bạn thẳng thắn góp ý để nhóm rút kinh nghiệm trong các công trình tìm
hiểu và phát triển sau này .
3
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
…………………………………………………………………………………………………
Mục Lục
I. Giới Thiệu Đề Tài 6
II. Hiện Trạng Thực Tế 6
1. Bối cảnh 6
2. Hiện trạng thực tế của công ty WSmart 7
2.1. Mô hình công ty 8
2.2. Mô hình chi tiết 9
3. Nhu cầu công ty WSmart 9
III. Phương Pháp Tiếp Cận 10
1. Quy trình kiểm thử bảo mật 10
2. Phương pháp OWASP 12
3. Phương pháp OSSTMM 13
3.1. Tổng quan về OSSTMM 13
3.2. Phạm vi 14
3.3. Các bước tổng quát để pentest 15
3.3.1. Four Point Process (4PP) 15
3.3.2. Trifecta 16
4. Kiểm thử Social Engineering 17
2. Công Cụ 22
Kỹ thuật penetration test giúp phát hiện ra các lỗ hổng, rủi ro hay mối
đe dọa bảo mật mà các hacker có thể khai thác trong ứng dụng phần mềm,
mạng hay ứng dụng web. Qua đó đưa ra các giải pháp nhằm giảm thiểu khả
năng bị tấn công bởi các hacker.
Ngày nay, Internet là một phần không thể tách rời với hoạt động kinh
doanh của hầu hết các doanh nghiệp. Xây dựng một hệ thống mạng tiêu
chuẩn, ổn định, bảo mật là nền tảng ban đầu cho sự phát triển bền vững
của doanh nghiệp.
Nghiên cứu mới đây của Cisco cho thấy các doanh nghiệp vừa và nhỏ
(DNVVN) tại Việt Nam đang bị lộ thông tin, bị tấn công và có nhiều mối
7
lo về các mối đe dọa an ninh mạng hơn so với trước đây. Theo kết quả
nghiên cứu, 59% DNVVN tại Việt Nam gặp sự cố mạng trong năm qua.
Hậu quả của những sự cố này là 86% số doanh nghiệp bị mất thông tin
khách hàng vào tay của những kẻ xấu.
Điều này đang khiến các DNVVN lo ngại hơn về các rủi ro an ninh
mạng, 71% doanh nghiệp nói rằng họ bất an hơn về an ninh mạng so với
năm ngoái, và 67% cho biết cảm thấy bị đe dọa bởi các nguy cơ an ninh
mạng.
Bên cạnh việc mất dữ liệu khách hàng, các DNVVN tại Việt Nam
gặp sự cố mạng còn bị mất dữ liệu nhân viên (67%), email nội bộ (61%),
thông tin tài chính (58%), sở hữu trí tuệ (56%) và thông tin kinh doanh
nhạy cảm (51%). Ngoài ra, 61% doanh nghiệp thừa nhận sự cố mạng tác
động tiêu cực đến danh tiếng của họ.
2. Hiện trạng thực tế của công ty
Công ty vừa xây dựng hệ thống mạng cho khoảng 100 User. Công ty
muốn kiểm thử hệ thống mạng trước khi đưa vào hoạt động. Hệ thống bao
gồm cách thiết bị đầu cuối như Firewall, Switch… Server và Website
công ty.
8
2.1. Mô Hình
Của Công Ty WSmart
9
Tầng 1
Tầng 2
Hệ thống được hoạt động ổn định, giảm thiểu khả năng bị tấn
công gây gián đoạn hoạt động của công ty.
Bảo mật cơ sở dữ liệu, các thông tin quan trọng của doanh nghiệp
và thông tin của người dùng.
10
thức như SSH, FTP, Telnet. Ngoài ra, người thực hiện cần tiến hành
kiểm lỗi tràn bộ đệm, SQL injection, hay tấn công DoS. Bên cạnh đó nên
kiểm tra thêm về cấu hình của hệ thống mạng không dây hay các ứng
dụng web nội bộ.
• Acquiring The Target: Đây là quá trình tận dụng các kết quả đã xác
định như những lỗ hổng hệ thống, lỗi bảo mật của ứng dụng để tấn
công, xâm nhập vào mục tiêu. Trong giai đoạn này các bạn có thể sử
dụng các chương trình khai thác tự động như CORE IMPACT hay ứng
dụng chuyên dùng cho các penetration tester là Back Track.
• Escalating Privilege: Sau khi thâm nhập hệ thống hacker sẽ tiến hành
nâng quyền với để chiếm quyền quản trị cao nhất. Hành động này được
gọi là Escalating privilege hay leo thang mức ưu tiên.
• Executing, Implanting, Reacting: Đây là công đoạn cuối cùng của
quá trình penetration test. Cần lưu ý các hành động của chúng ta trong
các giai đoạn này không được gây ảnh hưởng đến quá trình hoạt động
của doanh nghiệp, vì vậy một số tổ chức sẽ yêu cầu chúng ta không tiến
hành một số thao tác trong giai đoạn này như việc chạy thử nghiệm một
số ứng dụng có khả năng làm lộ những thông tin mật, ảnh hưởng đến
hoạt động chung…
Giai đoạn Post-attack:
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:
- 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 pentest 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.
OWASP ra đời năm 2001, đây là một tổ chức phi lợi nhuận, cộng
đồng mở, mục tiêu chính của tổ chức là cải tiến an ninh các phần mềm
ứng dụng, đặc biệt là ứng dụng web.
Đối với OWASP, an toàn phần mềm nói chung và ứng dụng web nói
riêng phải được chú trọng ngay từ giai đoạn đầu tiên: định nghĩa, thiết kế
và duy trì cho đến các giai đoạn sau này như: phát triển, triển khai, bảo
trì. Tóm lại, đánh giá an ninh nên được áp dụng trong suốt vòng đời phát
triển phần mềm. Vì vậy hướng dẫn này không chỉ dành cho người đánh
giá mà còn phải được đọc và sử dụng bởi người phát triển và kiểm thử
phần mềm. Giữ thông tin an ninh liên tục cập nhật là một khía cạnh quan
trọng của dự án hướng dẫn này. Để đáp ứng yêu cầu trên, OWASP áp
dụng phương pháp tiếp cận wiki, cộng đồng OWASP có thể phát triển và
mở rộng thông tin trong tài liệu hướng dẫn này để bắt kịp với sự phát
triển nhanh chóng của các mối đe dọa an ninh nhằm vào ứng dụng.
Theo OWASP, các ứng dụng web trên mạng hầu hết phải tiếp xúc với
bên ngoài, nên nó sẽ là đối tượng đầu tiên chịu các cuộc tấn công phá
hoại và sửa đổi trái phép. Vì vậy, đây sẽ là cánh cổng cho kẻ tấn công
xâm nhập vào lớp ứng dụng trước khi thực hiện các bước tiếp theo xâm
nhập vào hệ thống. Vì lỗ hổng an ninh này rất phổ biến, một số phương
pháp đánh giá đã được giới thiệu nhằm đánh giá sự trầm trọng của các rủi
ro an ninh cơ bản của ứng dụng web. Một nỗ lực được thực hiện bởi cộng
đồng mở OWASP là xây dựng khung làm việc đánh giá an toàn ứng dụng
web và thúc đẩy dự án OWASP top 10 nhằm nâng cao nhận thức an ninh
ứng dụng của các tổ chức phương pháp OWASP được chia thành 11
bước thực hiện bao gồm:
• Information Gathering: Thu thập thông tin về đối tượng cũng
như là server chạy ứng dụng như phiên bản trên ứng dụng,
framework, web server, hệ điều hành,..
• Configuration and Deployment Management Testing: Đánh giá về
hệ thống máy chủ, nền tảng chạy ứng dụng như hệ điều hành, web
server..
• Identify Management Testing: Nhận định khả năng có lỗi nằm ở
đâu. Xác định những điểm để thực hiện tấn công được. Kiểm tra
lại cách thức tạo tài khoản trong ứng dụng. Logic trong xử lý và
các quyền của người dùng.
13
đánh giá an ninh, đánh giá lỗ hổng, … Hiện nay dự án được phát
triển và nâng cấp lên tới phiên bản 3.0.
Phương pháp OSSTMM cũng định nghĩa một loạt các thuật ngữ
được sử dụng như: kiểm soát, bề mặt tấn công, hướng, hướng tấn
công, an ninh, an toàn, độ xốp, hạn chế, lỗ hổng, điểm yếu, RAV,
hoạt động, an ninh hoàn hảo…
Ngoài ra, phương pháp OSSTMM xây dựng một cơ sở lý thuyết
mô tả chi tiết các thành phần cấu thành an ninh hoạt động và lượng
hóa các thành phần này cùng công thức tính toán của chúng. An ninh
là một khái niệm tương đối mà với mức độ an ninh thực tế này thì có
thể là tốt đối với tổ chức này nhưng lại quá mất an ninh so với tổ chức
khác. Vì vậy, lượng hóa các thuộc tính an ninh giúp tính toán và biểu
diễn an ninh một cách nhất quán và lặp đi lặp lại.
3.2. Phạm vi
Phạm vi ở đây là tổng thể các thiết bị cần kiểm tra an ninh. Phạm
vi bao gồm 5 loại: Telecom, Data Networks, Physical, Human,
Wireless
Chú thích:
Tester: Chính là chuyên viên kiểm tra an ninh.
Environment: Môi trường mà đối tượng hoạt động
Target: Đối Tượng cần kiểm tra.
Emanations: Đây là dấu vết lưu lại của đối tượng khi nó hoạt
động trong môi trường.
Các giai đoạn làm việc của tester:
1. Induction (Z): Thiết lập các nguyên tắc về đối tượng thông
qua môi trường và sự kiện. các tester xác định các thực tế liên
quan đến đối tượng từ môi trường mà mục tiêu được cư trú. Khi
đối tượng bị ảnh hưởng bởi môi trường thì sẽ ảnh hưởng tới hoạt
động như thế nào ?
2. Inquest (C): Điều tra các dấu vết lưu lại của đối tượng khi nó
hoạt động. Một hệ thống hoặc một tiến trình thường để lại một chữ
16
ký chứng tỏ sự tồn tại của mình qua sự tương tác với môi trường
của nó.
3. Interaction (A/B): Tester sẽ tác động trực tiếp đến đối tượng
để kiểm tra phản ứng của nó, từ đó phân tích phản ứng của nó. Ở
đây tester sẽ kiểm tra bằng cách áp các bộ tiêu chuẩn và không
phi tiêu chuẩn để lấy các phản ứng khác nhau.
4. Intervention (X/Y/Z): Tương tác thay đổi tài nguyên của
đối tượng hoặc giữa các đối tượng khác đến đối tượng
3.3.2. Trifecta
Trifecta là một phương pháp kiểm tra ninh toàn diện có một cơ
sở vững chắc do được kết hợp với phương pháp 4PP và đơn giản
giúp cho chuyên viên dễ dàng hiểu và vận hành được. Phương
pháp này được trình bày dưới dạng sơ đồ có các mũi tên chỉ dẫn
các bước thực hiện do đó sẽ dễ dàng vận dụng hơn trong thực tế.
Chú thích:
Target: Đối tượng cần kiểm tra an ninh.
Environmental: môi trường tác động gián tiếp lên đối tượng cần kiểm tra.
Các bước trong sơ đồ:
17
Bước 1 – Collect passive data: Thụ động thu thập dữ liệu khi đối tượng
đang hoạt động bình thường để từ đó hiểu hơn được cách hoạt động của đối
tượng cần kiểm tra.
Bước 2 – Actively test target: Chủ động kiểm tra các biểu hiện của đối
tượng bằng các thao tác vượt qua mức giới hạn mà đối tượng có thể đáp ứng.
Ví dụ: Tăng nhiều số lượng kết nối không đúng theo luật tới firewall để xem
firewall có phản ứng như thế nào?
Bước 3 – Analyze data returned: Phân tích các dữ liệu nhận được trực
tiếp từ các thao tác thử nghiệm.
Bước 4 – Analyze emanations: Phân tích dữ liệu gián tiếp từ các
nguồn tài nguyên như là người quản trị, chương trình,…
Bước 5 – Correlate and Reconcile: Tương quan và đối chiếu thông tin
kết quả kiểm tra dữ liệu trực tiếp (bước 3) và gián tiếp (bước 4), từ đó quyết
định quy trình vận hành an ninh cho đối tượng.
Bước 6 – Determine and Reconcile Errors: Xác định và đưa ra
phương pháp xử lý các lỗi đã tìm được.
Bước 7 – Derive Metrics: Rút ra các số liệu từ sau khi thực hiện cả hai
thử nghiệm bình thường và quá giới hạn đối với đối tượng
Bước 8 – Correlate and Determine Optimum Protection: Tương
quan và đối chiếu các kết quả dữ liệu thu được ở bước 1 và 2, từ đó xác
định mức độ tối ưu bảo vệ và kiểm soát tốt nhất cho đối tượng.
Bước 9 – Map the Optimal Operational State: Lập bản đồ các trạng
thái tối ưu của các hoạt động (bước 8) cho các quy trình (bước 5).
Bước 10 – Gap Analysis: Phân tích các lỗ hổng để từ đó xác định được
những cải tiến cần thiết cho quá trình bảo vệ và điều khiển đối tượng một
cách tối ưu nhất.
4. Kiểm thử Social Engineering
4.1. Tổng quan về Social Engineering
Social Engineering là kết hợp giữa 2 từ Social (xã hội) và
Engineering (kỹ thuật), thể hiện bản chất của kiểu tấn công này:
các mánh khóe, kỹ thuật tấn công nhắm vào bản tính xã hội của con
người, thứ mà không hề tồn tại trong máy móc. Social Engineering
Attack còn được biết đến với cái tên Tấn công phi kỹ thuật.
18
Bằng cách tác động trực tiếp đến tâm lý con người, xây dựng các
mối quan hệ có chủ đích, Social Engineering khai thác các thông tin
và dùng những thông tin đó vào mục đích riêng (tống tiền, trộm cắp
tài sản, đe dọa, phá hủy cá nhân/ tổ chức,…). Khi áp dụng Social
Engineering, tội phạm thường che giấu danh tính và động cơ thực sự
bằng một vẻ ngoài đáng tin cậy khiến cho đối phương mất cảnh giác,
từ đó dễ dàng xâm nhập các sơ hở. Social Engineering không trực
tiếp sử dụng các phương thức kỹ thuật (phá hủy hệ thống, tin tặc)
nhưng có thể sẽ dùng các cách thức tinh vi để dẫn đến tấn công bằng
kỹ thuật.
Nhân viên tạp vụ: dễ dàng tiếp cận được thông tin và thiết bị
quan trọng.
Nhân viên văn phòng: quản lý các thông tin của bộ phận,
có quyền truy cập vào hệ thống công ty.
Quản lý/ Giám đốc cấp cao: nắm nhiều thông tin quan trọng,
có thể nắm được thông tin mật thiết tới tài chính của công ty.
Các đối tượng khai thác đều sẽ thuộc một phần dưới đây của
chiến thuật SE:
• Nên sử dụng tách biệt các tài khoản cá nhân và công việc
riêng biệt.
• Giữ bình tĩnh và kéo dài thời gian đề phòng kẻ xấu đánh
vào tâm lý làm trước khi nghĩ để lừa đảo.
• Không sử dụng các ứng dụng đòi quyền truy cập cá nhân
và không rõ nguồn gốc.
• Tránh sử dụng một mật khẩu cho nhiều tài khoản.
• Nói không với mọi email yêu cầu xác minh tài chính,
mật khẩu, …
2. Công cụ
Linux/
Công cụ Khả năng Website Windows Chi phí
Unix
https://www.kali.
Quét điểm yếu org/tools/burpsuit
Burp Suite WEB e/ ✓ ✓ Miễn phí
Burp Suite: là một ứng dụng được tích hợp nhiều tính năng phục vụ kiểm tra tính
bảo mật của ứng dụng web. Burp Suite giúp người dùng đánh giá các tiêu chí bảo
Mô Tả mật web như: Tiến hành kiểm tra cơ chế xác thực, kiểm tra các vấn đề về phiên bản
người dùng hay liệt kê cũng như đánh giá các tham số đầu vào của ứng dụng trang
web.
✓
https://www.thek
alitools.com/2017
/08/huong-dan-
cai-dat-
Setoolkit setoolkit.html Miễn Phí
23
https://www.vietnamplus.vn/an-ninh-mang-viet-nam-trong-nam-2021-tan-cong-ngay-cang-tinh-
vi/749427.vnp#&gid=1&pid=3
https://whitehat.vn/threads/pentest-chuan-pentest-website-theo-owasp.6989/
https://www.sonarqube.org/features/security/owasp/?gads_campaign=Asia-
Generic&gads_ad_group=OWASP&gads_keyword=owasp%20tool&gclid=EAIaIQobChMIjePX9Jr
D9AIVBrqWCh0_JwZuEAAYASAAEgIZBfD_BwE
https://owasp.org/images/5/52/OWASP_Testing_Guide_v4.pdf
https://owasp.org/www-project-web-security-testing-guide/stable/4-
Web_Application_Security_Testing/01-Information_Gathering/README
https://quantrimang.com/tim-hieu-ve-penetration-testing-162644
https://www.thekalitools.com/2017/10/quy-trinh-tien-hanh-kiem-thu-bao-mat.html
https://kirkpatrickprice.com/blog/what-you-need-to-know-about-osstmm/
https://cystack.net/vi/blog/social-engineering
https://www.sachcongnghe.com/2019/07/3-hinh-thuc-pentest-kiem-thu-xam-nhap-pho-bien.html