Phân Tích Kỹ Thuật Buffer Overflow Trong An Ninh Mạng

Đồ án nghiên cứu đồ án môn phân tích mã độc buffer overflow, áp dụng công nghệ tiên tiến, tối ưu giải pháp kỹ thuật cho bài toán .

Người đăng

Ẩn danh
52
3
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI MỞ ĐẦU

1. CHƯƠNG 1: TỔNG QUAN

1.1. Tổng quan về đồ án

1.2. Nhiệm vụ đồ án

1.3. Cấu trúc đồ án

2. CHƯƠNG 2: GIỚI THIỆU VỀ AN NINH MẠNG

2.1. TÌNH HÌNH AN NINH MẠNG THẾ GIỚI

2.2. TÌNH HÌNH AN NINH MẠNG TẠI VIỆT NAM

2.2.1. Thiếu nhận thức, nhân lực và đầu tư

2.2.2. Tình hình tội phạm

2.2.3. Cần hoàn thiện qui định của pháp luật

2.2.4. Nâng cao nhận thức về an ninh mạng

2.3. CÁC KHÁI NIỆM VÀ THUẬT NGỮ

2.4. CÁCH THỨC THỰC THI MÃ ĐỘC TRONG LỔ HỔNG BUFFER OVERFLOW

3. CHƯƠNG 3: GIỚI THIỆU VỀ KỸ THUẬT BUFFER OVERFLOW

3.1. LỖI BUFFER OVERFLOW VÀ NGUYÊN NHÂN GÂY LỖI

3.2. Mục đích chính của Stack buffer overflow

3.3. Khai thác thư viện malloc()

3.4. Mục đích của việc làm hỏng cấu trúc DLMALLOC

3.5. CÁCH PHÁT HIỆN BUFFER OVERFLOW

3.6. CÁCH PHÒNG TRÁNH BUFFER OVERFLOW

3.6.1. Lựa chọn ngôn ngữ lập trình

3.6.2. Sử dụng thư viện an toàn

3.6.3. Chống tràn bộ đệm trên Stack

3.6.4. Bảo vệ không gian thực thi

3.6.5. Ngẫu nhiên hóa sơ đồ không gian địa chỉ

3.6.6. Kiểm tra sâu đối với gói tin

3.7. Ví dụ file vul

3.7.1. Ví dụ tràn bộ đệm khi dữ liệu nhập vào lớn hơn định mức được phát

3.7.2. Ví dụ shellcode trên linux

4. CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM

4.1. Yêu cầu thực hiện

4.2. Các Bước Triển Khai

TÀI LIỆU THAM KHẢO

Tóm tắt

I. Phân Tích Toàn Diện Kỹ Thuật Buffer Overflow Là Gì

Kỹ thuật Buffer Overflow, hay còn gọi là lỗ hổng tràn bộ đệm, là một trong những điểm yếu bảo mật kinh điển nhưng vẫn còn tồn tại trong nhiều hệ thống phần mềm hiện đại. Lỗi này xảy ra khi một chương trình cố gắng ghi dữ liệu vào một bộ đệm (buffer) với dung lượng lớn hơn khả năng chứa của nó, dẫn đến việc dữ liệu bị ghi đè lên các vùng nhớ liền kề. Hậu quả của việc này vô cùng nghiêm trọng, từ việc làm sập ứng dụng, phá hỏng dữ liệu, cho đến việc cho phép kẻ tấn công thực thi mã độc tùy ý. Để hiểu rõ cơ chế của cuộc tấn công thực thi mã từ xa này, việc nắm vững cấu trúc bộ nhớ của một tiến trình là điều kiện tiên quyết. Một chương trình khi được nạp vào bộ nhớ sẽ được chia thành các phân đoạn chính như Text, Data, BSS, Heap và Stack, mỗi vùng có một chức năng và đặc tính riêng. Trong đó, Stack và Heap là hai mục tiêu chính mà các kỹ thuật khai thác Buffer Overflow nhắm đến. Phân tích sâu về cách thức hoạt động của các vùng nhớ này chính là chìa khóa để hiểu tại sao lỗ hổng tràn bộ đệm lại nguy hiểm và cách thức kẻ tấn công lợi dụng nó để chiếm quyền kiểm soát hệ thống.

