Tải bản đầy đủ (.docx) (49 trang)

Thực tập tốt nghiệp1

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.49 MB, 49 trang )

TRƯỜNG ĐẠI HỌC ĐIỆN LỰC
KHOA CÔNG NGHỆ THÔNG TIN

BÁO CÁO THỰC TẬP TỐT NGHIỆP

ĐỀ TÀI: KIỂM THỬ LỖ HỔNG BẢO MẬT WEB
BẰNG CÔNG CỤ ACUNETIX
Sinh viên thực hiện

:

Giảng viên hướng dẫn :
Ngành

: CƠNG NGHỆ THƠNG TIN

Chun ngành

: AN NINH MẠNG

Lớp

:

Khóa

:

Hà Nội, tháng 10 năm 2023



PHIẾU CHẤM ĐIỂM

Họ và tên

Họ và tên giảng viên
Giảng viên chấm 1:

Giảng viên chấm 2:

Chữ Ký

Chữ ký

Điểm

Ghi chú


LỜI CẢM ƠN
Đầu tiên, em xin gửi lời cảm ơn đến thầy cô trong khoa Công nghệ thông tin
và đặc biệt là giảng viên hướng dẫn của em đã nhiệt tình hỗ trợ và tạo điều kiện để
em có thể hồn thành kì thực tập và bản báo cáo này.
Trong thời gian ngắn thực tập và báo cáo, không thể tránh khỏi những thiếu
xót do kỹ năng và kiến thức còn hạn chế, em rất mong nhận được sự nhận xét của
thầy cơ để em cịn thể rút ra được kinh nghiệm cho bản thân và công việc.
Đặc biệt, em cũng xin gửi lời cảm ơn tới Công Ty TNHH người đã chỉ dẫn
và quản lý thực tập và tạo điều kiện cho em trong thời gian em tham gia thực tập
tại dự án.
Chỉ trong một thời gian ngắn, nhưng nhờ sự chỉ dẫn nhiệt tình của các anh
chị đồng nghiệp, em đã tiếp thu được những kiến thức quan trọng để có thể kiểm

thử cho dự án. Chân thành cảm ơn giám đốc và các đồng nghiệp trong công ty đã
bỏ ra nhiều thời gian, công sức để hướng dẫn em hoàn thành đợt thực tập này.


MỤC LỤC
LỜI NÓI ĐẦU...........................................................................................................1
CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN VỀ CƠNG TY......................................2
1.1. Khái qt về cơng ty..........................................................................................2
1.2. Cơ cấu tổ chức...................................................................................................2
1.2.1. Trung tâm Công nghệ thông tin.............................................................2
1.2.2. Trung tâm vận hành...............................................................................3
1.2.3. Khối văn phòng......................................................................................3
1.3. Một số sản phẩm và giải pháp của công ty hiện nay.........................................3
1.4. Kết luận chương 1.............................................................................................4
CHƯƠNG 2. TỔNG QUAN VỀ KIỂM THỬ BẢO MẬT WEB.............................5
2.1. Tổng quan về kiểm thử bảo mật website............................................................5
2.1.1. Tầm quan trọng của Bảo mật ứng dụng web...........................................5
2.1.2. Nguyên tắc cơ bản của Bảo mật ứng dụng web......................................6
2.1.3. Quy trình Bảo mật ứng dụng web...........................................................7
2.2. Tổng quan về lỗ hổng bảo mật và cơng nghệ dị qt lỗ hổng...........................9
2.2.1. Lỗ hổng bảo mật......................................................................................9
2.2.2. Top 10 OWASP......................................................................................9
2.2.3. Cơng nghệ dị qt lỗ hổng...................................................................12
2.2.4. Các hình thức kiểm thử bảo mật..........................................................13
CHƯƠNG 3. TÌM HIỂU VỀ LỖ HỔNG BẢO MẬT WEB..................................15
3.1. Cross-Site Scripting..........................................................................................15
3.1.1. Khái niệm..............................................................................................15
3.1.2. Reflected XSS......................................................................................15
3.1.3 Stored XSS.............................................................................................16
3.2. SQL Injection...................................................................................................17

3.2.1 Khái niệm...............................................................................................17
3.2.2. Error-based SQL injection....................................................................18
3.2.3 Union-based SQL injection....................................................................18
3.2.4. Blind SQL injection..............................................................................18
3.3.1 khái niệm........................................................................................................19
3.3.2. Lỗ hổng sử dụng các ký tự đặc biệt...............................................................19
3.3.3. Lỗ hổng sử dụng các hàm hệ điều hành........................................................20
CHƯƠNG 4. DEMO KIỂM THỬ BẢO MẬT VÀ CÁCH KHẮC PHỤC
.................................................................................................................................21
4.1. Công cụ Acunetix.............................................................................................21
4.1.1 Khái niệm
.......................................................................................21
4.1.2 Acunetix sử dụng các kỹ thuật quét.......................................................21
4.2. Cài đặt Acunetix...............................................................................................21


