TỔNG QUAN VỀ AN TOÀN THÔNG TIN VÀ CÔNG TY
Giới thiệu về an toàn thông tin và hệ thống
An toàn thông tin hệ thống bao gồm các phương pháp, kỹ thuật và quy trình nhằm bảo vệ hệ thống thông tin khỏi những mối đe dọa như phần mềm độc hại, tấn công mạng, truy cập trái phép và thất thoát dữ liệu.
Để bảo vệ hệ thống thông tin khỏi các mối đe dọa, có nhiều biện pháp hiệu quả Các phương pháp phổ biến bao gồm sử dụng phần mềm diệt virus và các công cụ bảo mật khác, thường xuyên cập nhật hệ thống, thiết lập tường lửa, áp dụng mật khẩu mạnh và giáo dục người dùng về an toàn thông tin.
Tầm nhìn, sứ mệnh của trung tâm phát triển CNTT Đà Nẵng(IID)
IID hướng tới việc trở thành trung tâm công nghệ thông tin hàng đầu tại Việt Nam, cung cấp các dịch vụ và giải pháp công nghệ tiên tiến, góp phần thúc đẩy sự phát triển kinh tế - xã hội của Đà Nẵng và khu vực miền Trung.
IID cung cấp dịch vụ và giải pháp công nghệ thông tin toàn diện, phục vụ nhu cầu của doanh nghiệp, tổ chức và cá nhân tại Đà Nẵng và khu vực miền Trung.
IID cam kết cung cấp dịch vụ và giải pháp công nghệ thông tin chất lượng cao với giá cả hợp lý, đáp ứng đầy đủ nhu cầu của khách hàng.
IID luôn nỗ lực tìm kiếm và ứng dụng các công nghệ mới, tiên tiến nhất để cung cấp cho khách hàng những giải pháp tối ưu nhất
IID luôn coi trọng việc phát triển nguồn nhân lực, xây dựng đội ngũ nhân viên chuyên nghiệp, có trình độ cao, đáp ứng nhu cầu của khách hàng
IID cam kết đồng hành cùng khách hàng, đóng góp vào sự phát triển kinh tế - xã hội của Đà Nẵng và khu vực miền Trung.
CƠ SỞ LÝ THUYẾT VÀ CÁC KỸ THUẬT KIỂM THỬ VỚI BURPSUITE4 1 Giới thiệu về Pentest
Tóm tắt sơ lược về Pentest
Kiểm thử thâm nhập (Penetration Testing), hay còn gọi là pen test, pentest, và ethical hacking, là một phương pháp tấn công mô phỏng nhằm phát hiện và kiểm tra các lỗ hổng trong hệ thống máy tính Trong lĩnh vực bảo mật ứng dụng web, kiểm thử thâm nhập thường được áp dụng để củng cố hiệu quả của tường lửa ứng dụng web (Web Application Firewall).
Quá trình Pentest
Hình 2 Các giai đoạn trong pentest.
-Lập kế hoạch và khảo sát trước
Giai đoạn đầu tiên bao gồm:
Xác định phạm vi và mục tiêu của thử nghiệm, bao gồm các hệ thống được xử lý và những phương pháp thử nghiệm sẽ được sử dụng.
Thu thập thông tin, bao gồm tên mạng, tên miền và máy chủ email, giúp bạn hiểu rõ hơn về hoạt động của mục tiêu và xác định các lỗ hổng tiềm năng.
Bước tiếp theo là nắm bắt cách mà ứng dụng mục tiêu sẽ phản ứng trước các yếu tố xâm nhập khác nhau, thường được thực hiện thông qua việc sử dụng các phương pháp phân tích và kiểm tra.
Phương pháp phân tích tĩnh cho phép kiểm tra mã nguồn của ứng dụng nhằm xác định hành vi của nó trong quá trình thực thi Các công cụ phân tích tĩnh có khả năng quét toàn bộ mã nguồn chỉ trong một lần chạy, giúp phát hiện lỗi và cải thiện chất lượng phần mềm.
Phương pháp phân tích động cho phép kiểm tra mã nguồn của ứng dụng trong trạng thái đang chạy, mang lại cái nhìn thực tế về hiệu suất của ứng dụng Phương pháp này cung cấp thông tin theo thời gian thực, giúp phát hiện và khắc phục các vấn đề hiệu suất một cách hiệu quả hơn.
Trong giai đoạn này, các cuộc tấn công ứng dụng web như cross-site scripting, SQL injection và backdoor được sử dụng để phát hiện lỗ hổng của mục tiêu Người kiểm tra sau đó sẽ cố gắng khai thác những lỗ hổng này, thường nhằm giành quyền kiểm soát hệ thống, đánh cắp dữ liệu, hoặc chặn lưu lượng, từ đó đánh giá thiệt hại mà chúng có thể gây ra.
Mục tiêu của giai đoạn này là kiểm tra khả năng khai thác lỗ hổng trong hệ thống bị xâm nhập, nhằm xác định liệu hacker có thể duy trì quyền truy cập lâu dài để thâm nhập sâu vào hệ thống hay không Điều này tương tự như các cuộc tấn công APT, thường kéo dài nhiều tháng và nhằm mục đích đánh cắp dữ liệu nhạy cảm của tổ chức.
Kết quả kiểm thử thâm nhập sau đó được tổng hợp thành một báo cáo chi tiết, bao gồm:
Lỗ hổng cụ thể đã được khai thác
Dữ liệu nhạy cảm được truy cập
Thời lượng mà người tiến hành cuộc kiểm tra pen test có thể ở lại trong hệ thống mà không bị phát hiện
Nhân viên bảo mật đã phân tích thông tin để cấu hình WAF cho doanh nghiệp, đồng thời đề xuất các giải pháp bảo mật ứng dụng nhằm khắc phục lỗ hổng và bảo vệ hệ thống trước các cuộc tấn công trong tương lai.
Burp Suite là một bộ công cụ phổ biến dành cho thử nghiệm tấn công ứng dụng web, được phát triển bởi PortSwigger, chuyên về an ninh và kiểm tra bảo mật ứng dụng Bộ công cụ này bao gồm nhiều công cụ hữu ích để phát hiện và kiểm tra các lỗ hổng bảo mật trong ứng dụng và máy chủ web.
Burp Suite là một bộ công cụ kiểm tra xâm nhập ứng dụng web, được phát triển bởi Portswigger, công ty do Dafydd Stuttard sáng lập Burp Suite cung cấp tính năng toàn diện và khả năng nâng cao thông qua việc cài đặt thêm các tiện ích bổ sung.
Burp Suite, với tên gọi BApps cho các tiện ích mở rộng, là một công cụ kiểm tra thâm nhập phổ biến và hiệu quả hơn so với các lựa chọn miễn phí như OWASP ZAP Được sử dụng rộng rãi để kiểm tra bảo mật ứng dụng web, Burp Suite là một công cụ dựa trên proxy giúp đánh giá tính bảo mật của các ứng dụng trực tuyến và thực hiện kiểm tra thực hành Với hơn 58,000 người dùng, Burp Suite hiện đang là trình quét lỗ hổng bảo mật trên web được ưa chuộng nhất trên toàn cầu.
Hình 5 Giao diện chính của Burp Suite.
Burp Suite là một công cụ mạnh mẽ dùng để kiểm tra lỗ hổng bảo mật trong ứng dụng và máy chủ web Tuy nhiên, để sử dụng Burp Suite hiệu quả, người dùng cần có kiến thức vững về bảo mật, vì công cụ này không thể thay thế sự hiểu biết cần thiết.
2.3 Các công cụ chính của Burpsuite
Hình 6 Màn hình chính Proxy server.
Tab Proxy là thành phần quan trọng nhất trong phần mềm Burp Suite Trong tab proxy, chức năng HTTP history lưu trữ lịch sử các request được thực hiện khi tương tác với ứng dụng Người dùng có thể sử dụng thông tin này để xem chi tiết các request và response của ứng dụng.
Để sử dụng Proxy trong ứng dụng, người dùng cần chọn một request và gửi nó đến các công cụ khác như Intruder, Comparer, Repeater Đầu tiên, truy cập vào Proxy, chọn Subtab Intercept và nhấn Open Browse Tiếp theo, đảm bảo rằng Intercept is off Khi trình duyệt Chromium khởi chạy, bạn có thể truy cập bất kỳ trang web nào và theo dõi các request được ghi nhận.
Công cụ Proxy server cho phép theo dõi và phân tích lưu lượng HTTP từ các ứng dụng web, giúp người dùng xem toàn bộ dữ liệu được gửi và nhận, bao gồm cả thông tin nhạy cảm như mật khẩu và thông tin thẻ tín dụng.
Hình 7 Màn hình hiển thị lịch sử lưu lượng HTTP trên Proxy server.
Proxy server trong Burp Suite có thể được sử dụng cho một số mục đích, bao gồm:
Proxy server trong Burp Suite là công cụ quan trọng để kiểm tra bảo mật ứng dụng web, cho phép người dùng theo dõi toàn bộ dữ liệu gửi và nhận, bao gồm thông tin nhạy cảm như mật khẩu và thông tin thẻ tín dụng Việc này giúp xác định các lỗ hổng bảo mật có thể bị khai thác bởi tin tặc, từ đó nâng cao mức độ an toàn cho ứng dụng.
Dashboard
Dashboard trong Burp Suite là một công cụ trực quan giúp theo dõi tiến trình kiểm tra bảo mật Nó cung cấp cái nhìn tổng quan về tất cả hoạt động, bao gồm yêu cầu đã gửi, phản hồi đã nhận, vấn đề phát hiện và các hành động đã thực hiện.
Dưới đây là một số cách sử dụng tab Dashboard:
Theo dõi tiến độ kiểm tra là rất quan trọng; Tab Dashboard giúp bạn giám sát quá trình kiểm tra của mình, đảm bảo rằng mọi trang web hoặc ứng dụng web đều được kiểm tra đầy đủ.
Tab Dashboard giúp bạn phát hiện các vấn đề trên trang web hoặc ứng dụng web của mình Những vấn đề này có thể được sử dụng để tạo báo cáo về các lỗ hổng bảo mật, từ đó cải thiện an ninh cho trang web hoặc ứng dụng của bạn.
Tab Dashboard giúp bạn theo dõi các hành động đã thực hiện trên trang web hoặc ứng dụng web của mình, cho phép bạn dễ dàng xem lại những gì đã làm trong quá trình kiểm tra.
Tab Dashboard là công cụ hữu ích để nâng cao hiệu quả kiểm tra bảo mật Việc sử dụng Tab Dashboard được khuyến nghị trong tất cả các cuộc kiểm tra bảo mật của bạn.
Scanner
Công cụ Scanner giúp phát hiện tự động các lỗ hổng bảo mật phổ biến trong ứng dụng web, hỗ trợ người dùng nhận diện và khắc phục các lỗ hổng trước khi bị tin tặc khai thác.
Scanner trong Burp Suite có thể được sử dụng cho một số mục đích, bao gồm:
Burp Suite cung cấp tính năng Scanner, cho phép tự động phát hiện các lỗ hổng bảo mật phổ biến trong ứng dụng web Tính năng này hỗ trợ người dùng nhận diện và khắc phục các lỗ hổng trước khi bị tin tặc khai thác.
Burp Suite cung cấp công cụ Scanner để phân tích kết quả quét và xác định các lỗ hổng bảo mật quan trọng Việc này giúp người dùng nhận diện và ưu tiên các vấn đề bảo mật cần khắc phục, từ đó nâng cao hiệu quả bảo vệ hệ thống.
Scanner trong Burp Suite cho phép người dùng tạo báo cáo chi tiết về kết quả quét, điều này rất hữu ích để chia sẻ thông tin với các bên liên quan như quản trị viên hệ thống và quản trị viên bảo mật.
Intruder
Công cụ Intruder cho phép thực hiện các cuộc tấn công thử nghiệm trên ứng dụng web nhằm phát hiện các lỗ hổng bảo mật mới Việc này giúp người dùng nhanh chóng nhận diện và khắc phục những lỗ hổng mà các công cụ quét thông thường có thể bỏ sót.
Intruder trong Burp Suite có thể được sử dụng cho một số mục đích, bao gồm:
Intruder trong Burp Suite là công cụ hữu ích để thử nghiệm các lỗ hổng bảo mật trong ứng dụng web Việc sử dụng công cụ này giúp người dùng phát hiện và khắc phục các lỗ hổng trước khi chúng bị tin tặc khai thác.
Intruder trong Burp Suite là công cụ hữu ích để thử nghiệm các tính năng của ứng dụng web Việc sử dụng Intruder giúp người dùng phát hiện và khắc phục các vấn đề về hiệu suất cũng như các lỗ hổng bảo mật, từ đó nâng cao độ an toàn và hiệu quả của ứng dụng.
Intruder trong Burp Suite là công cụ hữu ích để tìm kiếm các khu vực nhạy cảm của ứng dụng web, giúp phát hiện và khai thác các lỗ hổng bảo mật hiệu quả.
The Intruder tab interface is utilized for brute-forcing usernames and passwords, testing directories, or examining IDOR vulnerabilities It automates the process of sending numerous similar requests containing payloads to the server, enhancing efficiency in security testing.
Repeater
Công cụ Repeater cho phép người dùng gửi và nhận yêu cầu HTTP đến ứng dụng web để thực hiện kiểm tra thủ công, giúp kiểm tra phản hồi của ứng dụng và phát hiện các vấn đề bảo mật.
Repeater trong Burp Suite là công cụ hữu ích để kiểm tra phản hồi của ứng dụng web, giúp người dùng phát hiện các vấn đề về hiệu suất và bảo mật.
Repeater trong Burp Suite là công cụ hữu ích để thử nghiệm các tính năng của ứng dụng web, giúp người dùng phát hiện và khắc phục các vấn đề liên quan đến hiệu suất cũng như bảo mật.
Sử dụng Repeater trong Burp Suite để xác định các khu vực nhạy cảm của ứng dụng web có thể giúp bạn phát hiện và khai thác lỗ hổng bảo mật hiệu quả.
Các kỹ thuật kiểm thử với Burpsuite
2.4.1 Kiểm thử tương tác qua giao diện web
Burp Suite là công cụ hữu ích để kiểm tra lỗi xác thực trong ứng dụng Bằng cách sử dụng các tính năng như Intruder, Repeater và Scanner, người dùng có thể phát hiện các lỗ hổng bảo mật Cụ thể, Intruder cho phép gửi nhiều yêu cầu với các giá trị khác nhau cho tham số xác thực Nếu ứng dụng cho phép đăng nhập mà không cần cung cấp tên người dùng và mật khẩu hợp lệ, điều này cho thấy có sự tồn tại của lỗi xác thực.
Burp Suite là công cụ hữu ích để kiểm tra lỗi cấu hình trong ứng dụng, nhờ vào các tính năng như Scanner và Passive Scanner Việc sử dụng Scanner giúp xác định xem ứng dụng có đang áp dụng các cài đặt bảo mật mặc định hay không Nếu ứng dụng vẫn sử dụng các cài đặt bảo mật mặc định, điều này có thể chỉ ra sự tồn tại của lỗ hổng bảo mật.
Kiểm tra tương tác qua giao diện web là một kỹ thuật kiểm tra bảo mật ứng dụng web quan trọng, sử dụng trình duyệt để tương tác và phân tích phản hồi từ ứng dụng Kỹ thuật này giúp phát hiện nhiều lỗ hổng bảo mật, bao gồm SQL Injection, Cross-site Scripting (XSS), Session Hijacking, File Upload Vulnerabilities và Broken Access Control Để thực hiện kiểm tra tương tác qua giao diện web với Burp Suite, bạn cần tuân theo các bước hướng dẫn cụ thể.
1 Cài đặt Burp Suite và khởi chạy nó.
2 Chọn tab "Proxy" trong Burp Suite.
5 Khi bạn tương tác với ứng dụng web, Burp Suite sẽ bắt các yêu cầu HTTP và phản hồi.
6 Bạn có thể xem các yêu cầu và phản hồi trong tab "Intercepted" trong Burp Suite.
7 Bạn có thể sử dụng các công cụ của Burp Suite để phân tích các yêu cầu và phản hồi để tìm các lỗ hổng bảo mật.
Hình 16 Intercepted 2.4.2 Kiểm thử SQL Injection
SQL injection là lỗ hổng bảo mật cho phép kẻ tấn công chèn mã SQL độc hại vào truy vấn, dẫn đến truy cập trái phép vào dữ liệu và thực thi mã độc trên máy chủ Burp Suite là công cụ hữu ích để phát hiện các lỗ hổng SQL injection, nhờ vào các tính năng như Intruder, Repeater và Scanner.
SQL injection (SQLi) là gì?
SQL injection (SQLi) là một lỗ hổng bảo mật web cho phép kẻ tấn công can thiệp vào các truy vấn của ứng dụng đối với cơ sở dữ liệu Lỗ hổng này thường cho phép kẻ tấn công truy cập vào dữ liệu mà họ không có quyền, bao gồm thông tin của người dùng khác hoặc dữ liệu mà ứng dụng có thể tiếp cận Hơn nữa, trong nhiều trường hợp, kẻ tấn công có khả năng sửa đổi hoặc xóa dữ liệu, dẫn đến những thay đổi không mong muốn trong nội dung và hành vi của ứng dụng.
Trong một số trường hợp, kẻ tấn công có thể leo thang một cuộc tấn công SQL
Tác động của một cuộc tấn công SQL injection thành công là gì?
Cuộc tấn công SQL injection có thể dẫn đến việc truy cập trái phép vào dữ liệu nhạy cảm như mật khẩu và thông tin thẻ tín dụng Nhiều vụ vi phạm dữ liệu nghiêm trọng gần đây xuất phát từ các cuộc tấn công này, gây thiệt hại lớn về uy tín và tiền phạt Kẻ tấn công có thể tạo ra một cửa hậu liên tục vào hệ thống của tổ chức, dẫn đến xâm phạm kéo dài mà có thể không bị phát hiện trong thời gian dài.
Cách phát hiện lỗ hổng SQL injection
Burp Suite là công cụ hiệu quả để phát hiện nhanh chóng và đáng tin cậy các lỗ hổng SQL injection trên các trang web.
SQLi có thể được phát hiện thủ công thông qua việc sử dụng một bộ kiểm tra hệ thống cho tất cả các điểm vào trong ứng dụng Quá trình này thường bao gồm việc kiểm tra cẩn thận từng yếu tố để đảm bảo an toàn cho ứng dụng.
Gửi ký tự trích dẫn đơn 'và tìm lỗi hoặc các điểm bất thường khác.
Để đánh giá giá trị cơ sở của điểm nhập và một giá trị khác trong SQL, bạn có thể sử dụng các cú pháp đặc biệt để thực hiện so sánh Điều này giúp phát hiện sự khác biệt có hệ thống trong các phản hồi kết quả của ứng dụng, từ đó cải thiện hiệu suất và độ chính xác của dữ liệu.
Gửi các điều kiện Boolean chẳng hạn như OR 1=1 và OR 1=2 và tìm kiếm sự khác biệt trong phản hồi của ứng dụng.
Gửi tải trọng được thiết kế nhằm kích hoạt độ trễ thời gian trong truy vấn SQL, giúp phân tích sự khác biệt về thời gian phản hồi.
Gửi tải trọng COAST được thiết kế nhằm kích hoạt tương tác mạng ngoài băng tần trong quá trình thực thi truy vấn SQL, đồng thời giám sát tất cả các tương tác phát sinh.
2.4.3 Kiểm thử XSS (Cross-Site Scripting)
XSS là lỗ hổng bảo mật cho phép kẻ tấn công chèn mã HTML độc hại vào trang web, dẫn đến việc đánh cắp cookie hoặc thông tin đăng nhập của người dùng Burp Suite là công cụ hữu ích để phát hiện các lỗ hổng XSS thông qua các tính năng như Intruder, Repeater và Scanner.
Lỗ hổng bảo mật XSS (tập lệnh chéo trang) cho phép kẻ tấn công can thiệp vào các tương tác của người dùng với ứng dụng web dễ bị tấn công, từ đó gây ra những rủi ro bảo mật nghiêm trọng.
Lỗ hổng cross-site scripting cho phép kẻ tấn công vi phạm chính sách gốc giống nhau, nhằm tách biệt các trang web Điều này cho phép kẻ tấn công giả mạo người dùng nạn nhân, thực hiện các hành động mà nạn nhân có thể làm và truy cập dữ liệu cá nhân của họ Nếu nạn nhân có quyền truy cập đặc quyền trong ứng dụng, kẻ tấn công có thể kiểm soát toàn bộ chức năng và dữ liệu của ứng dụng.
XSS hoạt động như thế nào?
Cross-site scripting (XSS) là một lỗ hổng bảo mật cho phép kẻ tấn công điều khiển một trang web dễ bị tấn công để gửi mã JavaScript độc hại tới người dùng Khi mã độc này được thực thi trong trình duyệt của nạn nhân, kẻ tấn công có thể hoàn toàn chiếm đoạt và thao túng sự tương tác của nạn nhân với ứng dụng.
Các kiểu tấn công XSS điển hình.
Có ba loại tấn công XSS chính Đó là:
XSS được phản ánh , trong đó tập lệnh độc hại đến từ yêu cầu HTTP hiện tại.
XSS được lưu trữ , nơi tập lệnh độc hại đến từ cơ sở dữ liệu của trang web.
XSS dựa trên DOM , trong đó lỗ hổng tồn tại trong mã phía máy khách chứ không phải mã phía máy chủ.
2.4.4 Kiểm thử Cross-site request forgery (CSRF)
PHÂN TÍCH KẾT QUẢ KIỂM TRA VÀ KHẮC PHỤC LỖ HỔNG 21 1 Báo cáo lỗi, cảnh báo và đánh giá mức độ nguy hiểm
Khắc phục lỗ hổng an ninh
1 https://portswigger.net/web-security/learning-path
2 https://portswigger.net/web-security/sql-injection
3 https://portswigger.net/web-security/cross-site-scripting
4 https://portswigger.net/web-security/csrf
5 https://github.com/frank-leitner/portswigger-websecurity-academy
6 https://apisecurity.io/encyclopedia/content/owasp/owasp-api-security-top-10.htm
7 https://123docz.net/document/10037671-hoc-phan-an-toan-mang-de-tai-ra-quet-lo- hong-bang-cong-cu-burp-suite.htm
8 https://viblo.asia/p/tang-hieu-qua-kiem-thu-web-voi-burp-suite-extension-phan-1- 3Q75wA3eZWb
9 https://vieclam123.vn/burp-suite-la-gi-b5882.html