Tiếp cận, công cụ và kỹ thuật kiểm tra bảo mật

04/01/2022   Security

Tiếp cận, công cụ và kỹ thuật kiểm tra bảo mật

1. GIỚI THIỆU VỀ KIỂM TRA BẢO MẬT

Kiểm tra bảo mật là một quá trình được thực hiện với mục đích tiết lộ lỗ hổng trong các cơ chế bảo mật và tìm ra các lỗ hổng hoặc điểm yếu của các ứng dụng phần mềm. Các vi phạm bảo mật gần đây của các hệ thống tại các nhà bán lẻ như Target  và  Home Depot , cũng như đối thủ cạnh tranh của Apple Pay là Current C , nhấn mạnh tầm quan trọng của việc đảm bảo rằng các nỗ lực kiểm tra bảo mật của bạn được cập nhật.

Mục tiêu chính của thử nghiệm bảo mật là tìm hiểu mức độ dễ bị tấn công của hệ thống và xác định xem dữ liệu và tài nguyên của nó có được bảo vệ khỏi những kẻ xâm nhập tiềm năng hay không. Các giao dịch trực tuyến đã gia tăng nhanh chóng do trễ hạn khiến kiểm tra bảo mật là một trong những lĩnh vực kiểm tra quan trọng nhất đối với các ứng dụng web như vậy. Kiểm tra bảo mật hiệu quả hơn trong việc xác định các lỗ hổng tiềm ẩn khi được thực hiện thường xuyên.

Thông thường, kiểm tra bảo mật có các thuộc tính sau:

  • Xác thực
  • Ủy quyền
  • Bảo mật
  • khả dụng
  • Chính trực
  • Không bác bỏ
  • Khả năng phục hồi
  • Authentication
  • Authorization
  • Confidentiality
  • Availability
  • Integrity
  • Non-repudiation
  • Resilience

2. TẠI SAO KIỂM TRA BẢO MẬT

Kiểm tra hệ thống, trong kịch bản hiện tại, là phải xác định và xử lý các lỗ hổng bảo mật ứng dụng web để tránh bất kỳ trường hợp nào sau đây:

  • Làm mất lòng tin của khách hàng.
  • Làm phiền đến phương tiện tạo / thu tiền trực tuyến của bạn.
  • Thời gian ngừng hoạt động của trang web, mất thời gian và chi phí khắc phục thiệt hại (cài đặt lại dịch vụ, khôi phục bản sao lưu, v.v.)
  • Chi phí liên quan đến việc bảo mật các ứng dụng web chống lại các cuộc tấn công trong tương lai.
  • Ý nghĩa pháp lý liên quan và lệ phí để có các biện pháp an ninh lỏng lẻo tại chỗ.

3. CÁC LOẠI MỐI ĐE DỌA

Dưới đây là các loại mối đe dọa khác nhau có thể được sử dụng để tận dụng lỗ hổng bảo mật.

Nâng cao đặc quyền – Privilege Elevation

Nâng cao đặc quyền là một loại tấn công trong đó tin tặc có tài khoản trên hệ thống và sử dụng tài khoản đó để tăng đặc quyền hệ thống của mình lên một cấp độ cao hơn mức mà anh ta / cô ta không có ý định có. Nếu thành công, kiểu tấn công này có thể dẫn đến việc hacker có được các đặc quyền cao như root trên hệ thống UNIX. Một khi hacker có được đặc quyền của người dùng siêu cấp, anh ta có thể chạy mã với mức đặc quyền này và toàn bộ hệ thống sẽ bị xâm phạm một cách hiệu quả.

Tiêm SQL – SQL Injection

SQL tiêm là kỹ thuật tấn công lớp ứng dụng phổ biến nhất được sử dụng bởi tin tặc, trong đó các câu lệnh SQL độc hại được chèn vào trường nhập để thực thi. Các cuộc tấn công SQL injection là rất quan trọng vì kẻ tấn công có thể lấy thông tin quan trọng từ cơ sở dữ liệu máy chủ. Đây là một kiểu tấn công lợi dụng các sơ hở trong quá trình triển khai các ứng dụng web cho phép hacker xâm nhập hệ thống. Để kiểm tra SQL injection, chúng ta phải quan tâm đến các trường đầu vào như hộp văn bản, nhận xét, v.v. Để ngăn chặn việc chèn, các ký tự đặc biệt phải được xử lý đúng cách hoặc bỏ qua khỏi đầu vào.

