Threat Evaluation Improvements: Simplify conditions and first step toward detecting mitigations

Đang mở
#152 12 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 3 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
20/100
Loại issue
Tính năng
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
python
Lĩnh vực
security

Hướng nghiên cứu

Bắt đầu bằng cách đọc phần thảo luận của issue và cách xử lý threatlib và Element hiện có được đề cập trong đề xuất. Xác nhận với các maintainer hành vi dự kiến của target_condition và ThreatResult; công việc được xem là hoàn tất khi có một triển khai được thống nhất, phân biệt được các mối đe dọa không hợp lệ, không áp dụng, đã giảm thiểu và hợp lệ, đồng thời cung cấp các kết quả được yêu cầu.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

When using pytm to find threats I found most threats do not apply which would require me to re-write conditions to detect applicable components. Instead to address this I added a new condition to the threatlib called 'target_condition" to detect if the target is relevant for the Threat. For example using INP01 : Buffer Overflow via Environment Variables I have a target_condition of 'target.usesEnvironmentVariables' with the 'condition' of target.sanitizesInput is False and target.checksInputBounds is False another example would be applying SQLi to a Server or Process only if one of the outbound data flows as a sink of Database and isSQL = True.

This is basically what I was getting after with #14 although i described it differently.

To be able to see this in report and ensure the target conditions are valid I have taken a step towards detecting mitigations. When applying a threat I have created a ThreatResult class for invalid target, not applicable threats (target_condition = False), mitigated (target_condition == True and condition == False) and Valid. Added lists of Threats for na, mitigated threats in Element.

Things are mostly functional locally but still playing with a few things. I would like to get anyones thoughts as I continue with this.

Ngôn ngữ chính
Python
Star
1.2k
Fork
237
Merge trung bình
4 ngày 2 giờ
Pull request đã merge (30 ngày)
9

Chuẩn bị môi trường

Mở trong Codespaces

Khởi chạy dev container của dự án ngay trên trình duyệt, bằng tài khoản GitHub của bạn.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của OWASP/pytm

Tất cả issue của OWASP/pytm

Issue tương tự

Thêm issue về Python

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.