4.3. Lỗ hổng Cross-Site Scripting trên Acunetix....................................................28
4.4. Cách khắc phục lỗ hổng Cross-Site Scripting..................................................30
4.5. Lỗ hổng SQL Injection trên Acunetix..............................................................32
4.6. Cách khắc phục lỗ hổng SQL Injection............................................................35
4.7. Lỗ hổng directory traversa...............................................................................36
4.8.Cách khắc phục lỗ hổng directory traversa.......................................................39
Kết luận...................................................................................................................40


DANH MỤC HỈNH ẢNH

Hình 3. 1 Sơ đồ mơ phỏng lỗ hổng Rejlechted xss…………………………….16
Hình 3.2 Sơ đồ mơ phỏng lỗ hổng Stored xss…………. ……………………..17
Hình 4.1 Tải máy ảo VN ware.….………………………………. ………….....22

Hình 4.2 Cài đặt VM ware………………………………………………………22
Hình

4.3

tải

Kaili

Linux……………….

………………………………………...23
Hình 4.4 Cài Kali trên máy ảo………….………………………………….
……23
Hình 4.5. Chọn file ios kali……………………………………………..….
……24
Hình 4.6 Thiết lập thơng tin cho Kali……………………………….
…………...25
Hình 4.7 Tải Acunetix trên kali……………………………………………..
……25
Hình 4.8 Lệnh cài đặt Acunetix ……………………………….……. …………..26
Hình 4.9 Chọn Y để đồng ý cài đặt …………………………………. ………….26
Hình 4.10 Cài đặt thành cơng Acunetix……………………….………. ………..27
Hình 4.11 Gắn địa chỉ Host…………………………………………..…. ……....27
Hình 4.12. Giao diện trên HOST…………………………..………….. ………..28


DANH MỤC TỪ VIẾT TẮT
HMT.,JSC


HA NOI MEDIA TECHNOLOGY JOINT STOCK
COMPANY

AI

Artificial Intelligence

SQL

Structured Query Language

XSS

Cross-site Scripting

CSRF

Cros Site Request Forgery

NVD

National Vulnerability Database

DNS

Domain Name System

DHCP

Dynamic Host Configuration Protocol


OWASP

Open Web Application Security Project

LDAP

Lightweight Directory Access Protocol


LỜI NĨI ĐẦU
Trong thời đại cơng nghệ thơng tin phát triển mạnh mẽ, các ứng dụng web
đóng vai trị quan trọng trong đời sống hàng ngày và hoạt động kinh doanh của con
người. Sự phổ biến của ứng dụng web cũng đồng nghĩa với việc chúng trở thành
mục tiêu lý tưởng cho các hacker để khai thác lỗ hổng bảo mật, gây ra thiệt hại cho
cả người dùng và doanh nghiệp.
Theo báo cáo của Verizon- tập đồn viễn thơng tại mỹ,thống kê rằng các
cuộc tấn công ứng dụng web chiếm 26% tổng số vi phạm, khiến nó trở thành kiểu
tấn công phổ biến thứ hai sau tấn công phần mềm độc hại (malware) .
Theo số liệu từ Cục An toàn thơng tin, trong 11 tháng đầu năm 2022, đã có
tới 11.213 cuộc tấn công mạng hướng vào Việt Nam, tăng 44,2% so với cùng kỳ
năm trước. Trong đó, có 3.930 cuộc tấn công giả mạo (phishing), 1.524 cuộc tấn
công thay đổi nội dung (deface), 5.759 cuộc tấn công phần mềm độc hại
(malware).
Do đó vấn đề đặt ra là cần có công tác kiểm thử bảo mật thật kỹ lưỡng nhằm
ngăn chặn các lỗi hay hỏng hóc cịn tiềm tàng bên trong ứng dụng web mà ta chưa
kịp nhận ra. Việc kiểm thử bảo mật là một hoạt động giữ vai trò rất quan trọng để
đảm bảo chất lượng và là hoạt động mang tính sống cịn trong các dự án sản . Vì
vậy, kiểm thử bảo mật đã trở thành quy trình bắt buộc trong các dự án phát triển
phần mềm trên thế giới. Và đó cũng là lí do em chọn theo đuổi kiểm thử bảo mật .


1


CHƯƠNG 1. GIỚI THIỆU TỔNG QUAN VỀ CÔNG TY
1.1. Khái quát về công ty
Công ty là đơn vị phát triển các sản phẩm công nghệ doanh nghiệp đã và
đang triển khai tại các tập đoàn - doanh nghiệp lớn nhất trải dài ở các lĩnh vực:
network, dịch vụ doanh nghiệp, web, phần mềm ... Với các sản phẩm phục vụ công
tác quản lý nhà nước cũng như các nghiệp vụ đa dạng của doanh nghiệp, cơng ty
ln có nguyện vọng đồng hành với những nhân sự có sự đam mê về cơng nghệ
chun sâu mang tính đột phá và giải quyết các bài tốn thu thập khai thác trên quy
mơ dữ liệu siêu lớn
1.2. Cơ cấu tổ chức
Với đặc thù mơ hình doanh nghiệp là loai hình cơng ty cổ phần. Sơ đồ bộ
máy hoạt động của công ty bao gồm : Ban giám đốc, khối văn phịng, trung tâm
cơng nghệ, trung tâm vận hành.