Truy cập dữ liệu trái phép – Unauthorized Data Access

Một trong những kiểu tấn công phổ biến hơn là giành quyền truy cập trái phép vào dữ liệu trong ứng dụng. Dữ liệu có thể được truy cập trên máy chủ hoặc trên mạng.

Truy cập trái phép bao gồm:

  • Truy cập trái phép vào dữ liệu thông qua các hoạt động tìm nạp dữ liệu
  • Truy cập trái phép vào thông tin xác thực máy khách có thể sử dụng lại bằng cách giám sát quyền truy cập của người khác
  • Truy cập trái phép vào dữ liệu bằng cách giám sát quyền truy cập của người khác

Thao tác URL – URL Manipulation

Thao tác URL là quá trình thao túng các chuỗi truy vấn URL của trang web và nắm bắt các thông tin quan trọng của tin tặc. Điều này xảy ra khi ứng dụng sử dụng phương thức HTTP GET để chuyển thông tin giữa máy khách và máy chủ. Thông tin được truyền trong các tham số trong chuỗi truy vấn. Người kiểm tra có thể sửa đổi giá trị tham số trong chuỗi truy vấn để kiểm tra xem máy chủ có chấp nhận nó hay không.

Từ chối dịch vụ – Denial of Service

Tấn công từ chối dịch vụ (DoS) là một nỗ lực rõ ràng nhằm làm cho máy hoặc tài nguyên mạng không khả dụng cho người dùng hợp pháp của nó. Các ứng dụng cũng có thể bị tấn công theo cách khiến ứng dụng và đôi khi toàn bộ máy không thể sử dụng được.

Thao tác dữ liệu – Data Manipulation

Khi thao túng dữ liệu, một tin tặc thay đổi dữ liệu được sử dụng bởi một trang web để đạt được một số lợi thế hoặc để làm khó chủ sở hữu của trang web. Tin tặc thường sẽ có quyền truy cập vào các trang HTML và thay đổi chúng thành châm biếm hoặc gây khó chịu.

Nhận dạng giả mạo – Identity Spoofing

Giả mạo danh tính là một kỹ thuật trong đó tin tặc sử dụng thông tin đăng nhập của người dùng hoặc thiết bị hợp pháp để khởi động các cuộc tấn công chống lại máy chủ mạng, đánh cắp dữ liệu hoặc bỏ qua các kiểm soát truy cập. Việc ngăn chặn cuộc tấn công này đòi hỏi phải giảm thiểu cơ sở hạ tầng CNTT và cấp độ mạng.

Kịch bản chéo trang (XSS) – Cross-Site Scripting (XSS)

Cross-site scripting là một lỗ hổng bảo mật máy tính được tìm thấy trong các ứng dụng web. XSS cho phép kẻ tấn công đưa tập lệnh phía máy khách vào các trang Web được người dùng khác xem và lừa người dùng nhấp vào URL đó. Sau khi được thực thi bởi trình duyệt của người dùng khác, mã này sau đó có thể thực hiện các hành động như thay đổi hoàn toàn hoạt động của trang web, đánh cắp dữ liệu cá nhân hoặc thực hiện các hành động thay mặt người dùng.

Tất cả các cuộc tấn công được liệt kê ở trên là các lớp đe dọa quan trọng nhất nhưng chúng không phải là tất cả.

Kiểm tra bảo mật

KỸ THUẬT KIỂM TRA AN NINH

- Để ngăn chặn tất cả các mối đe dọa / lỗ hổng kiểm tra bảo mật ở trên và thực hiện kiểm tra bảo mật trên một ứng dụng web, yêu cầu phải có kiến ​​thức tốt về giao thức HTTP và hiểu biết về giao tiếp máy khách (trình duyệt) - máy chủ thông qua HTTP. Ngoài ra, kiến ​​thức cơ bản về SQL injection và XSS là bắt buộc. Các kỹ thuật sau sẽ giúp thực hiện kiểm tra bảo mật chất lượng:

Cross Site Scripting (XSS):