1.1. Định nghĩa lỗi tràn bộ đệm trong bảo mật phần mềm

Theo định nghĩa từ các tài liệu nghiên cứu về bảo mật phần mềm, lỗ hổng tràn bộ đệm là một điều kiện bất thường xảy ra khi một tiến trình lưu dữ liệu vượt ra ngoài biên giới của một bộ đệm có chiều dài cố định. Kết quả là dữ liệu thừa có thể ghi đè lên các vùng nhớ liền kề, bao gồm các biến khác, dữ liệu điều khiển luồng, và quan trọng nhất là địa chỉ trả về (return address) của một hàm. Khi địa chỉ này bị thay đổi, kẻ tấn công có thể chuyển hướng luồng thực thi của chương trình đến một đoạn mã độc hại do chúng kiểm soát, thường được gọi là shellcode. Đây là cơ sở cho nhiều cuộc tấn công nguy hiểm, cho phép kẻ tấn công thực thi lệnh trên hệ thống nạn nhân với quyền của ứng dụng bị khai thác.

1.2. Cấu trúc bộ nhớ và vai trò của Stack và Heap

Để thực hiện phân tích Buffer Overflow, việc hiểu rõ kiến trúc bộ nhớ là bắt buộc. Khi một chương trình chạy, bộ nhớ của nó được chia thành nhiều vùng. Vùng Stack hoạt động theo cơ chế LIFO (Last-In, First-Out), được sử dụng để lưu trữ các biến cục bộ, tham số hàm và địa chỉ trả về. Do tính chất phát triển ngược từ địa chỉ cao xuống thấp, Stack trở thành mục tiêu lý tưởng cho kiểu tấn công stack-based buffer overflow. Ngược lại, vùng Heap được dùng để cấp phát bộ nhớ động, phát triển từ địa chỉ thấp lên cao. Các cuộc tấn công vào vùng này, gọi là heap-based buffer overflow, thường phức tạp hơn nhưng cũng có thể dẫn đến việc thực thi mã tùy ý bằng cách ghi đè lên các con trỏ hàm hoặc cấu trúc dữ liệu quản lý heap. Việc đảm bảo an toàn bộ nhớ ở cả hai vùng này là cực kỳ quan trọng.

II. Nguyên Nhân Gốc Rễ Gây Ra Các Lỗ Hổng Tràn Bộ Đệm

Nguyên nhân chính dẫn đến lỗ hổng tràn bộ đệm không nằm ở lỗi thiết kế của hệ điều hành hay phần cứng, mà chủ yếu bắt nguồn từ các thực tiễn lập trình an toàn chưa được tuân thủ nghiêm ngặt. Đặc biệt, việc sử dụng các ngôn ngữ lập trình cấp thấp như C/C++ mà không có cơ chế bảo vệ bộ nhớ tự động đã tạo ra một môi trường thuận lợi cho các lỗ hổng này phát sinh. Các hàm thư viện tiêu chuẩn không an toàn, kết hợp với việc lập trình viên bỏ qua hoặc thực hiện không đầy đủ việc kiểm tra giới hạn đầu vào, là hai yếu tố cốt lõi. Hiểu rõ những nguyên nhân này không chỉ giúp các chuyên gia kiểm thử xâm nhập (pentest) phát hiện ra lỗ hổng mà còn giúp các nhà phát triển xây dựng các ứng dụng có khả năng chống chịu tốt hơn trước các kỹ thuật tấn công Buffer Overflow. Vấn đề này nhấn mạnh tầm quan trọng của việc đào tạo và nâng cao nhận thức về các phương pháp lập trình bảo mật trong toàn ngành công nghiệp phần mềm.

