Chuyển đến nội dung chính

14 công cụ mã nguồn mở giúp tìm kiếm lỗ hổng ứng dụng web

Trong quá khứ nhiều website nổi tiếng đã bị hacker tấn công và gây ra những hậu quả nghiêm trọng gây mất uy tín cho doanh nghiệp. Việc kiểm tra an ninh cho website vô cùng quan trọng nhằm tránh những tổn thất trong tương lai. Việc đánh giá an ninh cho website cần có những chuyên gia có tay nghề với chi phí lớn ngoài ra cần phối hợp sử dụng các công cụ Application Security Scanner để nhanh chóng tìm và đưa ra các bản vá kịp thời đảm bảo an ninh cho các website.

Application Security Scanner là chương trình phần mềm cho phép kiểm tra các lỗ hổng an ninh trên website.
Application Security Scanner với các bản thương mại mang lại hiệu quả khá cao như web Acunetix, bên cạnh đó còn nhiều chương trình webscan mã nguồn mở mang lại hiệu quả khá cao giúp các chuyên gia hay lập trình viên nhanh chóng, đỡ mất thời gian tìm ra các lỗi an ninh trên hệ thống website.
Các bạn không nên nhầm lẫn giữa các chương trình mã nguồn mở với các chương trình miễn phí chúng hoàn toàn khác nhau. Mã nguồn mở là có kho mã nguồn về ứng dụng đó để người dùng có thể tùy biến theo nhiều kiểu khác nhau, có khi được phát triển thành ứng dụng bán lấy tiền có khi chia sẻ miễn phí nhưng tất cả đều phải công bố mã nguồn còn các ứng dụng miễn phí tất nhiên là free nhưng mã nguồn của nó thì chưa biết được.

1. Grabber:
Là một máy quét lỗ hổng ứng dụng web các lỗ hổng mà nó có thể phát hiện:
Cross site scripting
SQL injection
Ajax testing
File inclusion
JS source code analyzer
Backup file check
Công cụ này được đánh giá chạy khá nhanh với các website nhỏ và mất nhiều thời gian với các website lớn.
Cộng cụ này phát triển bằng ngôn ngữ python và không cung cấp trình giao diện nào cho người dùng. Các bạn có thể tùy biến hay nghiên cứu mã nguồn của nó.
Source code on Github: https://github.com/neuroo/grabber

2. Vega:
Đây là công cụ phát triển dựa trên ngôn ngữ lập trình java có thể chạy trên nền tảng OSX, Window, Linux.
Công cụ Vega có thể tìm kiếm các lỗ hổng SQL injection, header injection, directory listing, shell injection, cross site scripting, file inclusion và một số lỗ hổng ứng dụng web khác.
Bạn có thể cài đặt số luồng quét tối đã mỗi giây khi bắt đầu kiểm tra 1 website.

3. Zed Attack Proxy:
Đây là công cụ được phát triển bởi AWASP chạy được trên nền tảng Window, OSX, Unix, Linux. Đây là công cụ đơn giản và dễ sử dụng.
Những tính năng của nó được liệt kê dưới đây:
Intercepting Proxy
Automatic Scanner
Traditional but powerful spiders
Fuzzer
Web Socket Support
Plug-n-hack support
Authentication support
REST based API
Dynamic SSL certificates
Smartcard and Client Digital Certificates support

4. Wapiti :
Đây cũng là một công cụ kiểm tra an ninh website tốt. Phương thức kiểm tra an ninh trên web của nó là quét các đường link và chèn giữ liệu test lên các đối tượng ( texbox...), nó hỗ trợ GET cà POST HTTP. Các lỗ hổng có thể được phát hiện bằng công cụ này:
File Disclosure
File inclusion
Cross Site Scripting (XSS)
Command execution detection
CRLF Injection
SEL Injection and Xpath Injection
Weak .htaccess configuration
Backup files disclosure
Đây là công cụ sử dụng dòng lệnh để thao tác nên dành cho các chuyên gia với các bạn mới bắt đầu thì sẽ khó sử dụng.
Download Wapiti with source code: http://wapiti.sourceforge.net/

5. W3af :
Công cụ kiểm tra an ninh web này được phát triển bằng ngôn ngữ python. Sử dụng công cụ này bạn có thể kiểm tra được hơn 200 lỗ hổng ứng dụng web bao gồm các lỗ hổng nguy hiểm như: SQL injection, Cross-Site Scripting.
Điều đặc biệt là công cụ này được đi kèm với giao diện đồ họa với các tùy chọn cho phép người dùng dễ dàng sử dụng.
Chi tiết hơn về công cụ này:
Download it from the official website: http://w3af.org/