Người kiểm tra cũng nên kiểm tra ứng dụng web để tìm XSS (Tập lệnh chéo trang). Ứng dụng không chấp nhận bất kỳ HTML nào, ví dụ: <HTML> hoặc bất kỳ tập lệnh nào, ví dụ: <SCRIPT>. Nếu đúng như vậy, ứng dụng có thể dễ bị tấn công bởi Cross Site Scripting.

Kẻ tấn công có thể sử dụng phương pháp này để thực thi các tập lệnh hoặc URL độc hại trên trình duyệt của nạn nhân. Sử dụng tập lệnh trên nhiều trang web, những kẻ tấn công có thể sử dụng các tập lệnh như JavaScript để lấy cắp cookie của người dùng và thông tin được lưu trữ trong cookie.

Kiểm tra kịch bản trang chéo có thể được thực hiện cho:

  1. Dấu nháy đơn
  2. Dấu hiệu Greater-Than
  3. Dấu hiệu ít hơn

Hacking đạo đức (Ethical Hacking)

Hack theo đạo đức có nghĩa là hack được thực hiện bởi một công ty hoặc cá nhân để giúp xác định các mối đe dọa tiềm ẩn trên máy tính hoặc mạng. Một hacker có đạo đức cố gắng vượt qua bảo mật hệ thống và tìm kiếm bất kỳ lỗ hổng nào có thể bị khai thác bởi các hacker độc hại hay còn gọi là Mũ đen. Mũ trắng có thể đề xuất những thay đổi đối với hệ thống để chúng ít bị mũ đen xâm nhập hơn.

Bẻ khóa mật khẩu (Password Cracking)

Bẻ khóa mật khẩu là phần quan trọng nhất trong khi kiểm tra hệ thống. Để truy cập các khu vực riêng tư của ứng dụng, tin tặc có thể sử dụng công cụ bẻ khóa mật khẩu hoặc có thể đoán tên người dùng / mật khẩu thông thường. Tên người dùng và mật khẩu thông thường dễ dàng có sẵn trực tuyến cùng với các ứng dụng bẻ khóa mật khẩu mã nguồn mở. Cho đến khi một ứng dụng web thực thi một mật khẩu phức tạp (ví dụ mật khẩu dài với sự kết hợp của các số, chữ cái và ký tự đặc biệt), bạn sẽ dễ dàng bẻ khóa tên người dùng và mật khẩu. Một cách khác để bẻ khóa mật khẩu là nếu tên người dùng / mật khẩu nhắm mục tiêu cookie nếu cookie được lưu trữ mà không có mã hóa.

Kiểm tra thâm nhập (Penetration Testing)

Kiểm tra thâm nhập là một cuộc tấn công vào hệ thống máy tính với mục đích tìm ra các lỗ hổng bảo mật, có khả năng đạt được quyền truy cập vào nó, chức năng và dữ liệu của nó.

Đánh giá rủi ro (Risk Assessment)

Đây là một quá trình đánh giá và quyết định rủi ro liên quan đến loại tổn thất và khả năng xuất hiện lỗ hổng. Điều này được xác định trong tổ chức bằng nhiều cuộc phỏng vấn, thảo luận và phân tích.

Kiểm toán an ninh(Security Auditing)

Đánh giá an ninh là một đánh giá có hệ thống về tính bảo mật của hệ thống thông tin của công ty bằng cách đo lường mức độ tuân thủ của nó đối với một bộ tiêu chí đã thiết lập.

Quét an ninh(Security Scanning)

Đây là chương trình giao tiếp với ứng dụng web thông qua giao diện người dùng web để xác định các lỗ hổng bảo mật tiềm ẩn trong ứng dụng web, Hệ điều hành và Mạng.

SQL Injection:

Điều tiếp theo cần được kiểm tra là SQL tiêm. Việc nhập một trích dẫn (') trong bất kỳ hộp văn bản nào sẽ bị ứng dụng từ chối. Thay vào đó, nếu người kiểm tra gặp lỗi cơ sở dữ liệu, điều đó có nghĩa là đầu vào của người dùng được chèn vào một số truy vấn mà sau đó ứng dụng sẽ thực thi. Trong trường hợp như vậy, ứng dụng dễ bị chèn SQL.

Các cuộc tấn công SQL injection rất quan trọng vì những kẻ tấn công có thể lấy thông tin quan trọng từ cơ sở dữ liệu máy chủ. Để kiểm tra các điểm nhập SQL vào ứng dụng web của bạn, hãy tìm mã từ cơ sở mã của bạn nơi các truy vấn MySQL trực tiếp được thực thi trên cơ sở dữ liệu bằng cách chấp nhận một số đầu vào của người dùng.

SQL Injection Testing có thể được thực hiện cho:

  • Dấu nháy đơn
  • Chân đế
  • Dấu phẩy
  • Dấu ngoặc kép

Quét lỗ hổng (Vulnerability Scanning)

Chương trình máy tính tự động để chủ động xác định các lỗ hổng bảo mật của các hệ thống máy tính trong mạng để xác định vị trí hệ thống có thể bị khai thác và / hoặc bị đe dọa.

Đánh giá tư thế  (Posture Assessment)

Điều này mô tả tư thế an ninh tổng thể của một tổ chức; nó là sự kết hợp của hack đạo đức, quét bảo mật và đánh giá rủi ro.

Thao tác URL thông qua các phương thức HTTP GET: (URL manipulation through HTTP GET methods)

Phương thức HTTP GET được sử dụng giữa ứng dụng khách và máy chủ để truyền thông tin. Người kiểm tra cần xác minh xem ứng dụng có đang chuyển thông tin quan trọng trong chuỗi truy vấn hay không. Thông tin qua HTTP được truyền trong các tham số trong chuỗi truy vấn. Để kiểm tra điều này, một giá trị tham số có thể được sửa đổi trong chuỗi truy vấn để kiểm tra xem máy chủ có chấp nhận nó hay không.

Thông thường, thông tin người dùng được chuyển qua yêu cầu HTTP GET đến máy chủ để xác thực hoặc tìm nạp dữ liệu. Tin tặc có thể thao tác đầu vào của yêu cầu GET này tới máy chủ để có thể thu thập thông tin cần thiết hoặc để làm hỏng dữ liệu. Bất kỳ hành vi đột ngột nào của ứng dụng hoặc máy chủ web, trong điều kiện như vậy, là chìa khóa để hacker xâm nhập vào ứng dụng.

Kiểm tra dữ liệu ad hoc cũng có thể được thực hiện như một phần của kiểm tra bảo mật:

  • Kiểm tra dữ liệu ngẫu nhiên được bao gồm trong các yêu cầu.
  • Kiểm tra dữ liệu ngẫu nhiên được bao gồm dưới dạng tham số.
  • Kiểm tra dữ liệu ngẫu nhiên được mã hóa bao gồm như tham số.

Kiểm tra tràn bộ đệm (Buffer Overflow Testing)

  • Kiểm tra giá trị ranh giới trên Độ dài của chuỗi, ví dụ: 128 byte, 256 byte, 1024 byte
  • Chuỗi dài của một ký tự
  • Các mẫu chuỗi khác nhau

4. PHƯƠNG PHÁP KIỂM TRA BẢO MẬT:

Chúng tôi có thể thực hiện phương pháp sau khi chuẩn bị và lập kế hoạch cho Kiểm tra bảo mật:

  • Nghiên cứu kiến ​​trúc bảo mật: Bước đầu tiên là hiểu các yêu cầu kinh doanh, mục tiêu bảo mật và các mục tiêu về tuân thủ bảo mật của tổ chức. Kế hoạch kiểm tra cần xem xét tất cả các yếu tố bảo mật, như tổ chức có thể đã lên kế hoạch để đạt được sự tuân thủ PCI .
  • Phân tích kiến ​​trúc bảo mật: Hiểu và phân tích các yêu cầu của ứng dụng đang được thử nghiệm.
  • Phân loại Kiểm tra Bảo mật: Thu thập tất cả thông tin thiết lập hệ thống được sử dụng để phát triển Phần mềm và Mạng như Hệ điều hành, công nghệ, phần cứng. Lập danh sách Lỗ hổng bảo mật và Rủi ro Bảo mật.
  • Lập mô hình Đe doạ: Dựa trên bước trên, chuẩn bị hồ sơ Đe doạ.
  • Lập kế hoạch kiểm tra: Dựa trên Mối đe dọa, Lỗ hổng và Rủi ro Bảo mật đã xác định, chuẩn bị kế hoạch kiểm tra để giải quyết những vấn đề này.
  • Chuẩn bị Ma trận xác định nguồn gốc: Đối với mỗi Mối đe dọa, Điểm yếu và Rủi ro bảo mật đã được xác định, hãy chuẩn bị Ma trận xác định nguồn gốc.
  • Công cụ kiểm tra bảo mật nhận dạng: Tất cả kiểm tra bảo mật không thể được thực hiện theo cách thủ công, vì vậy hãy xác định công cụ để thực thi tất cả các trường hợp kiểm tra bảo mật nhanh hơn và đáng tin cậy hơn.
  • Chuẩn bị trường hợp thử nghiệm: Chuẩn bị tài liệu trường hợp thử nghiệm bảo mật.
  • Thực thi trường hợp thử nghiệm: Thực hiện thực thi trường hợp kiểm tra bảo mật và kiểm tra lại các bản sửa lỗi. Thực hiện các trường hợp kiểm tra hồi quy.
  • Báo cáo: Chuẩn bị báo cáo chi tiết về Kiểm tra bảo mật có chứa Các lỗ hổng và Đe dọa, chi tiết các rủi ro và các vấn đề vẫn còn mở, v.v.

5. CÔNG CỤ KIỂM TRA BẢO MẬT

Đây chỉ là một vài công cụ kiểm tra bảo mật có sẵn cho các ứng dụng web.

Công cụ Sự miêu tả Yêu cầu
Thịt bò BeEF (Khung khai thác trình duyệt) là một công cụ tập trung vào trình duyệt web - điều này có nghĩa là nó lợi dụng thực tế là trình duyệt web mở là một hệ thống đích và thiết kế các cuộc tấn công của nó để tiếp tục từ thời điểm này trở đi. Linux, Apple Mac OS X và Microsoft Windows
BFBTester - Brute Force Binary Tester BFBTester là một công cụ để kiểm tra bảo mật của các chương trình nhị phân. BFBTester sẽ thực hiện kiểm tra các dòng lệnh đối số đơn và nhiều đối số và tràn biến môi trường. Công cụ này cảnh báo cho chuyên gia bảo mật cho bất kỳ chương trình nào sử dụng tên tempfile không an toàn bằng cách xem hoạt động tạo tempfile. POSIX, BSD, FreeBSD, OpenBSD, Linux
Người phanh Brakeman là một trình quét lỗ hổng mã nguồn mở được thiết kế cho các ứng dụng Ruby on Rails. Nó phân tích tĩnh mã ứng dụng Rails để tìm ra các vấn đề bảo mật ở bất kỳ giai đoạn phát triển nào. Đường ray 3
VƯỢT QUA Chương trình CROSS (Codenomicon Robust Open Software Software) được thiết kế để giúp các dự án nguồn mở, là một phần của cơ sở hạ tầng của internet, sửa các lỗi nghiêm trọng trong mã của họ. Dòng sản phẩm của Codenomicon là một bộ công cụ kiểm tra giao thức mạng được gọi là DEFENSICS giúp các dự án tìm và sửa một số lượng lớn các lỗi nghiêm trọng rất nhanh chóng. 130 giao thức và định dạng giao thức
Ettercap Ettercap là một công cụ bảo mật mạng mã nguồn mở và miễn phí dành cho các cuộc tấn công man-in-the-middle (MITM) trên mạng LAN. Công cụ bảo mật có thể được sử dụng để phân tích các giao thức mạng máy tính trong bối cảnh kiểm tra bảo mật.  
Kẻ phạm pháp Chương trình quét mã nguồn C / C ++ và báo cáo các lỗi bảo mật tiềm ẩn. Theo mặc định, nó sắp xếp các báo cáo theo mức độ rủi ro. Python 1.5 trở lên
Hiến binh Gendarme là một công cụ dựa trên quy tắc có thể mở rộng để tìm sự cố trong các ứng dụng và thư viện .NET. Gendarme kiểm tra các chương trình và thư viện chứa mã ở định dạng ECMA CIL (Mono và .NET) và tìm kiếm các vấn đề phổ biến với mã, các vấn đề mà trình biên dịch thường không kiểm tra hoặc chưa kiểm tra trước đây. .NET (Mono hoặc MS runtime)
Knock Subdomain Scan Knock là một công cụ quét hiệu quả để quét khám phá Vùng chuyển, miền phụ, kiểm tra ký tự đại diện với danh sách từ nội bộ hoặc bên ngoài. Công cụ này có thể rất hữu ích trong thử nghiệm thâm nhập hộp đen để tìm tên miền phụ dễ bị tổn thương. Linux, Windows và MAC OS X với Python phiên bản 2.x
Metasploit Metasploit Framework là một nền tảng nguồn mở tiên tiến để phát triển, thử nghiệm và sử dụng mã khai thác. Dự án này ban đầu bắt đầu như một trò chơi mạng di động và đã phát triển thành một công cụ mạnh mẽ để kiểm tra thâm nhập, phát triển khai thác và nghiên cứu lỗ hổng. Win32 / UNIX
Nữ tu sĩ Máy quét lỗ hổng Nessus là công ty hàng đầu thế giới về máy quét hoạt động, bao gồm khám phá tốc độ cao, kiểm tra cấu hình, hồ sơ tài sản, phát hiện dữ liệu nhạy cảm và phân tích lỗ hổng về tư thế bảo mật của bạn. Máy quét Nessus có thể được phân phối trên toàn bộ doanh nghiệp, bên trong DMZ và trên các mạng riêng biệt. Linux, Solaris, Mac, Windows
Không ai Nikto là một máy quét máy chủ web mã nguồn mở phục vụ cho các máy chủ web đặc biệt để phát hiện các cấu hình phần mềm lỗi thời, dữ liệu không hợp lệ và / hoặc CGI, v.v. Nó thực hiện các bài kiểm tra toàn diện nhiều lần đối với các máy chủ web. Windows / UNIX
Nmap Nmap (Network Mapper) là một trình quét mã nguồn mở để khám phá mạng và kiểm tra bảo mật. Nmap sử dụng các gói IP thô để xác định các máy chủ khả dụng trên mạng, dịch vụ nào (tên ứng dụng, phiên bản) mà các máy chủ đó đang cung cấp, hệ điều hành và phiên bản hệ điều hành mà chúng đang chạy, loại bộ lọc gói / tường lửa đang được sử dụng, và các những đặc điểm như vậy. Linux, Windows và Mac OS X.
nsiqcppstyle nsiqcppstyle nhằm mục đích cung cấp một trình kiểm tra kiểu mã hóa có thể mở rộng, dễ sử dụng, có khả năng duy trì cao cho mã nguồn C / C ++. Các quy tắc và công cụ phân tích được tách biệt và người dùng có thể phát triển các quy tắc kiểu mã hóa C / C ++ của riêng họ. Hơn nữa, có một máy chủ quy tắc có thể tùy chỉnh. Nền tảng độc lập
Oedipus Oedipus là một bộ phân tích và kiểm tra bảo mật ứng dụng web mã nguồn mở được viết bằng Ruby. Nó có khả năng phân tích các loại tệp nhật ký ngoại tuyến khác nhau và xác định các lỗ hổng bảo mật. Sử dụng thông tin được phân tích, Oedipus có thể tự động kiểm tra các trang web về các lỗ hổng ứng dụng và máy chủ web. Hệ điều hành độc lập
Proxy tấn công Zed Zed Attack Proxy (ZAP) là một công cụ kiểm tra thâm nhập tích hợp dễ sử dụng để tìm lỗ hổng trong các ứng dụng web. Nó được thiết kế để được sử dụng bởi những người có nhiều kinh nghiệm bảo mật và như vậy là lý tưởng cho các nhà phát triển và người thử nghiệm chức năng, những người mới thử nghiệm thâm nhập. Windows, Linux, Mac OS
Paros Paros là một proxy HTTP / HTTPS dựa trên Java để đánh giá lỗ hổng ứng dụng web. Tất cả dữ liệu HTTP và HTTPS giữa máy chủ và máy khách, bao gồm cookie và các trường biểu mẫu, có thể bị chặn và sửa đổi bằng cách sử dụng máy quét này. Đa nền tảng, Java JRE / JDK 1.4.2 trở lên
Bộ công cụ kỹ sư xã hội Bộ công cụ Social-Engineer (SET) là một công cụ mã nguồn mở và khái niệm dựa trên nó là các cuộc tấn công nhắm vào yếu tố con người hơn là vào yếu tố hệ thống. Nó cho phép bạn gửi email, java applet, vv có chứa mã tấn công. Linux, Apple Mac OS X và Microsoft Windows
ship cá Skipfish là một công cụ quét bảo mật lỗ hổng ứng dụng web đang hoạt động. Các chuyên gia bảo mật sử dụng công cụ này để quét các trang web của riêng họ để tìm các lỗ hổng. Các báo cáo do công cụ tạo ra nhằm làm nền tảng cho các đánh giá bảo mật ứng dụng web chuyên nghiệp. Linux, FreeBSD, MacOS X và Windows
Sao Chức Nữ Vega là một công cụ bảo mật web nguồn mở, đa nền tảng và dựa trên GUI, được sử dụng để tìm các phiên bản SQL SQL, kịch bản chéo trang (XSS) và các lỗ hổng khác trong các ứng dụng web. Vega cũng bao gồm một proxy chặn để gỡ lỗi ứng dụng web tương tác. Các mô-đun tấn công Vega được viết bằng JavaScript, người dùng có thể dễ dàng sửa đổi chúng hoặc tự viết. Java, Linux, Windows.
Wapiti Wapiti là một công cụ mã nguồn mở và dựa trên web để quét các trang web của các ứng dụng web đã triển khai, tìm kiếm các tập lệnh và biểu mẫu nơi nó có thể đưa dữ liệu vào. Nó được xây dựng bằng Python và có thể phát hiện lỗi xử lý tệp, cơ sở dữ liệu, XSS, LDAP và CRLF, phát hiện thực thi lệnh. Con trăn
WebScarab Một khung có nhiều trình cắm, được viết hoàn toàn bằng Java, để phân tích các ứng dụng giao tiếp thông qua các giao thức HTTP / HTTPS. Công cụ này chủ yếu được thiết kế cho các nhà phát triển có thể tự viết mã. Hệ điều hành độc lập
Bảo mật web Websecurify là một công cụ mã nguồn mở để tự động xác định các lỗ hổng ứng dụng web bằng cách sử dụng các công nghệ phát hiện và làm mờ tiên tiến. Nó có thể tạo các báo cáo đơn giản một khi chạy. Công cụ này là đa ngôn ngữ. Unix, Linux và Windows
Dây đeo Wireshark, trước đó được gọi là Ethereal, là một bộ phân tích gói mạng. Nó được các chuyên gia mạng trên toàn cầu sử dụng để khắc phục sự cố, phân tích, phát triển phần mềm và giao thức. Là một máy phân tích Giao thức Mạng, nó có tất cả các tính năng tiêu chuẩn mà người ta mong đợi và nhiều tính năng không có ở bất kỳ sản phẩm cạnh tranh nào. Unix, Linux và Windows

Bảng tiếng anh:

Tools Description Requirement
BeEF BeEF (Browser Exploitation Framework) is a tool which focuses on the web browser – this means it takes advantage of the fact that an open web-browser is the crack into a target system and designs its attacks to go on from this point onwards. Linux, Apple Mac OS X and Microsoft Windows
BFBTester – Brute Force Binary Tester BFBTester is a tool for security checks of binary programs. BFBTester will perform checks of single and multiple argument command line overflows and environment variable overflows. This tool alerts the security professional for any programs using unsafe tempfile names by watching for tempfile creation activity. POSIX, BSD, FreeBSD, OpenBSD, Linux
Brakeman Brakeman is an open source vulnerability scanner which is designed for Ruby on Rails applications. It statically analyzes Rails application code to find security issues at any stage of development. Rails 3
CROSS The CROSS (Codenomicon Robust Open Source Software) program is designed to help open source projects, that are part of the infrastructure of the internet, fix critical flaws in their code. Codenomicon’s product line is a suite of network protocol testing tools called DEFENSICS which helps the projects find and fix a large number of critical flaws very rapidly. 130 protocol interfaces and formats
Ettercap Ettercap is a free and open source network security tool for man-in-the-middle attacks (MITM) on LAN. The security tool can be used to analyze computer network protocols within a security auditing context.  
Flawfinder Program that scans C/C++ source code and reports potential security flaws. By default, it sorts its reports by risk level. Python 1.5 or greater
Gendarme Gendarme is an extensible rule-based tool to find problems in .NET applications and libraries. Gendarme inspects programs and libraries that contain code in ECMA CIL format (Mono and .NET) and looks for common problems with the code, problems that compilers do not typically check or have not historically checked. .NET (Mono or MS runtime)
Knock Subdomain Scan Knock is an effective scanning tool to scan Transfer Zone discovery, subdomains, Wildcard testing with internal or external wordlist. This tool can be very helpful in black box penetration test to find vulnerable subdomains. Linux, Windows and MAC OS X with Python version 2.x
Metasploit The Metasploit Framework is an advanced open-source platform for developing, testing, and using exploit code. This project initially started off as a portable network game and has evolved into a powerful tool for penetration testing, exploit development, and vulnerability research. Win32 / UNIX
Nessus The Nessus vulnerability scanner is the world-leader in active scanners, featuring high speed discovery, configuration auditing, asset profiling, sensitive data discovery and vulnerability analysis of your security posture. Nessus scanners can be distributed throughout an entire enterprise, inside DMZs, and across physically separate networks. Linux, Solaris, Mac, Windows
Nikto Nikto is an open source web server scanner that caters to web servers specially to detect outdated software configurations, invalid data and/or CGIs etc. It performs comprehensive tests multiple times against web servers. Windows/UNIX
Nmap Nmap (Network Mapper) is an open source scanner for network discovery and security auditing. Nmap uses raw IP packets to determine available hosts on the network, what services (app name, version) those hosts are offering, what operating systems and OS versions they are running on, what type of packet filters/firewalls are in use, and other such characteristics. Linux, Windows, and Mac OS X.
nsiqcppstyle nsiqcppstyle is aiming to provide an extensible, easy to use, highly maintainable coding style checker for C/C++ source code. The rules and analysis engine are separated and users can develop their own C/C++ coding style rules. Furthermore, there is a customizable rule server as well. Platform Independent
Oedipus Oedipus is an open source web application security analysis and testing suite written in Ruby. It is capable of parsing different types of log files off-line and identifying security vulnerabilities. Using the analyzed information, Oedipus can dynamically test web sites for application and web server vulnerabilities. OS Independent
Zed Attack Proxy The Zed Attack Proxy (ZAP) is an easy to use integrated penetration testing tool for finding vulnerabilities in web applications. It is designed to be used by people with a wide range of security experience and as such is ideal for developers and functional testers who are new to penetration testing. Windows, Linux, Mac OS
Paros Paros is a Java based HTTP/HTTPS proxy for assessing web application vulnerability. All HTTP and HTTPS data between server and client, including cookies and form fields, can be intercepted and modified using this scanners. Cross-platform, Java JRE/JDK 1.4.2 or above
Social Engineer Toolkit The Social-Engineer Toolkit (SET) is an open source tool and the concept that it is based on is that attacks are targeted at the human element than on the system element. It enables you to send emails, java applets etc. containing the attack code. Linux, Apple Mac OS X and Microsoft Windows
Skipfish Skipfish is an active web application vulnerability security scanning tool. Security professionals use this tool to scan their own sites for vulnerabilities. Reports generated by the tool are meant to serve as a foundation for professional web application security assessments. Linux, FreeBSD, MacOS X, and Windows
Vega Vega is a GUI-based, multi-platform and open source web security tool which is used to find instances of SQL injection, cross-site scripting (XSS), and other vulnerabilities in web applications. Vega also includes an intercepting proxy for interactive web application debugging. Vega attack modules are written in JavaScript, users can easily modify them or write their own. Java, Linux, Windows.
Wapiti Wapiti is an open source and web-based tool that scans the web pages of the deployed web applications, looking for scripts and forms where it can inject data. It is built with Python and can detect File handling errors, Database, XSS, LDAP and CRLF injections, Command execution detection. Python
WebScarab A framework with multiple plug in, written entirely in Java, for analyzing the applications that communicate through HTTP/HTTPS protocols. This tool is primarily designed for developers who can write code themselves. OS Independent
Websecurify Websecurify is an open source tool to automatically identify web application vulnerabilities by using advanced discovery and fuzzing technologies. It can create simple reports once ran. The tool is multilingual. Unix, Linux, and Windows
Wireshark Wireshark, earlier known as Ethereal, is a network packet analyzer. It is used by network professionals around the globe for troubleshooting, analysis, software and protocol development. As a Network Protocol analyzer it has all the standard features one would expect, and many features not available in any competitive product. Unix, Linux, and Windows

Nguồn: https://www.3pillarglobal.com/insights/approaches-tools-techniques-for-security-testing

Cám ơn.

Bài viết cùng chủ đề