2.1. Lập trình không an toàn với ngôn ngữ lập trình C C

Trong ngôn ngữ lập trình C/C++, nhiều hàm xử lý chuỗi và bộ đệm tiêu chuẩn như strcpy(), strcat(), gets(), và sprintf() vốn không thực hiện kiểm tra biên (bounds checking). Các hàm này chỉ sao chép dữ liệu từ nguồn đến đích cho đến khi gặp ký tự null-terminator, mà không quan tâm đến kích thước đã được cấp phát của bộ đệm đích. Tài liệu gốc đã chỉ ra rằng, "các hàm này có thể được khai thác vì chúng không kiểm tra xem những buffer được cấp phát trên stack có kích thước lớn hơn dữ liệu được copy vào buffer hay không". Chính sự tin tưởng mù quáng vào dữ liệu đầu vào này là nguyên nhân trực tiếp tạo ra các lỗ hổng tràn bộ đệm mà kẻ tấn công có thể dễ dàng lợi dụng.

2.2. Sự thiếu vắng cơ chế kiểm tra biên bounds checking

Bản chất của Buffer Overflow là việc ghi dữ liệu vượt quá giới hạn đã cấp phát. Lỗi này sẽ không xảy ra nếu chương trình luôn thực hiện việc kiểm tra biên (bounds checking) một cách cẩn thận trước khi thực hiện bất kỳ thao tác ghi nào. Tuy nhiên, trong thực tế, việc này thường bị bỏ qua vì lý do hiệu năng hoặc do sự chủ quan của lập trình viên. Việc không xác thực độ dài của dữ liệu đầu vào từ người dùng hoặc từ các nguồn bên ngoài tạo ra một cửa ngõ cho phép kẻ tấn công gửi một lượng dữ liệu lớn có chủ đích để gây tràn, từ đó bắt đầu quá trình khai thác lỗ hổng phần mềm.

III. Phân Tích Các Kỹ Thuật Tấn Công Buffer Overflow Hiệu Quả

Khai thác một lỗ hổng tràn bộ đệm là một quy trình kỹ thuật đòi hỏi sự chính xác cao. Kẻ tấn công không chỉ đơn thuần gây tràn bộ đệm để làm sập chương trình, mục tiêu cuối cùng của chúng là chiếm quyền điều khiển luồng thực thi. Để làm được điều này, chúng cần tính toán chính xác vị trí của địa chỉ trả về (return address) trên stack và ghi đè nó bằng địa chỉ của đoạn mã độc, hay còn gọi là shellcode. Có hai loại tấn công chính là stack-based buffer overflowheap-based buffer overflow, mỗi loại có cơ chế và độ phức tạp khác nhau. Việc phân tích các kỹ thuật này thường yêu cầu sử dụng các công cụ gỡ lỗi chuyên dụng như GDB để kiểm tra trạng thái của các thanh ghi và bộ nhớ tại thời điểm xảy ra lỗi. Quá trình này giúp xác định offset cần thiết để kiểm soát con trỏ lệnh (EIP) và đảm bảo mã khai thác exploit hoạt động thành công.

3.1. Kỹ thuật Stack based Buffer Overflow và ghi đè EIP

Đây là kỹ thuật phổ biến và đơn giản nhất. Trong một cuộc tấn công stack-based buffer overflow, kẻ tấn công cung cấp một chuỗi đầu vào đủ dài để lấp đầy bộ đệm cục bộ, ghi đè lên các dữ liệu liền kề trên stack frame, và cuối cùng là ghi đè lên địa chỉ trả về (return address). Địa chỉ mới này sẽ trỏ đến vị trí của shellcode mà kẻ tấn công đã chèn vào bộ nhớ, thường là ngay trong chính chuỗi đầu vào đó. Khi hàm kết thúc, thay vì quay trở lại luồng thực thi bình thường, CPU sẽ nhảy đến địa chỉ của shellcode và thực thi nó. Việc kiểm soát thành công con trỏ lệnh (EIP) là bước quyết định trong loại hình tấn công này.