1.2.1. Trung tâm Công nghệ thông tin
R&D (Nghiên Cứu và Phát Triển): Phòng R&D thường tập trung vào việc
nghiên cứu và phát triển sản phẩm và dịch vụ mới. Chức năng chính là đảm bảo sự
đổi mới và cải tiến liên tục để cạnh tranh trên thị trường.
TechCore (Trung Tâm Cơng Nghệ): TechCore có nhiệm vụ quản lý và duy
trì hệ thống cơng nghệ thơng tin của công ty, bao gồm hạ tầng mạng, máy chủ, và
phần mềm. Chức năng chính là đảm bảo hoạt động ổn định của hệ thống và hỗ trợ
các phòng ban khác trong việc sử dụng công nghệ.
Product (Phát Triển Sản Phẩm): Phòng Product chịu trách nhiệm phát triển
sản phẩm hoặc dịch vụ của công ty. Chức năng bao gồm lập kế hoạch phát triển
sản phẩm, thiết kế, thử nghiệm, và đưa sản phẩm ra thị trường.


2


1.2.2. Trung tâm vận hành
Data Analyst (Nhà Phân Tích Dữ Liệu): Phịng Data Analyst tập trung vào
phân tích dữ liệu để đưa ra thông tin quan trọng để hỗ trợ quyết định. Chức năng
chính là thu thập, xử lý và phân tích dữ liệu để đưa ra báo cáo và dự đốn.
Truyền Thơng Marketing: Phịng Truyền thơng Marketing quản lý chiến
dịch quảng cáo và tiếp thị để tạo ra nhận diện thương hiệu và thu hút khách hàng.
Chức năng chính là lập kế hoạch quảng cáo, quản lý mối quan hệ với khách hàng,
và xây dựng chiến lược tiếp thị.
1.2.3. Khối văn phịng
Kế Tốn: Phịng Kế tốn có nhiệm vụ quản lý tài chính và kế tốn của cơng
ty. Chức năng chính bao gồm theo dõi, báo cáo và kiểm sốt tài chính, lập báo cáo
tài chính, và đảm bảo tuân thủ các quy định liên quan đến thuế và kế tốn.
HCNS (Nhân Sự): Phịng HCNS quản lý và chăm sóc nguồn nhân lực của
cơng ty. Chức năng bao gồm tuyển dụng, đào tạo, quản lý nhân viên, giải quyết các
vấn đề liên quan đến lao động, và duy trì mơi trường làm việc tích cực.
1.3. Một số sản phẩm và giải pháp của công ty hiện nay
- Quảng cáo và truyền thông : Quảng cáo trực tuyến trên di động và Internet,
xuất bản báo điện tử : Congnghe.vn, nghiên cứu thị trường đối thủ , hỗ trợ MKT,
xử lý khủng hoảng: SocialBeat.vn
- Giải pháp trên nền tảng mobile: Hệ thống quảng cáo theo ngữ cảnh trên
điện thoại thông minh FlexDistro, Ứng dụng và trò chơi di động
- Giải pháp công nghệ thông tin: Hệ thống lưu trữ và xử lý dữ liệu lớn như
Splunk, Icata , dịch vụ VAS như VOlympic, VNMStore , giải pháp quản lý giám
sát trang tin điện tử như mNews, giải pháp phân tích dữ liệu MXH mSocial, hệ
thống CSKH đa kênh qua internet như Socialcare, giải pháp iCCRating đánh giá
chất lượng CSKH qua tổng đài điện thoại sử dụng nhận dạng và phân tích giọng
nói, hệ thống xử lý khủng hoảng MXH , giải pháp máy tìm kiếm quy mơ lớn

- Giải pháp bảo mật : là kiểm thử các website của công ty và trên những
khách hàng đang sử dụng dịch vụ và giải pháp của công ty, viết báo cáo lỗ hổng đề
3


xuất những giaipr pháp khắc phục kịp thời tránh gây thất thoát dữ liệu của khách
hàng

1.4. Kết luận chương 1
Chương 1 đã giới thiệu tổng quan về Công ty bao gồm các nội dung sau: Khái
quát về công ty, Cơ cấu tổ chức, một số sản phẩm kinh doanh chính
Qua chương này, chúng ta có thể thấy rằng là một công ty truyền thông và
công nghệ hàng đầu Việt Nam, với quy mô lớn và đa dạng về sản phẩm và dịch vụ.
Công ty đã đạt được nhiều thành tựu đáng kể trong q trình phát triển, góp phần
thúc đẩy sự phát triển của ngành truyền thông và công nghệ Việt Nam. .Tiếp theo
là Chương 2 sẽ giới thiệu các kiến thức nền tảng về kiểm thử bảo mật ứng dụng
web.

