mirror of
https://github.com/0xMarcio/cve.git
synced 2026-10-27 16:51:03 +00:00
Four gaps, measured against the index before any of this was written. ExploitDB and Metasploit are folded in the way nuclei templates were. ExploitDB covers 25,066 CVEs and adds 30,327 links across 17,237 entries; Metasploit covers 3,178 and adds 3,520 across 2,550. Together with the templates the index goes from 101,809 CVEs carrying a PoC to 103,945. Neither archive skews recent, which is why nuclei went first, but both are the difference between an old CVE having nothing and having something that runs. Each keeps its own section and its own field, and each leads the list ahead of the repositories: a module, an entry and a template all run as they stand, without reading somebody's code. EPSS now covers the index rather than the 4,274 CVEs a template happened to rate. FIRST's daily feed scores 103,783 of 103,945, so a result can say how likely a flaw is to be exploited in the next thirty days, not only that code exists for it. It is fetched during the site build and never tracked here: a daily rescore of 366,000 rows would be nothing but churn. The trending tables also stop hiding what they exist to show. The star floor excluded 1,059 of the 1,312 2026 PoC repositories pushed this quarter, and a repository published this morning has no stars, so the newest row on the front page was six days old. A separate lane drops the floor entirely and pays for it with a ten day window, a cap of ten rows, and the same paperwork check the rest of the table uses. The newest row is now hours old.
52 lines
1.2 KiB
YAML
52 lines
1.2 KiB
YAML
name: Sync Exploit Archives
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: '50 4 * * *'
|
|
|
|
permissions:
|
|
contents: write
|
|
|
|
concurrency:
|
|
group: repository-updates
|
|
cancel-in-progress: false
|
|
|
|
jobs:
|
|
ScheduledRun:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v7
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v7
|
|
with:
|
|
python-version: '3.13'
|
|
|
|
- name: Pull ExploitDB and Metasploit into the index
|
|
run: python3 scripts/sync_exploits.py
|
|
|
|
- name: Check for changes and commit
|
|
run: |
|
|
git config user.name 'CVE-BOT'
|
|
git config user.email '[email protected]'
|
|
git add -u
|
|
|
|
if git diff --cached --quiet; then
|
|
echo "No changes to commit"
|
|
exit 0
|
|
fi
|
|
|
|
git commit -m "Sync exploit archives $(date -u +'%Y-%m-%d') :robot:"
|
|
|
|
for attempt in 1 2 3; do
|
|
if git push origin HEAD:main; then
|
|
exit 0
|
|
fi
|
|
echo "Push rejected; replaying onto the current main (attempt $attempt)"
|
|
git fetch --unshallow origin main 2>/dev/null || git fetch origin main
|
|
git rebase FETCH_HEAD
|
|
done
|
|
exit 1
|