3.2. Khai thác Heap based Buffer Overflow và cấu trúc Dlmalloc

Tấn công heap-based buffer overflow phức tạp hơn do cấu trúc của heap không tuần tự như stack. Kẻ tấn công lợi dụng việc tràn bộ đệm trên heap để ghi đè lên các siêu dữ liệu (metadata) quản lý các khối bộ nhớ, chẳng hạn như cấu trúc của Dlmalloc được đề cập trong tài liệu. Bằng cách thay đổi các con trỏ fd (forward) và bk (backward) trong một khối bộ nhớ đã được giải phóng, kẻ tấn công có thể khiến hàm malloc() hoặc free() ghi một giá trị tùy ý vào một địa chỉ bộ nhớ tùy ý. Mục tiêu thường là ghi đè một con trỏ hàm hoặc một mục trong Global Offset Table (GOT) để chuyển hướng thực thi đến shellcode.

IV. Top Phương Pháp Phòng Chống Tấn Công Buffer Overflow Tối Ưu

Để đối phó với mối đe dọa từ các lỗ hổng tràn bộ đệm, cộng đồng an ninh mạng đã phát triển nhiều lớp phòng thủ từ cấp hệ điều hành, trình biên dịch cho đến các phương pháp lập trình an toàn. Không có một giải pháp đơn lẻ nào là hoàn hảo, do đó việc áp dụng kết hợp nhiều biện pháp sẽ mang lại hiệu quả bảo vệ cao nhất. Các cơ chế hiện đại như ASLRDEP/NX gây khó khăn đáng kể cho việc thực thi shellcode, trong khi các kỹ thuật như stack canaries giúp phát hiện sớm các hành vi ghi đè stack. Đối với các nhà phát triển, việc lựa chọn ngôn ngữ lập trình an toàn hơn và sử dụng các thư viện đã được kiểm chứng là bước đi nền tảng để xây dựng các ứng dụng vững chắc. Những biện pháp này cùng nhau tạo nên một hệ sinh thái bảo mật phần mềm toàn diện, giảm thiểu rủi ro bị khai thác.

4.1. Biện pháp từ Hệ điều hành ASLR và DEP NX

ASLR (Address Space Layout Randomization) là một kỹ thuật bảo mật làm ngẫu nhiên hóa địa chỉ của các vùng nhớ quan trọng (stack, heap, thư viện) mỗi khi chương trình được khởi chạy. Điều này khiến kẻ tấn công không thể đoán trước được địa chỉ của shellcode hay các hàm hệ thống, làm cho các mã khai thác exploit tĩnh trở nên vô dụng. Trong khi đó, DEP/NX (Data Execution Prevention / No-eXecute) đánh dấu các vùng bộ nhớ chứa dữ liệu (như stack và heap) là không thể thực thi. Bất kỳ nỗ lực nào nhằm chạy mã từ các vùng này sẽ gây ra lỗi, ngăn chặn trực tiếp việc thực thi shellcode.

4.2. Biện pháp từ Trình biên dịch Stack Canaries

Stack canaries (hay Stack Guard) là một cơ chế được trình biên dịch thêm vào chương trình. Trước khi một hàm thực thi, một giá trị ngẫu nhiên (canary) được đặt trên stack, ngay trước địa chỉ trả về. Trước khi hàm kết thúc, chương trình sẽ kiểm tra xem giá trị canary này có còn nguyên vẹn hay không. Nếu một cuộc tấn công stack-based buffer overflow xảy ra và ghi đè lên địa chỉ trả về, nó cũng sẽ ghi đè lên canary. Việc phát hiện giá trị canary bị thay đổi cho thấy đã có một cuộc tấn công, và chương trình sẽ được chấm dứt ngay lập tức để ngăn chặn thiệt hại.

4.3. Biện pháp từ Lập trình viên Lập trình an toàn

