Bối cảnh và vấn đề nghiên cứu

Khóa luận tốt nghiệp "Nghiên cứu và đề xuất một số giải pháp đảm bảo an toàn thông tin cho phần mềm phục vụ quản lí hàng hóa của Công ty Cổ phần Dịch vụ Hàng hóa Nội Bài (NCTS)" do sinh viên Đồng Thị Linh (Khoa Hệ thống thông tin quản lý, Học viện Ngân hàng) thực hiện năm 2020 dưới sự hướng dẫn của ThS. Vũ Duy Hiến, trong quá trình thực tập tại Phòng Tài chính công thuộc Công ty TNHH Hệ thống Thông tin FPT (FPT IS).

Về bối cảnh thực tiễn, tác giả dẫn số liệu từ Cục An toàn thông tin: trong năm 2019, Việt Nam ghi nhận khoảng 5.200 cuộc tấn công vào các hệ thống thông tin dẫn đến sự cố, với xấp xỉ 6,5 triệu địa chỉ IP nằm trong các mạng máy tính ma (botnet). Điển hình là sự cố rò rỉ dữ liệu của khoảng 2 triệu khách hàng ngân hàng bị rao bán trên diễn đàn Raidforums vào tháng 11/2019.

Đối với đơn vị áp dụng, Công ty Cổ phần Dịch vụ Hàng hóa Nội Bài (NCTS) hiện cung cấp dịch vụ phục vụ hàng hóa cho 27 hãng hàng không trong nước và quốc tế. Hệ thống phần mềm quản lý hàng hóa do FPT IS xây dựng nhằm chuẩn hóa quy trình tiếp nhận, xử lý vận đơn, giao nhận hàng và lập báo cáo thống kê. Tuy nhiên, hệ thống này bộc lộ nhiều điểm yếu an toàn thông tin:

  • Máy trạm người dùng kết nối trực tiếp đến máy chủ dữ liệu mà không qua lớp trung gian kiểm soát.
  • Đường truyền kết nối giữa máy chủ và máy trạm chưa được mã hóa an toàn.
  • Máy trạm có kết nối mạng Internet công cộng, tiềm ẩn nguy cơ lây nhiễm mã độc.
  • Tường lửa hiện tại là thiết bị phần cứng cố định, phụ thuộc nhà sản xuất và khó cập nhật các tập luật phát hiện tấn công mức ứng dụng.
  • Khi công ty mở rộng triển khai phần mềm tới các kho hàng nội địa vệ tinh (như kho Mỹ Đình, kho Long Biên) qua mạng WAN và Internet, nguy cơ bị chặn bắt và can thiệp luồng dữ liệu tăng cao.

Mục tiêu nghiên cứu của khóa luận được xác định gồm ba nhiệm vụ kỹ thuật chính:

  1. Cân bằng tải cho máy chủ dữ liệu: Cải thiện hiệu suất, tối đa hóa thông lượng, ngăn ngừa nguy cơ tê liệt do quá tải hoặc tấn công từ chối dịch vụ (DoS/DDoS), tăng khả năng mở rộng hệ thống.
  2. Đảm bảo an toàn truyền thông dữ liệu: Thiết lập kênh truyền bảo mật, chống nghe lén, giả mạo và can thiệp dữ liệu trao đổi giữa máy trạm (Client) và máy chủ (Server).
  3. Phát hiện và ngăn chặn tấn công máy chủ ứng dụng: Ẩn danh hệ thống máy chủ nội bộ, kiểm soát luồng dữ liệu HTTP/HTTPS và lọc bỏ các yêu cầu độc hại (SQL Injection, XSS, Bruteforce).

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Kiến trúc an toàn thông tin, các lỗ hổng bảo mật và giải pháp kỹ thuật bảo vệ hệ thống thông tin quản lý hàng hóa.
  • Phạm vi không gian: Hệ thống thông tin của NCTS đặt tại trụ sở Sân bay Quốc tế Nội Bài và các kho hàng nội địa (Mỹ Đình, Long Biên).
  • Phạm vi thời gian: Khảo sát hiện trạng và đề xuất giải pháp kỹ thuật trong năm 2020.

