BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC NGOẠI NGỮ - TIN HỌC TP. HCM
KHOA CÔNG NGHỆ THÔNG TIN
----- -----
KHÓA LUẬN TỐT NGHIỆP
ĐỀ TÀI :
WEB PENETRATION TESTING
GIẢNG VIÊN HƯỚNG DẪN:
ThS. PHẠM ĐÌNH THẮNG
SINH VIÊN THỰC HIỆN:
BÙI LÊ ĐÌNH KHANG - 15DH110109
NGUYỄN HỒNG KHA - 15DH110162
TP.HỒ CHÍ MINH – 2019
LỜI NĨI ĐẦU
Ngày nay mạng máy tính là một khái niệm đã trở nên quen thuộc đối với hầu hết
tất cả mọi người, đặc biệt chiếm vị trí hết sức quan trọng đối với các doanh nghiệp. Với
xu thế phát triển mạnh mẽ của hệ thống mạng như: mạng internet, hệ thống thương mại
điện tử, hệ thống thông tin trong các cơ quan doanh nghiệp,… vấn đề quản trị an ninh
mạng hết sức cần thiết. Làm thế nào để thiết kế một mạng máy tính tối ưu cho từng tổ
chức doanh nghiệp và làm thế nào để mạng máy tính đó hoạt động với tính bảo mật
cao? Để hướng đến một xã hội thơng tin an tồn và có tính bảo mật cao có thể triển
khai được các dịch vụ, tiện ích qua mạng để phục vụ để phục vụ đời sống xã hội chính
trị, qn sự,… thì vấn đề quản trị an ninh mạng phải được cân nhắc và đánh giá đúng
tầm quan trọng của nó.
Bằng góc nhìn của một hacker, kỹ thuật Penetration Testing sẽ giúp cho hệ
thống mạng của các tổ chức, doanh nghiệp được bảo mật một cách tối ưu nhất.
MỤC LỤC
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT ................................................................................ 1
1.1.
Kiểm thử bảo mật (Security Testing) ................................................................. 1
1.1.1.
Bảo mật (Security) là gì ? ............................................................................ 1
1.1.2.
Kiểm thử bảo mật (Security Testing) là gì ? ................................................ 1
1.1.3.
Quy trình của kiểm thử bảo mật .................................................................. 1
1.2.
Khái niệm về Penetration Testing ...................................................................... 1
1.2.1.
Penetration Testing là gì ? ........................................................................... 1
1.2.2.
Khái niệm bảo mật cơ bản ? ........................................................................ 2
1.2.3.
Các phương pháp kiểm thử trong Pentest .................................................... 2
1.2.4.
Tiêu chuẩn thực hiện Pentest ....................................................................... 4
CHƯƠNG 2: QUY TRÌNH KIỂM THỬ ......................................................................... 5
CHƯƠNG 3: THỰC NGHIỆM WEB PENTEST ......................................................... 16
3.1.
Giới thiệu đối tượng Pentest ............................................................................. 16
3.1.1.
3.2.
Thông tin chung: ........................................................................................ 16
Thực nghiệm ..................................................................................................... 16
3.2.1.
Thu thập thơng tin ...................................................................................... 16
3.2.2.
Kiểm thử cấu hình và quản lý .................................................................... 23
3.2.3.
Kiểm thử quản lý nhận dạng ...................................................................... 32
3.2.4.
Kiểm thử xác thực ...................................................................................... 37
3.2.5.
Kiểm thử phân quyền ................................................................................. 44
3.2.6.
Kiểm thử quản lý phiên.............................................................................. 48
3.2.7.
Kiểm thử giá trị đầu vào ............................................................................ 53
3.2.8.
Kiểm thử xử lý lỗi ...................................................................................... 55
CHƯƠNG 4: KẾT QUẢ ................................................................................................ 57
CHƯƠNG 5: KẾT LUẬN ............................................................................................ 60
TÀI LIỆU THAM KHẢO .............................................................................................. 61
DANH SÁCH BẢNG
Bảng 3.2.2: Bảng đánh giá kiểm thử về cấu hình mạng và quản lý
Bảng 3.2.3: Bảng đánh giá kiểm thử thử về quản lý nhận dạng
Bảng 3.2.4: Bảng đánh giá kiểm thử về xác thực người dùng
Bảng 3.2.5: Bảng đánh giá kiểm thử về phân quyền người dùng
Bảng 3.2.5.1: Bảng liệt kê trang web được phân quyền
Bảng 3.2.6: Bảng đánh giá kiểm thử về quản lý phiên làm việc
Bảng 3.2.8: Bảng đánh giá kiểm thử về trang xử lý lỗi của trang web
Cơ sở lý thuyết
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT
1.1.
Kiểm thử bảo mật (Security Testing)
1.1.1. Bảo mật (Security) là gì ?
Bảo mật (Security) là các biện pháp thiết lập để giữ an tồn và bảo đảm bí mật
của một ứng dụng, chống lại các hành động không lường trước được, các hành động đó
sẽ ảnh hưởng hoặc phá hủy ứng dụng. Hành động khơng lường trước có thể là cố ý
hoặc vơ ý.
1.1.2. Kiểm thử bảo mật (Security Testing) là gì ?
Kiểm thử bảo mật (Security Testing) là việc tìm kiếm tất cả các lỗ hổng có thể
và điểm yếu trong hệ thống nhằm đảm bảo rằng các hệ thống và ứng dụng trong một tổ
chức khơng có bất kỳ sơ hở nào có thể gây ra tổn thất về an tồn bảo mật mà dẫn đến
rị rỉ thơng tin của tổ chức.
1.1.3. Quy trình của kiểm thử bảo mật
Có 4 bước chính trong q trình kiểm thử bảo mật, q trình này được lặp đi lặp
lại nhiều lần.
FootPrinting
1.2.
Scanning
Enumeration
Hacking &
Exploitation
Khái niệm về Penetration Testing
1.2.1. Penetration Testing là gì ?
Penetration Testing (hay cịn gọi là pentest) là hình thức kiểm tra hệ thống cơng
nghệ thơng tin của người dùng có thể bị tấn công hay không, bằng cách giả lập các vụ
tấn cơng thử nghiệm. Có thể hiểu một cách đơn giản, Pentest chính là đánh giá độ an
tồn bằng cách tấn cơng vào hệ thống, là q trình xem xét lại các dịch vụ và hệ thống
để tìm ra các vấn đề an ninh tiềm tàng hoặc dị tìm các dấu vết khi hệ thống bị tổn
Trang 1
Cơ sở lý thuyết
thương. Người thực hiện một thử nghiệm xâm nhập được gọi là người kiểm tra xâm
nhập hoặc pentester.
1.2.2. Khái niệm bảo mật cơ bản ?
-
Lỗ hổng (Vulnerabilities)
Vulnerabilities là lỗ hổng bảo mật trong một phần của phần mềm, phần cứng
hoặc hệ điều hành, cung cấp một góc tiềm năng để tấn công hệ thống. Một lỗ hổng có
thể đơn giản như mật khẩu yếu hoặc phức tạp như lỗi tràn bộ đệm hoặc các lỗ hổng
SQL injection.
-
Khai thác (Exploits)
Lợi dụng điểm yếu của một lỗi, sự cố hay lỗ hổng của phần cứng, phần mềm,
đoạn dữ liệu hay một chuỗi các lệnh để nhằm gây ra các hành vi không mong muốn
hoặc không lường trước xảy ra trên hệ thống máy tính. Những hành động đó có thể bao
gồm các hành động leo thang đặc quyền, một cuộc tấn công từ chối dịch vụ, đánh cắp
các thông tin nhạy cảm, …
-
Mã khai thác (Payload)
Đoạn mã khai thác là các thành phần của phần mềm cho phép kiểm sốt một hệ
thống máy tính sau khi nó được khai thác lỗ hổng.
1.2.3. Các phương pháp kiểm thử trong Pentest
Hộp đen
(black
box)
Pentest
Hộp xám
(Grey
box)
Hộp trắng
(white
box)
Trang 2
Cơ sở lý thuyết
-
Hộp đen (Black box)
Tấn cơng từ ngồi vào (Black-box Pentest): các cuộc tấn công được thực hiện
mà khơng có bất kỳ thơng tin nào. Pentester sẽ đặt mình vào vị trí của những tin tặc mũ
đen và cố gắng bằng mọi cách để thâm nhập vào được mạng nội, ngoại của khách
hàng.
Pentester sẽ mô phỏng một cuộc tấn cơng thực sự vào ứng dụng. Q trình thử
nghiệm bao gồm một loạt các lỗ hổng bảo mật ở cấp ứng dụng được xác định bởi
OWASP và WASC nhắm mục tiêu các lỗ hổng bảo mật nguy hiểm tiềm tàng trong ứng
dụng của khách hàng. Quá trình thử nghiệm sẽ tiết lộ các lỗ hổng, thiệt hại khai thác
tiềm năng và mức độ nghiêm trọng.
-
Hộp trắng (White box)
Tấn công từ trong ra (White-box Pentest): là các thông tin về mạng nội bộ và
ngoại sẽ được cung cấp bởi khách hàng và pentester sẽ đánh giá an ninh mạng dựa trên
đó.
Điều quan trọng là cho các tổ chức để xác định rủi ro và mối đe dọa của họ xuất
phát từ đâu nếu doanh nghiệp cảm nhận được nó đến từ các nhân viên, khách hàng
hoặc đối tác thương mại và nó có thể có lợi để tiến hành một thử nghiệm hộp trắng.
Nhân viên, khách hàng và các đối tác thương mại có kiến thức về thơng tin của doanh
nghiệp. Họ có thể biết rằng doanh nghiệp có một Intranet hoặc Extranet, trang web, và
họ cũng có thể có các thông tin cho phép họ để đăng nhập vào hệ thống. Họ có thể biết
nhân viên làm việc trong tổ chức, cơ cấu quản lý, các ứng dụng chạy trong mơi trường.
Tất cả các thơng tin này có thể được sử dụng để khởi động các cuộc tấn công nhắm
mục tiêu nhiều hơn đối với một cơ sở hạ tầng, mà có thể khơng được xác định là một
phần của một sự tham gia thử nghiệm Black Box.
Trang 3
Cơ sở lý thuyết
-
Hộp xám (Gray box)
Kiểm định hộp xám (Gray-box hay Crystal-box): Giả định như tin tặc được cung
cấp tài khoản một người dùng thông thường và tiến hành tấn công vào hệ thống như
một nhân viên của doanh nghiệp.
1.2.4. Tiêu chuẩn thực hiện Pentest
Đánh giá ứng dụng web – OWASP (Open-source Web Application Security
Project): OWASP là một chuẩn mở cho phép tổ chức/ doanh nghiệp tiến hành xây
dựng, phát triển, duy trì hoạt động của các ứng dụng trên nền tảng web một cách bảo
mật nhất. Quá trình đánh giá dựa trên các tiêu chí đã được cộng đồng bảo mật xác
nhận. OWASP bao gồm 10 lỗ hổng được đánh giá một cách chi tiết và cập nhật thường
xuyên với thực tế các nguy cơ mà một ứng dụng web thường gặp.
Đánh giá mạng và hệ thống – OSSTMM (Open Source Security Testing
Methodology Manual): OSSTMM là một chuẩn mở cung cấp phương pháp kiểm tra
bảo mật một hệ thống đang hoạt động của doanh nghiệp. Từ phiên bản 3.0, OSSTMM
đưa ra phương pháp kiểm định cho hầu hết các thành tố trong hệ thống như: con người,
hạ tầng vật lý, mạng không dây, truyền thông và các mạng sử dụng truyền dữ liệu.
Trang 4
Quy trình kiểm thử
CHƯƠNG 2: QUY TRÌNH KIỂM THỬ
2.1. Các mơ hình Pentest
2.1.1. OSSTMM – Open Source Security Testing Methodology Manual
Open Source Security Testing Methodology Manual (OSSTMM) là một chuẩn
mở cung cấp một phương pháp kiểm tra an ninh toàn diện cho một hệ thống mạng.
-
Mục đích ra đời
Trong những năm qua do môi trường mạng ngày càng phức tạp như việc điều
khiển thiết bị từ xa qua mạng, ảo hóa, điện tốn đám mây và các loại cơ sở hạ tầng
mới, việc bảo đảm an ninh khơng cịn dừng lại ở các thử nghiệm đơn giản trên máy
bàn, máy chủ, các thiết bị định tuyến. Do đó, từ phiên bản 3, OSSTMM audit đã bao
quát tất cả lĩnh vực bao gồm: yếu tố con người, đường truyền vật lý, thiết bị không dây,
thiết bị viễn thông và dữ liệu mạng.
-
Nổi bật
OSSTMM phù hợp với nhiều hình thức kiểm tra bảo mật như: đánh giá lỗ hổng,
kiểm thử thâm nhập, kiểm thử hộp trắng,....
Phương pháp đánh giá này được thực hiện triệt để và kết quả báo cáo đầy đủ, có
định lượng và đáng tin cậy.
Security of the
information
Physical
Security
Process
Security
OSSTMM
Security in
Internet
Technologies
Wireless
Security
Security in
Communicati
on
Trang 5
Quy trình kiểm thử
-
Phổ dụng
OSSTMM sử dụng phương pháp RAV (Risk Assessment Values) do đó chúng ta
có thể xác định được mức độ rủi ro. Căn cứ vào hoạt động an ninh, kiểm soát sự rủi ro
và các giới hạn, RAV có thể tính tốn được giá trị bảo mật thức tế. Số điểm RAV đưa
ra tương đương với trạng thái an ninh hiện tại của đối tượng.
Mặt khác, những báo cáo của OSSTMM được trình bày dưới dạng STAR nên
đội ngũ quản lý dễ dàng phân tích, đánh giá hệ thống.
Quy trình kiểm thử của OSSTMM dễ dàng phù hợp với những quy định của các
ngành công nghiệp, ngành kinh doanh và pháp luật, chính phủ.
2.1.2. OWASP – Open Web Application Security Project
Open Web Application Security Project (OWASP) đây là dự án được phát triển
bởi cộng đồng mở nhằm nâng cao nhận thức bảo mật ứng dụng trong các tổ chức.
Mục đích ra đời
-
Tổ chức phịng thủ ở các thiết bị mạng không chỉ giúp ngăn chặn mã độc xâm
nhập vào mạng bằng cách khai thác thông tin và lỗ hổng, mà còn giúp chủ động ngăn
cản những truy cập trái phép và không phù hợp vào hệ thống. Tuy nhiên, điều này
không giúp các ứng dụng web tránh khỏi các cuộc tấn cơng, tin tặc có thể tấn công vào
ứng dụng trước khi thực hiện tấn công vào hệ thống. Do vậy, cần có phương pháp kiểm
tra, đánh giá các nguy cơ bảo mật cơ bản trên ứng dụng. OWASP được thực hiện với
mục tiêu đó.
-
Nổi bật
Tổ chức Open Web Application Security Project (OWASP) là tổ chức phi lợi
nhuận, tổ chức này đã đưa ra chuẩn OWASP phục vụ cho công việc pentest hiệu quả
và chi tiết.
Trang 6
Quy trình kiểm thử
Cung cấp các cơng cụ và những tiêu chuẩn về An Tồn Thơng Tin hàng đầu thế
giới. Cung cấp các thư viện và tiêu chuẩn trong việc kiểm sốt, quản lý an ninh thơng
tin.
Cung cấp những tài liệu hàng đầu về bảo mật ứng dụng, pentest, kiểm tra mã
nguồn và lập trình một cách an tồn nhất.
Information
Gathering
Configuration and
Deployment
Management
Testing
Identify
Management
Testing
Authentication
Testing
Authorization
Testing
Session
Management
Testing
Input Validation
Testing
Testing for Error
Handling
Cryptography
Bussiness Logic
Testing
Client Side Testing
-
Phổ dụng
Tiêu chuẩn đánh giá an ninh mạng OWASP cung cấp chi tiết những kỹ thuật
đánh giá giúp pentester tiết kiệm thời gian, có cách thức tiến hành kiểm tra hiệu quả.
OWASP hỗ trợ các công cụ kiểm thử cho webapp tự động như: WebScarab,
Wapiti, JbroFuzz, SQLiX
Ngồi tiêu chuẩn pentest OWASP cịn có tiêu chuẩn đánh giá mạng và hệ thống
OSSTTM, NIST…
Trang 7
Quy trình kiểm thử
2.1.3. ISSAF – Information Systems Security Assessment Framework
-
Mục đích ra đời
ISSAF là một khung được cung cấp bởi Nhóm bảo mật hệ thống thơng tin mở
(OISSG), một tổ chức phi lợi nhuận có trụ sở tại London.
Khi pentesting phát triển, các công ty phải hiểu những dịch vụ nào cần thiết,
những gì họ cần, những tài sản nào dễ bị tổn thương hoặc những mối đe dọa nào họ có
thể gặp phải. Tất cả những điểm đó phải được cả người quản lý và khách hàng của
pentesters hiểu rõ, để giải quyết nhu cầu và nhu cầu của khách hàng
-
Nổi bật
Phương pháp kiểm thử xâm nhập ISSAF kiểm tra an ninh của cả thành phần
mạng, hệ thống hoặc ứng dụng. Phương pháp này tập trung vào những công nghệ cụ
thể như thiết bị định tuyến (router), chuyển mạch (switch), tường lửa, hệ thống phát
hiện và phòng thủ xâm nhập, mạng riêng ảo, máy chủ ứng dụng web, cơ sở dữ liệu,…
Information
Gathering
Penetration
Compromise
Remote
User/Site
Network
Mapping
Gaining Acces
& Privilege
Escalation
Maintaining
Access
Vulnerability
Indentification
Enumerating
Further
Covering
Tracks
Trang 8
Quy trình kiểm thử
-
Phổ dụng
ISSAF nổi tiếng là cung cấp một vị trí có giá trị cao về việc đánh giá các kiểm
soát bảo mật hiện tại (Shrestha, 2012) và để kết nối các nhiệm vụ giữa chúng. Đối với
một pentester mới bắt đầu, nó cung cấp một goldmine. Tuy nhiên các pentester được
đào tạo sẽ muốn tự mình chuyển sang OSSTMM hoặc bất kỳ phương pháp kiểm tra
nào khác nhằm phát huy hết ưu điểm của mỗi phương pháp.
2.2. Xây dựng mơ hình
-
Mơ hình kiểm thử được tham khảo theo mơ hình OWASP (Open Web
Application Security Protocol)
INFORMATION
GATHERING
CONFIGURATION
AND
DEPLOYMENT
MANAGEMENT
TESTING
REPORTING
ERROR
HANDLING
WEB
PENTEST
IDENTIFY
MANAGEMENT
TESTING
AUTHENTICATIO
N AND
AUTHORIZATION
TESTING
INPUT
VALIDATION
TESTING
SESSION
MANAGEMENT
TESTING
Trang 9
Quy trình kiểm thử
1.
Information
Gathering
(thu thập
thơng tin)
Thu thập bằng cơng cụ tìm
kiếm
_ URL trang web, địa chỉ ip,
domain, server, DNS
Kiểm thử máy chủ web
_ Kiểm thử HTTP version,
server, Framework
Kiểm thử file Robots.txt
_ Khai thác những URL nhạy
cảm được ẩn đi
Kiểm thử các ứng dụng trên
máy chủ web
_ Kiểm thử port đang mở,
hosting, DNS server, ReverseIP
Kiểm thử HTTP Header
_ Kiểm thử HTTP request response
Kiểm thử tài nguyên trang
web
_ Kiểm thư danh sách các
trang web, file mở rộng
Kiểm thử các Framework
_ Kiểm thử cookies, source
code
Trang 10
Quy trình kiểm thử
2.
Configuration
and
Deployment
Management
Testing
(kiểm thử cấu
hình và quản
lý)
Kiểm thử cấu hình mạng/ cơ
sở hạ tầng
_ Kiểm thử địa chỉ ip, port
đang mở, lỗ hổng có thể bị
tấn cơng
Kiểm thử cấu hình nền tảng
ứng dụng
_ Kiểm thử những lỗi trong
máy chủ
Kiểm thử xữ lý phần mở rộng
_ Kiểm thử file Robots.txt
Kiểm thử các phương thức
HTTP
_ Kiểm thử những phương
thức HTTP được hỗ trợ
Kiểm thử HSTS
_ Kiểm thử HTTP Strict
Transport Security
Kiểm thử chính sách tên
miền
_ Kiểm thử file
crossdomain.xml
Trang 11
Quy trình kiểm thử
3. Identify
Management
Testing
(kiểm thử
quản lý nhận
dạng)
Kiểm thử quy trình đăng ký
người dùng
Kiểm thử khả năng liệt kê tài
khoản và đốn tài khoản yếu
_Kiểm thử quy trình đăng ký là
thủ cơng hay tự động.
_Nếu thủ cơng có thể bỏ qua
bước này.
_Nếu tự động kiểm tra các
thông tin được yêu cầu dùng
để đăng ký.
_ Kiểm thử khả năng đoán tài
khoản yếu.
_ Kiểm thử chính sách đặt tên
tài khoản.
_Cơ chế sử dụng thông tin
đăng nhập (email,sdt...).
_ Kiểm thử khả năng liệt kê
tên tài khoản tồn tại.
_Xem phản hồi của website
với tên tài khoản hợp lệ và tên
tài khoản không hợp lệ.
Trang 12
Quy trình kiểm thử
4.
Authentication
Testing
(kiểm thử xác
thực)
Kiểm thử đường truyền thơng
tin đăng nhập
_ Kiểm thử phương thức
truyền tin là GET hay POST
_ Kiểm thử đường truyền
khơng mã hóa http hay có mã
hóa https
Kiểm thử mật khẩu của tài
khoản được tạo mới
_ Mật khẩu được cấp từ
+ Hệ thống tự động
+ Quản trị viên
+ Người dùng
Kiểm thử cơ chế khóa tài
khoản vi phạm
_ Kiểm thử số lần đăng nhập
thất bại tối đa.
_ Kiểm thử cơ chế xử phạt.
_ Kiểm thử cơ chế mở khóa
tài khoản.
Kiểm thử độ an tồn khi tài
khoản được lưu trong browser
_ Kiểm thử thơng tin đăng
nhập có chứa trong cookie
khơng.
_ Kiểm tra hàm mã hóa.
_ Kiểm thử các request có
chứa thơng tin đăng nhập.
Kiểm thử vùng nhớ đệm của
browser
_ Kiểm thử website có u
cầu browser khơng lưu trữ các
trang có chứa thơng tin nhạy
cảm khơng?
_ u cầu đăng nhập lại đối
với các trang chứa thông tin
nhạy cảm.
Kiểm tra chính sách đặt mật
khẩu
_ Kiểm thử các thơng tin nào
được phép và không được
phép để đặt làm mật khẩu.
_ Người dùng bắt buộc sử
dụng các dạng ký tự nào trong
mật khẩu.
Kiểm tra câu hỏi và câu trả lời
bí mật của người dùng
_ Kiểm thử độ phức tập của
câu hỏi bí mật và câu trả lời bí
mật.
_ Câu hỏi và câu trả lời do ai
cung cấp ?
Trang 13
Quy trình kiểm thử
5.
Authorization
Testing
(kiểm thử
phân quyền)
6. Session
Management
Testing
(kiểm thử
phiên quản
lý)
Kiểm thử tham số truyền tải
thư mục
_Kiểm thử những tham số có
trong URL trang web
Kiểm thử vượt phân quyền
_Kiểm thử những trang có thể
vượt phân quyền
_Kiểm tra cookies
Kiểm thử leo thang phân
quyền
_Kiểm thử URL của trang
web
Kiểm thử các thuộc tính của
cookies
_ Secure attributes
_ HTTPonly attributes
_ Domain attributes
_ Path attributes
_ Expires attributes
Kiểm thử cookies xác thực
_ Kiểm thử cơ chế phát sinh
cookie.
_ Kiểm thử cookie trước khi
đăng nhập và sau khi đăng
nhập.
Kiểm thử chức năng đăng
xuất và hạn sử dụng của
session
_ Kiểm thử cookie sau khi
đăng xuất.
+ Cookie cịn hiệu lực
khơng?
+ Có thuận lợi cho người
dùng sử dụng khơng ?
+ Cookie có được tạo mới
khơng ?
+ Cookie cũ có thể sử dụng
lại khơng?
_ Kiểm thử hạn sử dụng của
session.
+ Hạn sử dụng của session ?
+ Hạn sử dụng của session
khi khơng có tương tác ?
Trang 14
Quy trình kiểm thử
7. Input
Validation
Testing
(kiểm thử giá
trị đầu vào)
8. Error
Handling
(kiểm thử xử
lý lỗi)
Kiểm thử Cross Site Scripting
- XSS
_ Kiểm thử các tham số hoặc
các lỗ hổng các thể chèn XSS
Kiểm thử SQL Injection
_ Kiểm thử lỗ hổng SQL
injection
Kiểm thử LDAP Injection
_ Kiểm thử lỗ hổng LDAP
Injection
Kiểm thử XML Injection
_ Kiểm thử lỗ hổng XML
Injection
Kiểm thử trang thông báo lỗi
_ Kiểm thử trang thông báo lỗi
ở những mục nào ?
Kiểm thử xữ lý lỗi trực tiếp
_ Kiểm thử xử lý lỗi ở những
trường hợp nào ?
Trang 15
Thực nghiệm web pentest
CHƯƠNG 3: THỰC NGHIỆM WEB PENTEST
3.1.
Giới thiệu đối tượng pentest
3.1.1. Thông tin chung:
Đối tượng penetration testing là trang web:
Trong domain có phần hậu tố là “edu.vn” người kiểm tra có thể thấy đây là trang web
thuộc về giáo dục và đào tạo
Trang web là cổng thông tin đào tạo của trường và thuộc quyền quản lý bởi trường Đại
học Dân lập Ngoại ngữ - Tin học TP.Hồ Chí Minh tại địa chỉ 155 Sư Vạn Hạnh nồi
dài, phường 13, quận 10, TP. Hồ Chí Minh
Trang web có chức năng chủ yếu tương tác với sinh viên về những vấn đề như: đăng
ký môn học, xem thời khóa biểu, học phí, lịch thi, điểm thi,…
Tên miền trang web được đăng ký vào ngày 18/07/2003 và hết hạn vào ngày
18/07/2024 có domain là huflit.edu.vn. Trong cùng domain đó có những subdomain
như: daotao.huflit.edu.vn (cổng thơng tin của trường đào tạo), fit.huflit.edu.vn (trang
web khoa công nghệ thông tin), lib.huflit.edu.vn (trang web quản lý thư viện)
3.2.
Thực nghiệm
Là quá trình kiểm nghiệm thực tế các lý thuyết được công bố trong mô hình kiểm thử
3.2.1. Thu thập thơng tin
3.2.1.1. Kiểm tra bằng cơng cụ tìm kiếm
Sử dụng cơng cụ tìm kiếm online
Trang 16
Thực nghiệm web pentest
Trang web là cổng thông tin đào tạo của trường Đại
Học Ngoại Ngữ - Tin Học Thành Phố Hồ Chí Minh trang web này được xây
dựng ra chủ yếu là dùng để tương tác với sinh viên về những vấn đề như đăng
ký môn học, xem thời khóa biểu, xem học phí,…
Thơng tin trang web
o Trang web là 1 subdomain của trang
chung với những trang khác như
o Được thành lập ngày 18/07/2003 hết hạn ngày 18/07/2024
o Đăng ký bởi công ty TNHH PA Việt Nam
o Trang
web
có
DNS
server
là
reverse2.digipower.net.vn
và
reverse1.digipower.net.vn. Reverse DNS là mx5157.digipower.com.vn
o Công ty cung cấp dịch vụ internet là Online Data Service
Trang 17
Thực nghiệm web pentest
3.2.1.2. Kiểm thử máy chủ web
Kiểm thử HTTP header
- Công nghệ trang web đang sử dụng:
o Hệ điều hành: Windows server
o Web Framework: ASP.NET version 2.0
Trang 18
Thực nghiệm web pentest
o Server: Microsoft – IIS/8.5
o Thư viện Javascript: jQuery 2.2.3
o HTTP version: HTTP/1.1
Rủi ro: Kẻ tấn cơng có thể sử dụng những thơng tin này để thực hiện những
cuộc tấn công đến trang web
3.2.1.3. Kiểm thử ứng dụng trên máy chủ web
Kiểm thử file robots.txt
o File robots.txt là file cho phép và ngăn chặn quyền truy cập
của các bot tìm kiếm vào trong trang web
Kiểm thử các port đang sử dụng
Nmap -sS daotao.huflit.edu.vn
Trang web sử dụng những cổng 80 (HTTP), cổng 1433 (MS SQL Server),…
Trang web sử dụng cơ sở dữ liệu SQL Server 2014 trên cổng 1433
Trang 19
Thực nghiệm web pentest
3.2.1.4. Kiểm thử HTTP Request – Response
HTTP header truyền tải những thơng tin như: trình duyệt người dùng, kiểu nội
dung, cookies và được trả về công nghệ máy chủ đang sử dụng
3.2.1.5. Kiểm thử tài nguyên trang web
Tìm những trang web con trong trang web
Trang 20
Thực nghiệm web pentest
Việc người kiểm thử map các đường dẫn con của trang web giúp cho việc quản
lý một cách bao qt hơn khơng bỏ sót
Trang 21