Cuối cùng, lớp phòng thủ quan trọng nhất đến từ chính các lập trình viên. Việc áp dụng các nguyên tắc lập trình an toàn là biện pháp chủ động và hiệu quả nhất. Điều này bao gồm việc tránh sử dụng các hàm không an toàn (như strcpy, gets) và thay thế chúng bằng các phiên bản an toàn hơn có kiểm tra kích thước (như strncpy, fgets). Thực hiện kiểm tra biên (bounds checking) một cách nghiêm ngặt đối với tất cả dữ liệu đầu vào và sử dụng các thư viện đã được kiểm thử về an toàn bộ nhớ cũng là những thực hành thiết yếu để xây dựng một hệ thống vững chắc trước các cuộc tấn công Buffer Overflow.

V. Hướng Dẫn Phân Tích Buffer Overflow Qua Ví Dụ Thực Tiễn

Lý thuyết sẽ không hoàn chỉnh nếu thiếu đi thực hành. Việc phân tích một ví dụ thực tế về khai thác lỗ hổng phần mềm Buffer Overflow giúp củng cố kiến thức và cung cấp cái nhìn sâu sắc về cách thức hoạt động của một cuộc tấn công. Tài liệu tham khảo đã cung cấp một số ví dụ minh họa, từ một chương trình C đơn giản (vul.c) chứa lỗ hổng strcpy cho đến việc sử dụng trình gỡ lỗi với GDB để tìm ra offset chính xác nhằm ghi đè thanh ghi EIP. Quá trình này bao gồm các bước như fuzzing (gửi dữ liệu lớn ngẫu nhiên để gây lỗi), tạo một chuỗi ký tự duy nhất (pattern) để xác định khoảng cách đến EIP, và cuối cùng là xây dựng một payload hoàn chỉnh bao gồm padding, địa chỉ trả về mới và shellcode. Những bài thực hành như thế này là một phần không thể thiếu trong các khóa đào tạo về kiểm thử xâm nhập (pentest) và an ninh mạng.

5.1. Sử dụng GDB để debug và tìm offset ghi đè EIP

Công cụ gỡ lỗi với GDB (GNU Debugger) là trợ thủ đắc lực trong việc phân tích Buffer Overflow. Sau khi làm chương trình bị treo với một chuỗi đầu vào dài, GDB cho phép kiểm tra giá trị của các thanh ghi tại thời điểm xảy ra lỗi, đặc biệt là con trỏ lệnh (EIP). Bằng cách sử dụng một chuỗi mẫu (ví dụ: tạo bằng pattern create trong pwntools), kẻ tấn công có thể xác định chính xác có bao nhiêu byte cần thiết để ghi đến EIP. Giá trị mà EIP đang chứa tại thời điểm crash (ví dụ: 0x6161616c) sẽ được tìm kiếm trong chuỗi mẫu (pattern search) để tìm ra offset. Đây là thông tin quan trọng để xây dựng mã khai thác exploit.

5.2. Phân tích một mã khai thác exploit cơ bản

Một mã khai thác exploit cơ bản cho stack-based buffer overflow thường có cấu trúc: [Padding] + [Địa chỉ EIP mới] + [NOP sled] + [Shellcode]. Padding là các byte rác dùng để lấp đầy bộ đệm cho đến vị trí của địa chỉ trả về. Địa chỉ EIP mới là địa chỉ được kiểm soát, trỏ đến vùng chứa shellcode. NOP sled (chuỗi lệnh No-Operation) là một vùng đệm an toàn, giúp tăng khả năng exploit thành công ngay cả khi địa chỉ EIP không trỏ chính xác vào đầu shellcode. Cuối cùng là Shellcode, đoạn mã máy thực hiện hành động mong muốn của kẻ tấn công, ví dụ như mở một giao diện dòng lệnh.

10/07/2025

Trích đoạn nội dung tài liệu