4


CHƯƠNG 2. TỔNG QUAN VỀ KIỂM THỬ BẢO MẬT WEB
2.1. Tổng quan về kiểm thử bảo mật website
Bảo mật ứng dụng web là một phương pháp để bảo mật dữ liệu trên trang
web bằng cách chặn các điểm cuối của nó khỏi truy cập trái phép. Bảo mật ứng
dụng web hiệu quả ngăn chặn thời gian chết. Ngay cả khi ứng dụng đang bị tấn
cơng, nó vẫn hoạt động mà không gây nguy hiểm cho trải nghiệm người dùng.
2.1.1. Tầm quan trọng của Bảo mật ứng dụng web
Bảo mật ứng dụng web đảm bảo tính bí mật, tồn vẹn và sẵn sàng của thông
tin cũng như đảm bảo khả năng hoạt động ổn định của ứng dụng web. Nếu bảo mật

khơng được thực hiện đúng cách, ứng dụng web có thể trở thành một mục tiêu dễ
bị tấn công và gây thiệt hại lớn cho tổ chức và người dùng .Tầm quan trọng của
Bảo mật ứng dụng web được thể hiện qua:
- Đảm bảo bảo mật cho thông tin quan trọng: Các ứng dụng web thường
chứa thông tin nhạy cảm như thông tin cá nhân của người dùng, dữ liệu tài chính,
thơng tin thương mại, và nhiều loại dữ liệu quan trọng khác. Bảo mật ứng dụng
web đảm bảo rằng thông tin này không bị truy cập trái phép, thay đổi hoặc đánh
cắp bởi các kẻ tấn công.
- Ngăn chặn các hình thức tấn cơng đa dạng: Internet là một mơi trường
rộng lớn với nhiều hình thức tấn cơng khác nhau như tấn công từ xa, tấn công
DdoS và nhiều loại tấn cơng khác. Bảo mật ứng dụng web đóng vai trò quan trọng
trong việc ngăn chặn và phát hiện các cuộc tấn công này trước khi chúng gây hại
cho ứng dụng và dữ liệu.
- Xây dựng niềm tin từ doanh nghiệp và người dùng: Khi doanh nghiệp đảm
bảo rằng ứng dụng web của họ được bảo vệ một cách chặt chẽ, họ xây dựng được
niềm tin với khách hàng và đối tác kinh doanh. Điều này thể hiện cam kết của họ
đối với bảo mật thông tin và sẵn sàng bảo vệ quyền riêng tư của người dùng.
Ngược lại, người dùng cảm thấy an tâm khi sử dụng các dịch vụ trực tuyến và chia
sẻ thông tin cá nhân mà không phải lo lắng về rủi ro bị lộ dữ liệu.
5


- Tuân thủ các quy định và pháp lý: Nhiều ngành công nghiệp yêu cầu doanh
nghiệp tuân thủ các quy định bảo mật và pháp lý, chẳng hạn như GDPR, HIPAA
(Luật Đảm bảo Khả năng Truy cập và Bảo vệ Thơng tin Y tế) và PCI DSS (Tiêu
chuẩn An tồn Dữ liệu Thẻ thanh toán). Bảo mật ứng dụng web giúp đảm bảo tuân
thủ các quy định này, ngăn ngừa các khoản phạt pháp lý và tạo danh tiếng tích cực.
- Tạo trải nghiệm người dùng tin cậy: Người dùng mong đợi rằng họ có thể
sử dụng các dịch vụ trực tuyến một cách an toàn và bảo mật, mà không lo lắng về
việc thông tin cá nhân của họ bị đánh cắp hoặc sử dụng sai mục đích. Bảo mật ứng

dụng web giúp đáp ứng kỳ vọng này bằng cách áp dụng các biện pháp bảo mật
hiệu quả như xác thực hai yếu tố và giám sát hoạt động đáng ngờ.

2.1.2. Nguyên tắc cơ bản của Bảo mật ứng dụng web
Ngun tắc tấn cơng: Tìm hiểu và xác định các phương pháp tấn cơng để
xây dựng biện pháp phịng ngừa. Các phương pháp tấn công phổ biến bao gồm :
- SQL Injection: Cuộc tấn công này liên quan đến việc chèn mã SQL độc hại
vào các trường nhập liệu của ứng dụng web để truy cập hoặc thay đổi cơ sở dữ
liệu..
- XSS: Chèn mã JavaScript độc hại vào trang web hoặc ứng dụng web để
thực hiện các hành động khơng đáng tin cậy trên trình duyệt của người dùng cuối.
- CSRF: Lừa đảo người dùng thực hiện các hành động không mong muốn
trên trang web hoặc ứng dụng web khi họ đã đăng nhập.
- Mã độc: Chèn mã độc vào ứng dụng web để kiểm soát hoặc thực hiện các
hành động độc hại.
-Tấn công từ chối dịch vụ (DoS): Làm quá tải hệ thống bằng cách tạo ra một
lượng lớn yêu cầu không hợp lệ, làm cho ứng dụng web khơng thể hoạt động bình
thường.