6. WebScarab :
Đây không phải một công cụ dành cho người mới bắt đầu vì nó được thiết kế cho những người hiểu biết tốt về HTTP và biết viết mã.
Ngoài các tính năng như các công cụ kiểm tra an ninh website khác công cụ có chức năng như con nhện tự động tìm kiếm các link của mục tiêu và đưa ra các kịch bản nhằm kiểm tra lỗ hổng trên các link đó.
Các lỗ hổng có thể được phát hiện bởi công cụ: SQL injection, XSS< CRLF và nhiều hơn nữa.
Source code of the tool is available on Github: https://github.com/OWASP/OWASP-WebScarab

7. Skipfish:
Đây là công cụ viết bằng ngôn ngữ lập trình C. Nó được tối ưu để có thể chạy 2000 request mỗi giây mà không cần quá nhiều CPU máy tính nên tốc độ khá nhanh.
Công cụ này được chạy trên các nền tảng: OSX, Linux, Window.
Download Skipfish or code from GOogle Codes: http://code.google.com/p/skipfish/

8. Ratproxy:
Ratproxy cũng là một công cụ mã nguồn mở kiểm tra an ninh ứng dụng web. Nó hỗ trợ Linux, FreeBSD, MacOS X, và (Cygwin) môi trường Windows.
Công cụ này được thiết kế để khắc phục những vấn đề người dùng thường gặp phải khi sử dụng các công cụ proxy khác để kiểm tra an ninh. Nó có khả năng phân biệt giữa css và mã JavaScript. Nó cũng hỗ trợ giao thức SSL khi kiểm tra an ninh, có nghĩa là bạn cũng có thể xem dữ liệu khi website chạy SSL.
Bạn có thể đọc thêm về công cụ này ở đây: http://code.google.com/p/ratproxy/wiki/RatproxyDoc

9. SQLMap:
Đây có lẽ là công cụ sử dụng phổ biến nhất và nhiều bạn biết về nó.
QALMap được viết trên ngôn ngữ lập trình Python và chạy bằng command line trên cả 3 nền tảng OSX, Linux, Window.
Bạn có thể tìm hiểu thêm về công cụ này tại:

10. Wfuzz:
Wfuzz là một công cụ mã nguồn mở tự do có để kiểm tra an ninh ứng dụng web. Nó có thể được sử dụng để thực thi truy vấn GET và POST nhằm phát hiện các lỗ hổng an ninh như SQL, XSS, LDAP và nhiều thứ khác. Nó cũng hỗ trợ cookie fuzzing, multi-threading, SOCK, Proxy, Authentication, parameters brute forcing, multiple proxy...vvv
Đây là công cụ không hỗ trợ giao diện nên các bạn phải dùng dòng lệnh để sử dụng.
Download Wfuzz from code.google.com: http://code.google.com/p/wfuzz/

11. Grendel-Scan:
Đây là công cụ được phát triển bằng ngôn ngữ Java chạy được trên các nền tảng OSX, Linux và Window. Nó giúp các chuyên gia nhanh chóng tìm ra các lỗ hổng ứng dụng web.
Download the tool and source code: http://sourceforge.net/projects/grendel/

12. Watcher:
Khác với các công cụ khác đây là một chương trình thụ động dưới dạng add-on. Để sử dụng nó bạn cần cài đặt Fiddler trước rùi cài thêm add-on Watcher vào.
Là một máy quét thụ động nên nó không gây ảnh hưởng tới website hay cơ sở hạ tầng của website đó.
Download watcher and its source code: http://websecuritytool.codeplex.com/

13. X5S:
Đây của là một add-on của Fiddler để dùng được nó bạn cũng phải cài đặt Fiddler trước.
Download X5S and source code from codeplex: http://xss.codeplex.com/

14. Arachni:
Arachni là một công cụ mã nguồn mở được phát triển để cung cấp một môi trường thử nghiệm thâm nhập. Công cụ này có thể phát hiện các lỗ hổng bảo mật ứng dụng web khác nhau. Nó có thể phát hiện các lỗ hổng khác nhau như SQL Injection, XSS, Local File inclusion, remote file inclusion, unvalidated redirect và nhiều lỗ hổng khác.
Download this tool here: http://www.arachni-scanner.com/
Qua bài viết này các bạn có thể biết thêm một số công cụ giúp tìm kiếm lỗ hổng an ninh website. Bài viết mình chỉ giới thiệu sơ qua về các công cụ trên hy vọng các bạn sẽ có các bài chi tiết giới thiệu tầng công cụ đó để mọi người cùng tìm hiểu.