Chương 1: Tổng quan Phần này giới thiệu tổng quan, nhiệm vụ của đồ án, giúp chúng ta hiểu nội dung căn bản của đồ án - Chương 2: Cơ sở lý thuyết Phần này sẽ giới thiệu cụ thể về khái niệm Buffer overflow, kiến trúc xử lý và phân tích khi xảy ra lỗi. - Chương 3: Kết quả thực nghiệm Phần này sẽ cho chúng ta thấy mô hình mục tiêu úng dụng, giới thiệu các công cụ để thực hiện và phân tích tràn bộ đệm bằng gdb-gef. - Chương 4: Kết luận và hướng phát triển của đồ án Phần này sẽ rút ra những lưu ý và lời khuyên và đưa ra hướng phát triển để bảo mật tốt hơn. 1 CHƯƠNG 2: GIỚI THIỆU VỀ AN NINH MẠNG 2.2 TÌNH HÌNH AN NINH MẠNG THẾ GIỚI: Theo số liệu của CERT (Computer Emegency Response Team - "Đội cấp cứu máy tính"), số lượng các vụ tấn công trên Internet được thông báo cho tổ chức này là ít hơn 200 vào năm 1989, khoảng 400 vào năm 1991, 1400 vào năm 1993, và 2241 vào năm 1994, và năm 2001 là 5315 vụ.

Những vụ tấn công này nhằm vào tất cả các máy tính có mặt trên Internet, các máy tính của tất cả các công ty lớn như AT&T, IBM, các trường đại học, các cơ quan nhà nước, các tổ chức quân sự, nhà băng. Một số vụ tấn công có quy mô khổng lồ (có tới 100.000 máy tính bị tấn công). Hơn nữa, những con số này chỉ là phần nổi của tảng băng. Một phần rất lớn các vụ tấn công không được thông báo, vì nhiều lý do, trong đó có thể kể đến nỗi lo bị mất uy tín, hoặc đơn giản những người quản trị hệ thống không hay biết những cuộc tấn công đang nhằm vào hệ thống của họ.

Điển hình là cuộc tấn công vào phần mềm thương mại của IBM tháng 3/2001, hai hacker đã tìm thấy lỗ hổng trên ứng dụng mà bất cứ ai với một trình duyệt Web cũng có thể lấy tài khoản của người dùng, thậm chí cả người quản trị. Không chỉ số lượng các cuộc tấn công tăng lên nhanh chóng, mà các phương pháp tấn công ngày càng tinh vi và có tổ chức. Mặt khác, việc quản trị các hệ thống mạng đòi hỏi nhà quản trị hệ thống có kiến thức và kinh nghiệm về hệ thống mạng chắc chắn, do đó sự yếu kém trong quản lý sẽ tạo nhiều điều kiện cho các hacker khai thác. Cũng theo CERT, những cuộc tấn công thời kỳ 1988-1989 chủ yếu là đoán tên người sử dụng-mật khẩu (UserID/password) hoặc sử dụng một số lỗi của các chương trình và hệ điều hành (security hole) làm vô hiệu hệ thống bảo vệ, tuy nhiên các cuộc tấn công vào thời gian gần đây còn bao gồm cả các thao tác như giả mạo địa chỉ IP, theo dõi thông tin truyền qua mạng, chiếm các phiên làm việc từ xa 2 (telnet hoặc rlogin), cài trojan hay worm để kiểm soát hay điều khiển máy tính…vì thế, nhu cầu bảo vệ thông tin trên Internet là cần thiết nhằm mục đích bảo vệ dữ liệu, bảo vệ thông tin người dùng và bảo vệ hệ thống.