6


Nguyên tắc phòng thủ: Xác định và triển khai các biện pháp bảo vệ để ngăn
chặn, phát hiện và đáp ứng lại các cuộc tấn công. Các biện pháp bảo vệ phổ biến
bao gồm Cài đặt tường lửa, Mã hóa dữ liệu và Kiểm tra và xác thực người dùng.
- Cài đặt tường lửa: Ngăn chặn và kiểm soát lưu lượng mạng khơng mong
muốn hoặc độc hại.
- Mã hóa dữ liệu: Mã hóa dữ liệu đảm bảo rằng dữ liệu được truyền tải qua
mạng không thể đọc được nếu bị nắm bắt bởi kẻ tấn công.
- Kiểm tra và xác thực người dùng: Xác định danh tính người dùng và đảm

bảo họ có quyền truy cập chỉ định.
Nguyên tắc bảo mật thông tin: Nguyên tắc này tập trung vào việc đảm bảo
tính bí mật và tồn vẹn của thơng tin trong quá trình lưu trữ, truyền tải và xử lý
trên ứng dụng web.. Các biện pháp bảo mật thông tin phổ biến bao gồm Mã hóa dữ
liệu, Sử dụng giao thức an tồn và Quản lý chính sách truy cập.
- Mã hóa dữ liệu: Mã hóa đảm bảo rằng thơng tin được lưu trữ và truyền tải
một cách an toàn, ngăn chặn truy cập trái phép.
- Sử dụng giao thức an toàn: Sử dụng giao thức như HTTPS để đảm bảo an
tồn trong q trình truyền tải thơng tin.
- Quản lý chính sách truy cập: Điều này bao gồm quản lý quyền truy cập của
người dùng và đảm bảo rằng họ chỉ có quyền truy cập vào những phần thơng tin
cần thiết.

2.1.3. Quy trình Bảo mật ứng dụng web
Quy trình bảo mật ứng dụng web là một quá trình liên tục và bao gồm nhiều
bước quan trọng để đảm bảo tính an tồn và bảo mật của ứng dụng web.
1. Đánh giá rủi ro: Bước đầu tiên trong quy trình bảo mật ứng dụng web là
xác định và đánh giá các rủi ro bảo mật tiềm ẩn trong ứng dụng. Điều này đòi hỏi
việc xem xét kỹ lưỡng các mối đe dọa, lỗ hổng và điểm yếu có thể bị khai thác

7


trong quá trình hoạt động của ứng dụng. Các bước cụ thể trong quá trình này bao
gồm:
- Xác định các loại tấn cơng có thể xảy ra, bao gồm cả các tấn công phổ biến
- Phân loại các rủi ro bảo mật theo mức độ nghiêm trọng và ảnh hưởng đối
với ứng dụng.
- Đánh giá khả năng tấn công và xác định các điểm yếu có thể bị khai thác.
2. Thiết kế bảo mật: Sau khi xác định rủi ro, quá trình tiếp theo là xây dựng

một thiết kế bảo mật cho ứng dụng web. Thiết kế này phải dựa trên các yêu cầu cụ
thể và đánh giá rủi ro trước đó. Các bước cụ thể trong q trình này bao gồm:
- Lập kế hoạch cho kiến trúc hệ thống bảo mật, bao gồm việc xác định cách
thức tổ chức hệ thống để đảm bảo an toàn.
- Xác định và triển khai quản lý danh sách truy cập và quyền hạn người dùng
sao cho chỉ những người được ủy quyền mới có thể truy cập vào các phần quan
trọng của ứng dụng.
3. Triển khai và kiểm tra:Sau khi thiết kế được hồn tất, q trình triển khai
và kiểm tra bảo mật bắt đầu. Các biện pháp bảo mật được thiết kế phải được triển
khai và kiểm tra để đảm bảo rằng chúng hoạt động đúng như mong đợi. Các bước
trong quá trình này bao gồm:
- Thực hiện triển khai các biện pháp bảo mật đã thiết kế, bao gồm cài đặt các
tường lửa, mã hóa dữ liệu, và xác thực người dùng.
- Tiến hành kiểm tra tích hợp để đảm bảo rằng các biện pháp bảo mật hoạt
động một cách hiệu quả. Kiểm tra này có thể bao gồm kiểm tra lỗ hổng bảo mật
định kỳ và kiểm tra thâm nhập.
4. Giám sát và phản ứng:Quá trình giám sát là một phần quan trọng của bảo
mật ứng dụng web. Điều này đòi hỏi việc theo dõi liên tục để theo dõi hoạt động
của ứng dụng và phát hiện các hành vi bất thường. Các bước trong quá trình này
bao gồm:
- Thực hiện giám sát liên tục để theo dõi các sự kiện và hoạt động trong ứng
dụng web.
8