Cơ sở lý thuyết và phương pháp

Khóa luận xây dựng hệ thống cơ sở lý thuyết mật mã học và an toàn mạng làm nền tảng cho việc thiết kế kiến trúc bảo mật:

  • Mô hình an toàn thông tin CIA: Phân tích ba trụ cột cốt lõi gồm tính Bí mật (Confidentiality), tính Toàn vẹn (Integrity) và tính Sẵn sàng (Availability).
  • Lý thuyết mật mã học:
    • Hệ mã hóa tổng quát: Định nghĩa bộ năm $(P, C, K, E, D)$ với $P$ là tập bản rõ, $C$ là tập bản mã, $K$ là không gian khóa, $E$ là tập hàm lập mã $e_k$, $D$ là tập hàm giải mã $d_k$ thỏa mãn $d_{k_d}(e_{k_e}(x)) = x$.
    • Mã hóa đối xứng và bất đối xứng: Trình bày nguyên lý, ưu nhược điểm của các thuật toán mã hóa đối xứng (DES, 3DES, AES) và mã hóa khóa công khai (RSA, Diffie-Hellman).
    • Hàm băm mật mã và chữ ký số: Định nghĩa hàm băm một chiều, tính chất không va chạm yếu và không va chạm mạnh (MD5, SHA-1, SHA-256, RIPEMD160). Trình bày mô hình chữ ký số $(P, A, K, S, V)$ gồm thuật toán ký $Sig_k$ và thuật toán xác minh $Ver_k$.
  • Giao thức SSL/TLS: Khảo sát kiến trúc phân tầng gồm 4 giao thức thành phần: Giao thức bắt tay (Handshake Protocol - 12 bước thương lượng thuật toán và trao đổi khóa), Giao thức cảnh báo (Alert Protocol), Giao thức thay đổi thông số mật mã (Change Cipher Spec Protocol) và Giao thức bản ghi (Record Protocol). Tác giả so sánh sự khác biệt kỹ thuật giữa SSLv3 và TLS (việc sử dụng HMAC, PRF, chuẩn mã hóa AES thay cho DES/3DES).
  • Mạng riêng ảo (VPN) và Tường lửa (Firewall): Nguyên lý đóng gói gói tin (Tunneling), kiểm soát phân tách miền an toàn (Security Domain), phân loại bộ lọc gói tin (Packet Filtering) và cổng ứng dụng (Application-level Gateway).
  • Kỹ thuật Reverse Proxy và Web Application Firewall (WAF): Cơ chế chuyển tiếp yêu cầu, ánh xạ lại địa chỉ URL/Header, danh sách đen/danh sách trắng, và cân bằng tải.

Phương pháp nghiên cứu:

  • Phương pháp phân tích - tổng hợp tài liệu: Nghiên cứu các tiêu chuẩn RFC về SSL/TLS, tài liệu cấu hình máy chủ NGINX, ModSecurity, Stunnel và tài liệu thiết kế hệ thống của FPT IS.
  • Phương pháp khảo sát thực trạng: Khảo sát cấu trúc mạng, phần mềm máy chủ IIS, hệ quản trị cơ sở dữ liệu Oracle và quy trình vận hành thực tế tại NCTS.
  • Phương pháp thiết kế mô hình kỹ thuật: Ứng dụng các phần mềm mã nguồn mở để thiết kế kiến trúc bảo mật đa lớp không làm thay đổi mã nguồn ứng dụng lõi.

Nguồn dữ liệu: Báo cáo an toàn thông tin năm 2019 của Cục An toàn thông tin; tài liệu khảo sát kỹ thuật hệ thống quản lý hàng hóa NCTS do FPT IS cung cấp; các thông số kỹ thuật chính thức của NGINX, Apache, OpenSSL, Stunnel và ModSecurity.


Nội dung chính theo từng chương

Chương 1: Tổng quan về hệ thống thông tin phục vụ quản lí hàng hóa của Công ty Cổ phần Dịch vụ Hàng hóa Nội Bài NCTS