Khi nói đến vấn đề bảo mật, hầu hết các chuyên gia bảo mật đều chú trọng đến sự an toàn của hệ thống mạng và hệ điều hành. Để bảo vệ cho hệ thống, phương pháp thường được chọn là sử dụng firewall. Tuy nhiên, theo tuyên bố của CSI/FBI: 78% nơi bị hại có sử dụng firewall và 59% thì bị tấn công thông qua Internet, cụ thể hơn là theo báo cáo của CSI/FBI Computer Crime và Security Survey thì tổng số thiệt hại do những ứng dụng Web bị tấn công từ năm 1997 đến năm 2000 là 626 triệu đôla Mỹ.2 TÌNH HÌNH AN NINH MẠNG TẠI VIỆT NAM: Khi tốc độ ứng dụng công nghệ thông tin và phổ cập Internet được đẩy nhanh, đời sống thực ngày càng gần như phụ thuộc vào đời sống ảo trên mạng thì vấn đề an ninh mạng càng cần được coi trọng và đặt ở tầm an ninh quốc gia. Môi trường internet tại Việt Nam hiện có nhiều yếu tố gây mất an toàn như không có cơ chế định danh người dùng, khó kiểm soát các giao tiếp và thiếu sự phối hợp, giám sát giữa các tổ chức quản lý internet.

Điều này dẫn tới sự bùng nổ của các hành vi: lấy cắp tài khoản, viết và phát tán virus máy tính, tấn công website…, mang lại nhiều nguy cơ tiềm tàng cho an ninh mạng 2.13 Thiếu nhận thức, nhân lực và đầu tư: An ninh mạng là một vấn đề mới đối với đa số người sử dụng máy tính. Những công ty lập trình website cũng chưa ý thức đầy đủ về vấn đề này. Ở công ty nước ngoài, mỗi lập trình viên sau khi tuyển dụng phải qua một khoá đào tạo lập trình đặc biệt về an ninh mạng. Tìm được công ty thiết kế website ở Việt Nam làm điều này rất khó.

Việc đầu tư thời gian và công sức vào bảo mật có thể làm chậm tiến độ triển khai dự án, hiệu quả lại khó kiểm chứng. Tuy đã được các chuyên gia máy tính liên tục cảnh báo nhưng nhận thức về nguy cơ, tính rủi ro và hậu quả của 3 tình trạng mất an ninh mạng vẫn chưa được quan tâm tìm hiểu đúng mức. Tình trạng lơ là, mất cảnh giác đối với nguy cơ virus tấn công các trang web xảy ra khá phổ biến trong giới quản trị website, thậm chí ngay cả đối với website của các doanh nghiệp CNTT. Rất nhiều website tồn tại các lỗ hổng có thể trở thành mục tiêu cho tin tặc, trong đó có những website có nội dung hết sức quan trọng liên quan đến chính phủ điện tử, thương mại điện tử, doanh nghiệp điện tử… Theo thống kê của Trung tâm An ninh mạng ĐHBK Hà Nội (BKIS) thì có khoảng 400 website luôn đặt trong tình trạng nguy hiểm, trong đó có website của các cơ quan nhà nước, các công ty và ngân hàng.

Trung bình mỗi tháng, trung tâm BKIS phát hiện trên dưới hai chục trang web bị hacker tấn công, trong đó có cả trang web của những công ty tên tuổi như Viettel, VDC hay MobiFone. Bên cạnh đó, các doanh nghiệp đang phải đương đầu với sự thiếu hụt về nhân lực CNTT và hiểu biết về tội phạm mạng. Hiện nay, phần lớn các doanh nghiệp Việt Nam chưa có sự đầu tư đúng mức về công nghệ bảo mật cũng như về con người do chi phí cho lĩnh vực này khá cao. BKIS cho biết, các lổ hổng bảo mật trên các trang web của Việt Nam phần lớn là do các công ty viết phần mềm chưa quan tâm đến an toàn hệ thống và đầu tư cho an ninh mạng chưa đủ ngưỡng.