- Phản ứng kịp thời để xử lý các sự cố bảo mật và triển khai các biện pháp
sửa chữa hoặc nâng cấp bảo mật.
5. Đào tạo và tạo ý thức:Cuối cùng, quy trình bảo mật ứng dụng web cũng
bao gồm việc đào tạo nhân viên và người dùng về các nguy cơ bảo mật, cách thức
phòng ngừa và ứng phó với các cuộc tấn cơng.

2.2. Tổng quan về lỗ hổng bảo mật và cơng nghệ dị qt lỗ hổng
2.2.1. Lỗ hổng bảo mật
Các loại lỗ hổng bảo mật:
Lỗ hổng hệ điều hành: Đây là các lỗ hổng xuất phát từ hệ điều hành máy
tính, bao gồm các hệ điều hành như Linux, Windows và macOS. Lỗ hổng này
thường xảy ra khi hệ điều hành không thể ngăn chặn hoặc kiểm sốt tốt các tác
động từ bên ngồi hoặc do lỗi trong quá trình phát triển và bảo trì. Kẻ tấn cơng có
thể khai thác các lỗ hổng này để thực hiện các cuộc tấn công từ xa, thâm nhập vào
hệ thống, và thậm chí kiểm sốt hồn tồn máy tính hoặc máy chủ.
Lỗ hổng ứng dụng: Đây là các lỗ hổng xuất phát từ ứng dụng phần mềm cụ
thể, chẳng hạn như trình duyệt web, máy chủ web và cơ sở dữ liệu. Các lỗ hổng
ứng dụng này thường liên quan đến việc nhập dữ liệu khơng an tồn, xử lý lỗi
khơng đúng cách hoặc thậm chí lỗi thiết kế của ứng dụng. Kẻ tấn cơng có thể sử
dụng các lỗ hổng này để tiến hành các cuộc tấn công như SQL Injection, CrossSite Scripting (XSS), và Remote Code Execution. Các cuộc tấn cơng này có thể
dẫn đến việc xâm nhập vào hệ thống, lấy cắp dữ liệu quan trọng hoặc kiểm sốt
ứng dụng.
2.2.2. Top 10 OWASP
Hiện tại, có thể sử dụng Top 10 OWASP để tham khảo với các lỗ hổng web
phổ biến nhất, phiên bản mới nhất tính đến hiện tại là 2021, đây là một nguồn tham
khảo đáng tin cậy nhằm đánh giá và cải thiện độ an toàn của hệ thống. Dưới đây là
Top 10 mà OWASP đã đề cập vào năm 2021:

9


- A01:2021 – Kiểm soát truy cập bị hỏng (Broken Access Control) là một loại
lỗ hổng bảo mật phổ biến trong các ứng dụng web. Nó xảy ra khi các ứng dụng
khơng kiểm sốt đúng cách việc truy cập vào các chức năng và dữ liệu nhạy cảm.
Điều này có thể cho phép kẻ tấn công truy cập vào các tài nguyên mà họ không
được phép truy cập. Các lỗi kiểm sốt truy cập bị hỏng có thể bao gồm việc không

xác thực đầy đủ người dùng, không kiểm tra đủ quyền truy cập và không kiểm tra
đủ chức năng. Để ngăn chặn các lỗ hổng kiểm soát truy cập bị hỏng, các nhà phát
triển nên sử dụng các kỹ thuật như xác thực đầy đủ người dùng, kiểm tra quyền
truy cập và kiểm tra chức năng cho phép tương ứng.
- A02:2021 – Lỗi mật mã (Cryptographic Failures) là một loại lỗ hổng bảo mật
liên quan đến việc sử dụng sai các thuật toán và giao thức mật mã. Điều này có thể
dẫn đến việc tiết lộ thơng tin nhạy cảm hoặc việc thực thi mã độc hại. Các lỗi mật
mã có thể bao gồm việc sử dụng các thuật tốn và giao thức lỗi thời hoặc khơng an
tồn, khơng cấu hình đúng các thuật tốn, giao thức mật mã và khơng quản lý đúng
cách các khóa mật mã. Để ngăn chặn các lỗ hổng mật mã, các nhà phát triển nên sử
dụng các thuật toán và giao thức mật mã an tồn và được cập nhật, cấu hình đúng
các thuật toán, giao thức mật mã và quản lý đúng cách các khóa mật mã.
- A03:2021 – Tiêm (Injection) là một loại lỗ hổng bảo mật phổ biến trong các
ứng dụng web. Nó xảy ra khi dữ liệu khơng đáng tin cậy được gửi đến hệ thống
như một phần của một câu lệnh hoặc câu truy vấn. Kẻ tấn công có thể sử dụng các
kỹ thuật tiêm để thực thi các câu lệnh độc hại hoặc truy vấn dữ liệu nhạy cảm. Các
loại tiêm phổ biến bao gồm SQL Injection, NoSQL Injection, OS Command
Injection và LDAP Injection. Để ngăn chặn các cuộc tấn công tiêm, các nhà phát
triển nên sử dụng các kỹ thuật như tham số hóa truy vấn, sử dụng API an toàn và
kiểm tra đầu vào của dữ liệu.
- A04:2021 – Thiết kế khơng an tồn (Insecure Design) là một loại lỗ hổng bảo
mật mới trong OWASP Top 10 năm 2021. Lỗ hổng tập trung vào các rủi ro liên
quan đến các lỗi thiết kế. Kẻ tấn cơng có thể lợi dụng các lỗi này để có thể khiến
hệ thống hoạt động sai khác hoàn toàn với các lập trình thiết kế ban đầu. Để tránh
10