Chương 1 giới thiệu khái quát về đơn vị thực tập và bài toán quản lý hàng hóa:

  • Công ty TNHH Hệ thống Thông tin FPT (FPT IS): Thành lập năm 1994, trực thuộc Tập đoàn FPT, có trụ sở tại Keangnam Landmark 72 (Hà Nội). Cơ cấu tổ chức gồm 6 khối chức năng (Khối kinh doanh, Khối sản xuất, Khối sản xuất và kinh doanh độc lập, Khối công nghệ, Khối tài chính, Khối đảm bảo) với gần 3.000 cán bộ nhân viên và hơn 2.000 chứng chỉ công nghệ quốc tế (Cisco, IBM, Oracle...).
  • Bài toán quản lý hàng hóa tại NCTS: NCTS cung cấp dịch vụ phục vụ hàng hóa hàng không cho 27 hãng bay. Phần mềm do FPT IS xây dựng có nhiệm vụ tin học hóa các quy trình phục vụ hàng hóa, quản lý kiểm soát quy trình, lập báo cáo thống kê phục vụ sản xuất kinh doanh, kết nối trao đổi thông tin với hệ thống Hải quan và mạng SITA.
  • Yêu cầu kỹ thuật đặt ra: Hệ thống phải vận hành ổn định 24/24, xử lý dữ liệu đồng thời cho lượng người dùng lớn, đồng thời phải đảm bảo an toàn tuyệt đối cho cơ sở dữ liệu trước các nguy cơ tấn công mạng từ môi trường LAN/WAN/Internet.

Chương 2: Thực trạng hệ thống thông tin phục vụ quản lí hàng hóa của Công ty Cổ phần Dịch vụ Hàng hóa Nội Bài NCTS và các nguy cơ mất an ninh, an toàn đối với hệ thống NCTS

Chương này đi sâu đánh giá hiện trạng hạ tầng và phân tích các nguy cơ tấn công:

  • Kiến trúc hệ thống hiện tại:
    • Lớp ứng dụng (Web Server): Sử dụng Microsoft Internet Information Services (IIS), xử lý nghiệp vụ và điều phối kết nối.
    • Lớp dữ liệu (Database Server): Sử dụng Hệ quản trị cơ sở dữ liệu Oracle, lưu trữ toàn bộ dữ liệu hàng hóa, lịch bay, tài khoản.
    • Lớp máy trạm (Client): Giao diện nhập liệu, tra cứu và hiển thị báo cáo cho người dùng cuối.
    • Phân quyền người dùng: Gồm 3 mức phân quyền (Quản trị hệ thống - Admin, Lãnh đạo, Nhân viên nghiệp vụ).
  • Hiện trạng vận hành: Hệ thống phục vụ khoảng 50 cán bộ nhân viên tại trụ sở Nội Bài, kết nối qua mạng LAN bằng đường cáp quang riêng. Máy chủ cài đặt phần mềm Antivirus (chế độ bảo vệ thời gian thực, quét toàn bộ 1 lần/tuần) và tường lửa phần cứng.
  • Phân tích các nguy cơ mất an toàn:
    • Tấn công mã độc: Virus, Worm, Trojan, Spyware/Adware lây lan qua máy trạm có kết nối Internet, biến máy trạm thành bàn đạp tấn công máy chủ.
    • Tấn công trung gian (Man-in-the-Middle): Đường truyền giữa Client và Server chưa được mã hóa; dữ liệu hàng hóa và thông tin xác thực dễ bị nghe lén, đánh cắp hoặc sửa đổi khi truyền qua mạng WAN/Internet.
    • Tấn công từ chối dịch vụ (DoS/DDoS): Nguy cơ tắc nghẽn do lưu lượng truy cập lớn (nguyên nhân khách quan) hoặc bị tấn công tràn bộ đệm máy chủ IIS, làm cạn kiệt tài nguyên xử lý của cơ sở dữ liệu Oracle (nguyên nhân chủ quan).
    • Khai thác lỗ hổng phần mềm:
      • Lỗ hổng SQL Injection (5 dạng khai thác câu lệnh SELECT, INSERT, UPDATE, DELETE và câu lệnh quản trị) làm lộ hoặc sai lệch dữ liệu Oracle.
      • Tấn công vét cạn (Bruteforce) do các nhân viên trong cùng một nhóm quyền có xu hướng dùng chung tài khoản/mật khẩu đơn giản.
      • Tấn công Cross-Site Scripting (XSS) chèn mã độc vào phiên làm việc của người dùng.