Người quản trị mạng chưa làm tốt công việc của mình: đặt mật khẩu yếu, mở nhiều dịch vụ không cần thiết; các doanh nghiệp và tổ chức ở Việt Nam thường đầu tư dưới 10% chi phí CNTT cho bảo mật - một tỷ lệ dưới mức đảm bảo an toàn cho hệ thống thông tin.13 Tình hình tội phạm: “An toàn mạng” ngày nay không chỉ trong phạm vi khái niệm an ninh mạng (network security) vốn dành cho những đối tượng chuyên nghiệp mà quan trọng hơn là bảo vệ các ứng dụng trong hệ thống của doanh nghiệp. Phần lớn các doanh nghiệp Việt Nam hiện chưa có hệ thống bảo mật dữ liệu chuyên nghiệp mà chủ yếu chỉ trang bị vài hệ thống bảo vệ: tường lửa, phần mềm chống virus. Các chuyên gia 4 nhận định rằng: tình hình an ninh trên môi trường mạng ở Việt Nam đang ở tình thế rất đáng ngại khi số lượng và mức độ các loại hình tội phạm ngày càng gia tăng. Có thể chia tội phạm mạng ở Việt Nam thành 2 hai nhóm: tội phạm tấn công trang web, các cơ sở dữ liệu và phát tán virus; và tội phạm lợi dụng môi trường mạng để ăn cắp, tống tiền và tổ chức hoạt động phạm tội, như đánh bạc qua mạng, ăn cắp và làm giả thẻ tín dụng, dùng internet để trộm cước viễn thông.

Cả hai nhóm tội phạm mạng này đều đang tăng cả về lượng và mức độ tác động. Thống kê của BKIS cho thấy, đầu năm 2008, số lượng virus mới tăng hơn rất nhiều so với trước. Tội phạm mạng ở Việt Nam hiện đã chuyển sang mục đích kiếm tiền chứ không còn là thoả mãn niềm ham mê ghi điểm “thành tích” như trước. Về mức độ tinh vi, các phương thức tội phạm mạng ở Việt Nam đang dần tiếp cận với thế giới.

Thế giới có tội phạm gì liên quan đến môi trường mạng thì cũng nhanh chóng có ở Việt Nam. Mới đây, đơn vị chống tội phạm công nghệ cao (C15) thuộc Tổng cục Cảnh sát đã phối hợp với cơ quan chống tội phạm mạng của Anh bắt được một nhóm hacker Việt Nam ăn cắp mật khẩu thẻ tín dụng bán cho một tổ chức tội phạm của Anh. Trước đó, C15 đã bắt được một đường dây hơn 10 sinh viên ăn cắp thẻ tín dụng và làm giả thẻ tín dụng để rút tiền. Trong khi đó, yếu tố chính góp phần làm cho tình hình an ninh mạng ở Việt Nam thêm nghiêm trọng chính là hành lang pháp lý chưa đủ mạnh, hình phạt dành cho tội phạm mạng còn nhẹ, chưa tương xứng với thiệt hại do hành vi phạm tội gây ra nên chưa đạt mục đích trừng trị người phạm tội, giáo dục họ trở thành người có ích cho xã hội và giáo dục người khác tôn trọng pháp luật, đấu tranh phòng, chống tội phạm.

Một bất cập nữa là các quy định liên quan đến tội phạm mạng quá chung chung, không áp dụng được vào các hành vi cụ thể, nhất là các quy định về tội phạm máy tính của bộ luật Hình sự. Các quy định thiếu rõ ràng làm cho các cơ quan lúng túng trong việc xử lý.13 Cần hoàn thiện qui định của pháp luật: 5 Nước ta nên theo xu hướng của thế giới khi quy định về những hành vi liên quan tới tội phạm mạng: các quy định nên trung lập với công nghệ để có thể dễ dàng áp dụng và ban hành các văn bản dưới luật điều chỉnh những hành vi này. Tội phạm mạng có tốc độ phát triển nhanh như tốc độ phát triển của CNTT. Các quy định của pháp luật luôn lạc hậu hơn so với những thay đổi trong môi trường CNTT.

Mặc dù các nhà làm luật đã sửa đổi, bổ sung các quy định pháp luật, nhưng việc sửa đổi các quy định của luật nhất là Bộ luật Hình sự, Bộ luật Tố tụng Hình sự không thể làm trong một sớm một chiều. Với những văn bản hướng dẫn, việc điều chỉnh sẽ được thực hiện dễ dàng hơn.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