điều này, cần tuân thủ các yêu cầu an toàn trong thiết kế và không được tự ý tạo ra
các thiết kế chưa được kiểm duyệt từ đầu.
- A05:2021 – Cấu hình bảo mật sai (Security Misconfiguration). Lỗ hổng này

xảy ra khi các quy tắc và phương pháp bảo mật không được tuân thủ, cho phép kẻ
tấn công dễ dàng xâm nhập vào hệ thống thông qua các lỗ hổng. Để tránh điều này
xảy ra, cần triển khai các quy trình cài đặt an tồn, bao gồm triển khai một quy
trình chuẩn và tự động hóa để giảm thiểu thời gian và công sức cần thiết để cài đặt
một môi trường an toàn mới.
- A06:2021 – Các thành phần dễ tổn thương và lỗi thời (Vulnerable and
Outdated Components). Lỗ hổng này xảy ra khi các thành phần hay phần mềm trên
hệ thống không được cập nhật hoặc tồn tại các lỗ hổng bảo mật đã biết nhưng vẫn
chưa được khắc phục bởi nhà cung cấp hoặc người vận hành hệ thống. Để ngăn
chặn lỗ hổng này, cần phải thiết lập một quy trình quản lý vá lỗi, loại bỏ các thành
phần, phần mềm không sử dụng, đồng thời kiểm tra liên tục phiên bản của các
thành phần phía máy khách và máy chủ cùng các thành phần phụ của chúng. Ngoài
ra, cần phải liên tục giám sát các nguồn như Common Vulnerability and Exposures
(CVE) và National Vulnerability Database (NVD) để tìm kiếm các lỗ hổng trong
các thành phần, giúp đảm bảo rằng các thành phần, phần mềm trên hệ thống luôn
được cập nhật và không chứa lỗ hổng bảo mật.
- A07:2021 – Lỗi xác định và xác thực (Identification and Authentication
Failures). Lỗ hổng này xảy ra khi việc xác định danh tính, xác thực và quản lý
phiên làm việc của người dùng bị thiếu sót, dẫn đến nguy cơ bị tấn công liên quan
đến xác thực. Để tránh lỗ hổng này, có thể triển khai xác thực đa yếu tố để ngăn
chặn các cuộc tấn công tự động, cũng như không sử dụng bất kỳ thông tin đăng
nhập mặc định nào cho người dùng quản trị. Việc kiểm tra mật khẩu yếu cũng rất
quan trọng, ví dụ như kiểm tra mật khẩu mới và độ mạnh của mật khẩu đó.
- A08:2021 – Lỗi toàn vẹn phần mềm và dữ liệu (Software and Data Integrity
Failures). Lỗ hổng này là một lỗ hổng mới trong Top 10 và xảy ra khi sự giả định
về tính tồn vẹn của cập nhật phần mềm, dữ liệu quan trọng và đường truyền
CI/CD không được xác minh. Để ngăn chặn lỗ hổng này, cần thực hiện các biện
11