Nhóm nguy cơ Nguyên nhân kỹ thuật tại NCTS Hậu quả tiềm ẩn
Nghe lén / Giả mạo gói tin Đường truyền LAN/WAN chưa thiết lập cơ chế mã hóa SSL/TLS Lộ lọt thông tin vận đơn, can thiệp dữ liệu giao dịch
Từ chối dịch vụ (DoS/DDoS) Máy chủ IIS tiếp nhận trực tiếp request, thiếu bộ đệm cân bằng tải Tê liệt hệ thống, gián đoạn phục vụ 27 hãng hàng không
SQL Injection & XSS Lỗ hổng lọc dữ liệu đầu vào trong mã nguồn ứng dụng web Rò rỉ cơ sở dữ liệu Oracle, chiếm quyền điều khiển máy chủ
Tấn công vét cạn (Bruteforce) Thiết lập tài khoản/mật khẩu dùng chung giữa các nhân viên Đánh cắp phiên làm việc và tài khoản quản trị

Chương 3: Đề xuất một số giải pháp đảm bảo an ninh, an toàn cho hệ thống thông tin phục vụ quản lí hàng hóa Công ty Cổ phần Dịch vụ Hàng hóa Nội Bài (NCTS)

Tác giả đề xuất mô hình giải pháp kỹ thuật tích hợp ba thành phần mã nguồn mở:

  1. Xây dựng máy chủ ủy quyền ngược (Reverse Proxy) tích hợp SSL/TLS dựa trên NGINX và OpenSSL:
    • Đặt máy chủ NGINX làm trung gian chặn mọi kết nối từ bên ngoài trước khi tới Web Server IIS.
    • Cơ chế hoạt động: URL Remapping, HTTP Header Remapping, lọc danh sách trắng (các URI hợp lệ) và danh sách đen (các mẫu tấn công đã biết), ghi nhật ký lỗi (trả về mã lỗi 403 Forbidden hoặc 404 Not Found thay vì thông báo lỗi chi tiết của hệ thống).
    • Thiết lập giao thức bảo mật OpenSSL để giải mã SSL/TLS tại NGINX (SSL Offloading), giúp giảm tải tính toán mật mã cho máy chủ IIS.
  2. Xây dựng bộ giao thức bảo mật kết nối trên máy trạm bằng Stunnel và OpenSSL:
    • Ứng dụng công nghệ tạo đường hầm mã hóa Stunnel trên máy trạm người dùng.
    • Ứng dụng quản lý hàng hóa NCTS trỏ kết nối nội bộ tới Stunnel Client qua cổng cục bộ; Stunnel Client tự động thiết lập kênh truyền mã hóa SSL/TLS với máy chủ ủy quyền NGINX qua chứng thư số công khai/bí mật.
  3. Thiết lập module phát hiện tấn công dựa trên tường lửa ModSecurity:
    • Nhúng trực tiếp module ModSecurity vào NGINX để kiểm soát toàn bộ luồng dữ liệu HTTP/HTTPS ở tầng ứng dụng.
    • Hoạt động dựa trên tập luật phân tích cú pháp gói tin, tự động phát hiện và ngăn chặn các mẫu tấn công SQL Injection, XSS, mã độc trước khi yêu cầu được chuyển tới máy chủ Web IIS.

Thiết kế và triển khai giải pháp kỹ thuật

Kiến trúc an toàn thông tin mới

Trong mô hình đề xuất, toàn bộ luồng trao đổi dữ liệu của hệ thống thông tin NCTS được tái cấu trúc thành mô hình bảo vệ nhiều lớp:

[Máy trạm Client (Ứng dụng NCTS)] 
[Stunnel Client (Mã hóa SSL/TLS bằng OpenSSL)]
[Web Server (Microsoft IIS)]
[Database Server (Oracle)]

So sánh kỹ thuật giữa Apache và NGINX

Để lựa chọn máy chủ ủy quyền phù hợp cho bài toán cân bằng tải và bảo mật tại NCTS, khóa luận phân tích và so sánh hai giải pháp máy chủ web:

Tiêu chí kỹ thuật Máy chủ Apache Máy chủ NGINX (Được lựa chọn)
Kiến trúc xử lý Dựa trên tiến trình/luồng (Process-driven / Multi-threaded) Hướng sự kiện bất đồng bộ (Event-driven Asynchronous)
Cơ chế tiến trình Tạo tiến trình mới cho mỗi kết nối 1 tiến trình Master quản lý nhiều tiến trình Worker
Hiệu năng & Tài nguyên Tiêu tốn nhiều RAM và CPU khi số lượng kết nối đồng thời tăng cao Sử dụng bộ nhớ thấp, thông lượng cao, xử lý hàng nghìn kết nối đồng thời
Khả năng làm Reverse Proxy Cấu hình qua các module mở rộng, độ trễ cao hơn khi tải nặng Thiết kế chuyên biệt cho chức năng Reverse Proxy và Cân bằng tải
Tích hợp bảo mật Hỗ trợ mod_ssl, mod_security Hỗ trợ module OpenSSL, Stunnel, ModSecurity gọn nhẹ

Kết quả và đóng góp

  • Về mặt lý luận: Khóa luận đã hệ thống hóa các nguyên lý mật mã học ứng dụng (hệ mã hóa, hàm băm, chữ ký số, giao thức SSL/TLS) và làm rõ cơ chế vận hành của kiến trúc máy chủ ủy quyền ngược kết hợp tường lửa ứng dụng web.
  • Về mặt thực tiễn:
    • Khảo sát chi tiết hiện trạng hạ tầng CNTT phục vụ quản lý hàng hóa tại NCTS, chỉ rõ 4 lỗ hổng bảo mật trọng yếu (kết nối trực tiếp, thiếu mã hóa kênh truyền, tài khoản dùng chung, nguy cơ SQLi/XSS).
    • Đề xuất kiến trúc bảo mật đa lớp ứng dụng hoàn toàn công nghệ mã nguồn mở (NGINX, OpenSSL, Stunnel, ModSecurity), giúp bảo vệ hệ thống một cách chủ động.
    • Giải pháp có tính khả thi cao khi không yêu cầu thay đổi mã nguồn phần mềm nghiệp vụ hiện hữu trên IIS và Oracle, đồng thời tối ưu hóa chi phí đầu tư cho doanh nghiệp.

Hạn chế và hướng nghiên cứu tiếp

  • Hạn chế:
    • Khóa luận mới dừng lại ở việc nghiên cứu lý thuyết, đề xuất mô hình kiến trúc và thử nghiệm cài đặt, cấu hình từng module kỹ thuật; chưa triển khai đo kiểm tải thực tế với lưu lượng truy cập lớn trong môi trường vận hành đồng thời tại nhiều kho nội địa (Mỹ Đình, Long Biên).
    • Chưa đánh giá định lượng độ trễ phát sinh trên đường truyền khi luồng dữ liệu phải đi qua nhiều lớp xử lý trung gian (Stunnel mã hóa $\rightarrow$ NGINX phân tích $\rightarrow$ ModSecurity duyệt tập luật $\rightarrow$ IIS xử lý).
  • Hướng nghiên cứu tiếp:
    • Xây dựng kịch bản kiểm thử hiệu năng chịu tải (stress test) và khả năng chống chịu DoS/DDoS trên môi trường mạng diện rộng thực tế.
    • Tinh chỉnh tập luật cho ModSecurity nhằm giảm thiểu tỷ lệ nhận diện sai (false positive), đồng thời nghiên cứu bổ sung cơ chế xác thực người dùng hai yếu tố (2FA) để khắc phục triệt để nguy cơ từ việc quản lý mật khẩu phân quyền.