Nguồn: resources dot infosecinstitute dot com - Dịch DiepNV88

Nhận xét

Bài đăng phổ biến từ blog này

HttpOnly Flag và Secure Flag của chiếc Cookie để làm gì?

Cookies rất hữu ích nhưng cũng tồn tại không ít rủi ro. Bài viết sau đây giúp tìm hiểu rõ thêm về 2 thuộc tính giúp bảo vệ Cookies là Httponly flag   và Secure flag.   Nếu anh em mò vào được bài này thì chắc cũng biết về Cookie rồi, nhưng còn hiểu lơ mơ    thì click vào đây trước nhé -  Cookie . Chuyện kể rằng, ngày xửa ngày xưa, có một "nghệ sĩ" nọ do không sao kê tiền từ thiện nên đã bị hacker tấn công chiếm rất nhiều tài khoản do bị mất cookie.  1. Tại sao lại mất?   Nguyên nhân "nghệ sĩ" bị mất thông tin cá nhân là do quá chủ quan khi click đọc email do rất nhiều "fan" gửi cho, trong những email đó có gắn đường link chứa mã độc đánh cắp cookie của 1 trang web nào đó.  Do cookies phản hồi từ server mà các đường link đó dẫn tới không được bảo vệ     nên đã bị đối tượng xấu lấy mất cookies chứa xác thực đăng nhập -> dẫn tới mất thông tin. Về mặt bản chất, cũng có thể hiểu đây như là một cuộc tấn công XSS , đối tượng gửi email sẽ execute một đoạn scri

Mã hóa đối xứng và bất đối xứng

Hôm nay mình xin được nói về hai thuật toán cơ bản và quan trong nhất trong bảo mật đó là mã hóa đối xứng và mã hóa bất đối xứng . 1. Mã hóa đối xứng (mã hóa không công khai- symmetric-key algorithms ) - Là lớp thuật toán các mã hóa trong đó việc mã hóa và giải mã đều dùng chung cho 1 khóa (secret key) 1.1 Các loại thuật toán khóa đối xứng Thuật toán đối xứng có thể được chia ra làm hai thể loại, mật mã luồng ( stream ciphers ) và mật mã khối ( block ciphers ). Mật mã luồng mã hóa từng bit của thông điệp trong khi mật mã khối gộp một số bit lại và mật mã hóa chúng như một đơn vị. Cỡ khối được dùng thường là các khối 64 bit. Thuật toán tiêu chuẩn mã hóa tân tiến ( Advanced Encryption Standard ), được NIST công nhận tháng 12 năm 2001, sử dụng các khối gồm 128 bit. Các thuật toán đối xứng thường không được sử dụng độc lập. Trong thiết kế của các hệ thống mật mã hiện đại, cả hai thuật toán bất đối xứng ( asymmetric ) (dùng chìa khóa công khai) và thuật toán đối xứng được sử

Những câu hỏi phỏng vấn kỹ sư bảo mật thường gặp.

Dưới đây là một danh sách các câu hỏi thường được sử dụng trong việc phỏng vấn tuyển dụng chuyên gia bảo mật. Nhiều câu hỏi được thiết kế buộc người được phỏng vấn phải suy nghĩ, và không thể chuẩn bị trước cho dạng câu hỏi này. Ở đó, các phản ứng của ứng viên cũng quan trọng  như câu trả lời. Một số câu hỏi được pha trộn giữa kỹ thuật và lý thuyết, hoặc câu hỏi tìm hiểu quan điểm của ứng viên để tạo ra những câu hỏi khó khăn hơn. Các câu hỏi cũng thường được chia thành các thể loại khác nhau, một số câu hỏi mẹo sẽ được chèn vào giữa. Mục đích của những câu hỏi dạng đánh đố này là tìm kiếm những điểm yếu kỹ thuật thường chỉ xuất hiện khi ứng viên đi vào làm việc :| . Nhóm câu hỏi chung 1. Giữa các dự án mã mở và mã đóng, bên nào bảo mật hơn? Câu trả lời của ứng viên sẽ nói rất nhiều về họ. Nó cho thấy 1) họ biết những khái niệm gì trong phát triển phần mềm, 2) cho thấy mức độ chín chắn của ứng viên. Mục tiêu chính của câu hỏi là đưa ra được ưu/ nhược điểm của hệ mã đóng và mã m