pháp như kiểm tra tính tồn vẹn của mã nguồn và các thành phần phụ thuộc, kiểm
tra tính tồn vẹn của dữ liệu trong quá trình truyền tải hoặc lưu trữ và kiểm tra tính
tồn vẹn của đường truyền CI/CD để chỉ triển khai mã đã được phê duyệt.
- A09:2021 – “Lỗ hổng ghi nhật ký và giám sát bảo mật” (Security Logging and
Monitoring Failures). Lỗ hổng này xảy ra khi khơng có hoặc khơng đủ các nhật ký
và giám sát để phát hiện, xử lý các cuộc tấn công đang diễn ra. Để ngăn chặn điều
này, cần thực hiện các biện pháp như đảm bảo rằng tất cả các sự kiện quan trọng
như đăng nhập, đăng nhập thất bại và các giao dịch có giá trị cao được ghi lại đầy
đủ và đủ ngữ cảnh để phát hiện các hoạt động đáng ngờ hoặc độc hại. Các nhật ký
cần được lưu trữ trong thời gian đủ lâu để phân tích và được tạo ra ở dạng mà các
giải pháp quản lý nhật ký có thể dễ dàng xử lý. Ngoài ra, cần thiết lập giám sát và
cảnh báo hiệu quả để phát hiện và phản ứng nhanh chóng các hoạt động đáng ngờ.
- A10:2021 – Lỗ hổng giả mạo yêu cầu phía máy chủ (Server-Side Request
Forgery). Lỗ hổng này là một lỗ hổng mới trong Top 10 2021. Nó cho phép kẻ tấn
công gửi các yêu cầu giả mạo từ phía máy chủ, có thể dẫn đến tiết lộ thông tin
nhạy cảm hoặc thực hiện các hành động không mong muốn, vượt quá quyền hạn.
Để ngăn chặn điều này, cần thực hiện các biện pháp bảo mật như kiểm tra đầu vào
để ngăn chặn các yêu cầu giả mạo, sử dụng danh sách cho phép để chỉ cho phép
các yêu cầu đến các máy chủ được phép và sử dụng các giải pháp bảo mật như
tường lửa ứng dụng web (WAF) để ngăn chặn các yêu cầu giả mạo.
2.2.3. Cơng nghệ dị qt lỗ hổng
Cơng nghệ dị qt lỗ hổng là một tập hợp các kỹ thuật và công cụ được sử
dụng để phát hiện và xác định các lỗ hổng bảo mật trong hệ thống máy tính, mạng,
và ứng dụng. Lỗ hổng bảo mật có thể hiểu đơn giản là những điểm yếu hoặc lỗ
hổng trong hệ thống có thể bị tấn cơng hoặc khai thác bởi kẻ xâm nhập. Mục tiêu
của cơng nghệ này là tìm ra và đánh dấu những điểm yếu này để có thể thực hiện
các biện pháp bảo mật như vá lỗ hổng, cập nhật phần mềm, và tăng cường an ninh
Lịch sử phát triển cơng nghệ dị qt lỗ hổng:

12



Giai đoạn đầu tiên (trước năm 2000): Giai đoạn này thường sử dụng các kỹ
thuật kiểm tra thủ công để phát hiện lỗ hổng. Các chuyên gia bảo mật thực hiện
phân tích mã nguồn, kiểm tra cấu hình hệ thống và thậm chí mơ phỏng các cuộc
tấn cơng để xác định lỗ hổng.
Giai đoạn thứ hai (2000 - 2010): Giai đoạn này sử dụng các cơng cụ dị qt
tự động để phát hiện lỗ hổng. Các công cụ này sử dụng cơ sở dữ liệu lỗ hổng để so
sánh và phát hiện các lỗ hổng đã biết đến.
Giai đoạn thứ ba (2010 - nay): Cơng nghệ dị qt lỗ hổng hiện đại sử dụng
các kỹ thuật tiên tiến hơn, chẳng hạn như học máy, phân tích hành vi hệ thống, và
phân tích hành vi người dùng. Các phương pháp này giúp phát hiện các lỗ hổng có
khả năng khai thác cao hơn và giảm tỷ lệ báo động sai.
Lợi ích của cơng nghệ dị qt lỗ hổng:
- Giúp bảo vệ hệ thống khỏi các cuộc tấn công mạng: Bằng cách phát hiện và
khắc phục lỗ hổng, công nghệ này giúp ngăn chặn các cuộc tấn cơng mạng trước
khi chúng có thể gây hại cho hệ thống.
- Giảm thiểu thiệt hại do các cuộc tấn cơng mạng: Bằng cách tìm ra và khắc
phục lỗ hổng trước khi kẻ tấn cơng có cơ hội khai thác chúng, cơng nghệ dị qt
giúp giảm thiểu thiệt hại và mất mát dữ liệu.
- Tiết kiệm chi phí bảo mật: Việc dị qt lỗ hổng định kỳ và phản ứng nhanh
chóng giúp tránh được các chi phí đắt đỏ do việc khắc phục sau khi xảy ra cuộc tấn
cơng.
Mặc dù có nhiều lợi ích, cơng nghệ dị qt lỗ hổng cũng có những hạn chế cần
phải xem xét:
- Không thể phát hiện tất cả các lỗ hổng bảo mật: Cơng nghệ này có thể bỏ
lỡ một số lỗ hổng hoặc không phát hiện được những lỗ hổng mới mà chưa có trong
cơ sở dữ liệu lỗ hổng.
- Tỷ lệ báo động sai cao: Cơng nghệ dị qt có thể tạo ra nhiều báo động
sai, địi hỏi nguồn lực để kiểm tra và xác minh các báo động này.


13



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×