Giá trị tham khảo

  • Đối tượng sử dụng:
    • Sinh viên các ngành Hệ thống thông tin quản lý, Công nghệ thông tin, An toàn thông tin tham khảo phương pháp phân tích lỗ hổng và thiết kế kiến trúc bảo mật hệ thống thông tin doanh nghiệp.
    • Kỹ sư hệ thống và quản trị mạng tại các doanh nghiệp vận tải, logistics cần giải pháp nâng cấp bảo mật cho các hệ thống phần mềm cũ (legacy systems) mà không thể can thiệp chỉnh sửa mã nguồn gốc.
  • Nội dung giá trị nhất:
    • Phân tích chi tiết quy trình 12 bước của giao thức bắt tay SSL/TLS và cấu trúc gói tin Record Protocol tại Chương 2.
    • Phương án kết hợp Stunnel tại máy trạm và NGINX Reverse Proxy tích hợp ModSecurity tại Chương 3, cung cấp tài liệu tham khảo cụ thể về mô hình hóa giải pháp an toàn thông tin mạng.

Câu hỏi thường gặp

1. Tại sao hệ thống NCTS cần bổ sung máy chủ ủy quyền NGINX thay vì dùng trực tiếp máy chủ IIS sẵn có?
Máy chủ IIS của NCTS vừa xử lý nghiệp vụ vừa kết nối trực tiếp với CSDL Oracle. Nếu để máy trạm hoặc môi trường Internet kết nối trực tiếp đến IIS, máy chủ sẽ dễ bị quá tải DoS/DDoS và lộ thông tin cấu hình nội bộ. NGINX đóng vai trò Reverse Proxy ẩn danh máy chủ thực, cân bằng tải, lọc yêu cầu không hợp lệ và tiếp nhận xử lý giải mã SSL/TLS để giảm tải cho IIS.

2. Công nghệ Stunnel giải quyết vấn đề gì cho các máy trạm tại NCTS?
Ứng dụng quản lý hàng hóa NCTS trên máy trạm vốn không tích hợp sẵn giao thức mã hóa kết nối. Stunnel đóng vai trò một kênh truyền riêng ảo (VPN tunneling) gọn nhẹ cài tại máy trạm, tiếp nhận kết nối nội bộ từ phần mềm NCTS, tự động đóng gói mã hóa SSL/TLS qua OpenSSL và gửi an toàn tới NGINX trên môi trường mạng WAN/Internet.

3. Tường lửa phần cứng sẵn có của NCTS có điểm yếu gì mà cần bổ sung thêm ModSecurity?
Tường lửa phần cứng của NCTS chỉ kiểm soát các luồng thông tin dựa trên địa chỉ IP, cổng và các quy tắc mạng cố định, phụ thuộc vào nhà sản xuất và không thể can thiệp sâu vào nội dung gói tin HTTP/HTTPS. ModSecurity là tường lửa ứng dụng web (WAF) cho phép phân tích sâu nội dung yêu cầu, phát hiện và ngăn chặn các cuộc tấn công mức ứng dụng như SQL Injection và XSS.

4. Hệ thống phân quyền hiện tại của NCTS đang gặp lỗ hổng bảo mật nào?
Hệ thống NCTS phân quyền 3 mức (Admin, Lãnh đạo, Nhân viên nghiệp vụ), nhưng các nhân viên trong cùng một nhóm quyền lại dùng chung tài khoản và mật khẩu đơn giản. Điều này tạo điều kiện cho tin tặc dễ dàng tấn công dò quét mật khẩu bằng phương pháp vét cạn (Bruteforce) để truy cập trái phép cơ sở dữ liệu.


Kết luận

Khóa luận tốt nghiệp của sinh viên Đồng Thị Linh đã giải quyết một bài toán an toàn thông tin thiết thực tại Công ty Cổ phần Dịch vụ Hàng hóa Nội Bài (NCTS). Bằng việc phân tích sâu các nguy cơ mất an toàn trên hệ thống phần mềm nghiệp vụ kết nối máy chủ IIS và cơ sở dữ liệu Oracle, tác giả đã đề xuất thành công mô hình bảo vệ đa lớp kết hợp NGINX Reverse Proxy, OpenSSL, Stunnel và ModSecurity. Công trình cung cấp một giải pháp kỹ thuật có tính ứng dụng cao, giúp bảo vệ toàn vẹn dữ liệu hàng hóa và đảm bảo tính sẵn sàng của hệ thống thông tin trong bối cảnh mở rộng mạng diện rộng.