Commit Graph

131 Commits

Author SHA1 Message Date
Tamas Koczka 849fd2ca92 kernelCTF: GHA: vuln-verify: fix 2026-03-17 19:59:04 +00:00
Tamas Koczka 632bde3461 kernelCTF: GHA: vuln-verify: support bold in summary 2026-03-17 19:54:03 +00:00
Tamas Koczka ea96600258 kernelCTF: GHA: vuln-verify: artifact fix 2026-03-17 19:51:06 +00:00
Tamas Koczka 820ba83368 kernelCTF: GHA: vuln-verify upload logs as artifacts, write summary 2026-03-17 19:46:01 +00:00
Tamas Koczka 3fcf07fd75 kernelCTF: GHA: vuln-verify: faster checkout, fix gzip upload, less noisy cache logs 2026-03-17 19:09:54 +00:00
Tamas Koczka d72dbc86f6 kernelCTF: GHA: verbose build output for vuln-verify (fix 1) 2026-03-17 17:30:44 +00:00
Tamas Koczka a1d2773964 kernelCTF: GHA: verbose build output for vuln-verify 2026-03-17 17:24:21 +00:00
Tamas Koczka 37e1915258 kernelCTF: GHA: fix vuln-verify 6 2026-03-17 16:57:17 +00:00
Tamas Koczka 5745a3c191 kernelCTF: add vuln-verify workflow 2026-03-17 15:56:18 +00:00
Artem Metla a7d0bf1a33 kernelCTF: server: update to latest version 2026-03-17 14:14:32 +01:00
Tamás Koczka 50daccf87c kernelCTF: rules: fix typo 2026-03-12 16:24:51 +01:00
Tamás Koczka 854319230b kernelCTF: rules: make it clear that the patch needs to correctly fix the vulnerability 2026-03-12 16:24:11 +01:00
Tamas Koczka ff47cd117d kernelCTF: server: update to latest version 2026-03-10 15:43:56 +00:00
Tamas Koczka 06374d5f0f kernelctf: move Android dep install script from kernelctf-submission-verification.yaml 2026-03-03 11:14:51 +00:00
artmetla 2914d2c208 Update rules.md 2026-02-27 18:06:38 +01:00
Artem Metla e4e17f4c28 kernelCTF: server: update to latest version 2026-02-26 16:56:15 +01:00
Tamas Koczka 4f788eb87f kernelCTF: server: update to latest version 2026-02-25 10:48:22 +00:00
Kees Cook 7e1a60c5cd Update rules for credit in 'Reported-By' tag (#334)
* Update rules for credit in 'Reported-By' tag

Clarified the requirement for credit in the 'Reported-By' tag for bug fixes, as requested by upstream Linux kernel developers who do not want to see redundant tags.

* kernelCTF: rules: fix typo

---------

Co-authored-by: Tamás Koczka <koczkatamas@gmail.com>
2026-02-20 14:35:07 +01:00
artmetla 9e37f29c68 Update rules.md (#329) 2026-02-06 15:55:32 +01:00
Tamas Koczka 7f68f7f1b8 kernelCTF: add explicit note about the 10% stability requirement 2026-01-07 12:45:19 +00:00
Tamas Koczka d6396d2cda kernelCTF: fix mitigation-6.1-v2 handling issue 2026-01-07 12:17:18 +00:00
Matteo Rizzo d57309a820 kernelCTF: server: update to latest version 2025-12-18 15:41:47 +00:00
artmetla 7297a9e637 Submission Verification logic for Android submissions (#289)
1) Disabled AppArmor block for unpriviledged user namespaces. This hapend in ubuntu-latest: https://discourse.ubuntu.com/t/understanding-apparmor-user-namespace-restriction/58007. Added this step to "get_android_dependencies.sh".
2) Using "get_android_dependencies.sh" script to handle dependencies for all execution options: server.py, exploit build, and exploit_reproduction.
3) Optimised exploit reproduction run time, by downloading releases and installing dependencies in parallel. 
4) Conducted clean up to free up a bit of extra space for Cuttlefish runs (cleaning compilation leftovers and APT caches).
5) Using "cuttlefish.sh" to run VM in all execution options: server.py and GHA reproducer. Modified "cuttlefish.sh" to add "--test-mode" which allows easy testing by setting "falg" file permissions equivalent to exploit executable. It's disabled in prod. Improved Android16 detection logic (to enable necessary execution flags for "launch_cvd"), as apparently "launch_cvd --help" could fail sometimes. Improved cleaning logic (important as launch_cvd is super nasty and lefts a lot of tmps and random leftovers which could negatively impact next run of the VM)
6) Apparently in ubuntu-latest "sg -c" requires password. So implemented this logic canonical/data-platform-workflows@349e0c8. This is important as Cuttlefish couldn't run without user being added in groups. By default they suggest reboot to apply those changes, but it's impossible in GHA.
7) "Check PR content" logic is already updated in prod
8) Ensured that in exploit build environment NDK is added to the PATH, so simple Makefiles like:
```
exploit: exploit.c
clang --target=x86_64-linux-android35 -static $^ -o exploit
```
The whole thing was tested with dummy exploit in my fork.
9) Implemented proper timeout check (30 mins) in "cuttlefish.sh"
10) Introduced sparse-checkout for the GHA.
2025-12-04 15:21:19 +01:00
artmetla 8947e3d1e4 Update check-submission.py to handle Android folders 2025-11-27 17:15:29 +01:00
artmetla 63b9e94c82 Update metadata.schema.v3.json 2025-11-27 16:23:43 +01:00
artmetla 4d212a9a5b Update regular expression in metadata.schema.v3.json to add Android releases support 2025-11-27 16:23:07 +01:00
Artem Metla ea8b117f6e kernelCTF: server: upload Android related scripts and APK source code 2025-11-27 13:50:34 +01:00
artmetla b706f60a9b Improve kernelCTF auto releaser to handle Android releases (#284)
- The auto-releaser would wok in a following logic:
   1. Access https://androidbuildinternal.googleapis.com/android/internal/build/v3/builds?branches=aosp-android-latest-release&buildAttemptStatus=complete&buildType=submitted&maxResults=1&successful=true&target=aosp_cf_x86_64_only_phone-userdebug to get an information about latest Android build available in JSON format. 
   2. We take the build number and using fetch_artifact (https://android.googlesource.com/tools/fetch_artifact/) attempt to download "kernel_version.txt" artefact from Android build to get all the necessary build details. 
   3. Using build details check if kernelCTF GCS bucket contains already the release. If not add it to releases that should be processed by kernelctf-release-build action.
- The logic of kernelctf-release-build action updated to handle new naming style of Android releases.
2025-11-27 13:31:33 +01:00
Tamás Koczka a1a0b27123 kernelCTF: Update FAQ how to build kernelCTF releases
Added new FAQ entries regarding bounty payments and kernelCTF target rebuilding.
2025-11-25 17:12:39 +01:00
Tamás Koczka 7c3d42660a kernelCTF: Clarify condition for patch landing in rules (#283)
* kernelCTF: Clarify condition for patch landing in rules

* kernelCTF: Clarify wording in rules for 0-day submissions
2025-11-24 15:04:00 +01:00
artmetla 9fa781e0d9 Update releases.yaml 2025-11-10 15:00:07 +01:00
Artem Metla 8cf454374e kernelCTF: server: update to latest version 2025-11-06 18:05:44 +01:00
Artem Metla 49c9e8266b kernelCTF: server: update to latest version 2025-11-03 15:08:44 +01:00
artmetla 506ea1564b Update build_release.sh to add Mitigation v4-6.12 target (#271)
* Update build_release.sh

* Update build_release.sh
2025-10-29 16:00:52 +01:00
Matteo Rizzo 6f1a39f5fe kernelCTF: server: update to latest version 2025-10-24 09:18:20 +00:00
Tamas Koczka 6d477d73cf kernelCTF: rules: add note about kernelXDK being preinstalled 2025-10-22 19:32:43 +00:00
Tamas Koczka e4eade7d24 kernelCTF: rules: add kernelXDK requirement 2025-10-22 17:53:26 +00:00
Tamas Koczka 24880bbeba kernelCTF: enable bpf_jit_harden in repro 2025-09-27 10:34:03 +00:00
Tamas Koczka 49be6fb8cb kernelCTF: server: update to latest version 2025-09-12 10:25:28 +00:00
Tamas Koczka 42ae281bdd kernelCTF: server: update to latest version 2025-09-11 14:04:19 +00:00
Artem Metla 34642f399e kernelCTF: server: update to latest version 2025-08-15 15:35:01 +02:00
artmetla ccd68441e2 Update rules.md
Update rules.md to point to the right config
2025-08-12 16:37:37 +02:00
Artem Metla bc8a627ae2 kernelCTF: server: update to latest version 2025-07-18 14:16:26 +02:00
artmetla 8c53ec0b68 Update check-submission.py 2025-07-17 17:06:45 +02:00
artmetla 379d690d10 Accept novelty-only deprecated submissions (#225)
Enable acceptance of v1 and v2 kernelCTF flags for novelty only submissions
2025-07-17 15:22:04 +02:00
artmetla 66053d865b Update rules.md to clearly document rules changes announcements approach (#221) 2025-07-09 17:12:10 +02:00
Tamás Koczka 8abaf104de kernelCTF: update rules: clarify novelty bonus payout after splitting reward payout process 2025-07-09 13:52:49 +02:00
artmetla c7f07d92c0 Create lts-6.12.config 2025-07-08 11:58:56 +02:00
artmetla 1a9f4de58f Update build_release.sh 2025-07-08 11:52:56 +02:00
artmetla b1170c66c1 Update get_latest_kernel_versions.py 2025-07-08 11:29:25 +02:00