HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
pathtofile
bad-bpf
C2022–2022
pathtofile / bad-bpf

bad-bpf

A collection of eBPF programs demonstrating bad behavior, presented at DEF CON 29

3Distinct people
5Mentions
0Explicit recommenders
712GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A collection of eBPF programs demonstrating bad behavior, presented at DEF CON 29

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 3:56:07 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week5 dated mentions

Observed mentions: 2022-04-04 16:01:03 UTC to 2022-11-06 11:02:21 UTC. Weeks start Monday, UTC.

0122022-04-04 00:00:00 UTC to 2022-04-11 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsApr 42022-04-11 00:00:00 UTC to 2022-04-18 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-04-18 00:00:00 UTC to 2022-04-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-04-25 00:00:00 UTC to 2022-05-02 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-02 00:00:00 UTC to 2022-05-09 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-09 00:00:00 UTC to 2022-05-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-16 00:00:00 UTC to 2022-05-23 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-23 00:00:00 UTC to 2022-05-30 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-05-30 00:00:00 UTC to 2022-06-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-06 00:00:00 UTC to 2022-06-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-13 00:00:00 UTC to 2022-06-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-20 00:00:00 UTC to 2022-06-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-06-27 00:00:00 UTC to 2022-07-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-07-04 00:00:00 UTC to 2022-07-11 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2022-07-11 00:00:00 UTC to 2022-07-18 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-07-18 00:00:00 UTC to 2022-07-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsJul 182022-07-25 00:00:00 UTC to 2022-08-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-08-01 00:00:00 UTC to 2022-08-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-08-08 00:00:00 UTC to 2022-08-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-08-15 00:00:00 UTC to 2022-08-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-08-22 00:00:00 UTC to 2022-08-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-08-29 00:00:00 UTC to 2022-09-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-09-05 00:00:00 UTC to 2022-09-12 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2022-09-12 00:00:00 UTC to 2022-09-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-09-19 00:00:00 UTC to 2022-09-26 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-09-26 00:00:00 UTC to 2022-10-03 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-10-03 00:00:00 UTC to 2022-10-10 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-10-10 00:00:00 UTC to 2022-10-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-10-17 00:00:00 UTC to 2022-10-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-10-24 00:00:00 UTC to 2022-10-31 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-10-31 00:00:00 UTC to 2022-11-07 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsOct 31

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Apr 42022-04-04 00:00:00 UTC2022-04-11 00:00:00 UTC101
Apr 112022-04-11 00:00:00 UTC2022-04-18 00:00:00 UTC000
Apr 182022-04-18 00:00:00 UTC2022-04-25 00:00:00 UTC000
Apr 252022-04-25 00:00:00 UTC2022-05-02 00:00:00 UTC000
May 22022-05-02 00:00:00 UTC2022-05-09 00:00:00 UTC000
May 92022-05-09 00:00:00 UTC2022-05-16 00:00:00 UTC000
May 162022-05-16 00:00:00 UTC2022-05-23 00:00:00 UTC000
May 232022-05-23 00:00:00 UTC2022-05-30 00:00:00 UTC000
May 302022-05-30 00:00:00 UTC2022-06-06 00:00:00 UTC000
Jun 62022-06-06 00:00:00 UTC2022-06-13 00:00:00 UTC000
Jun 132022-06-13 00:00:00 UTC2022-06-20 00:00:00 UTC000
Jun 202022-06-20 00:00:00 UTC2022-06-27 00:00:00 UTC000
Jun 272022-06-27 00:00:00 UTC2022-07-04 00:00:00 UTC000
Jul 42022-07-04 00:00:00 UTC2022-07-11 00:00:00 UTC101
Jul 112022-07-11 00:00:00 UTC2022-07-18 00:00:00 UTC000
Jul 182022-07-18 00:00:00 UTC2022-07-25 00:00:00 UTC000
Jul 252022-07-25 00:00:00 UTC2022-08-01 00:00:00 UTC000
Aug 12022-08-01 00:00:00 UTC2022-08-08 00:00:00 UTC000
Aug 82022-08-08 00:00:00 UTC2022-08-15 00:00:00 UTC000
Aug 152022-08-15 00:00:00 UTC2022-08-22 00:00:00 UTC000
Aug 222022-08-22 00:00:00 UTC2022-08-29 00:00:00 UTC000
Aug 292022-08-29 00:00:00 UTC2022-09-05 00:00:00 UTC000
Sep 52022-09-05 00:00:00 UTC2022-09-12 00:00:00 UTC211
Sep 122022-09-12 00:00:00 UTC2022-09-19 00:00:00 UTC000
Sep 192022-09-19 00:00:00 UTC2022-09-26 00:00:00 UTC000
Sep 262022-09-26 00:00:00 UTC2022-10-03 00:00:00 UTC000
Oct 32022-10-03 00:00:00 UTC2022-10-10 00:00:00 UTC000
Oct 102022-10-10 00:00:00 UTC2022-10-17 00:00:00 UTC000
Oct 172022-10-17 00:00:00 UTC2022-10-24 00:00:00 UTC000
Oct 242022-10-24 00:00:00 UTC2022-10-31 00:00:00 UTC000
Oct 312022-10-31 00:00:00 UTC2022-11-07 00:00:00 UTC101

What Hacker News says

5 sources
This is a good write-up and I like the diagrams. What appears to still be notably missing from eBPF is an "off switch". AFAIK there are still no kernel boot time commands [0] to disable eBPF entirely. I have to recompile the kernel to disable it and it is known that most people will not do this. eBPF has the potential for file-less malware to run hidden from detection and I foresee the ability to tickle ring -3 (and -4?) CPU within CPU functions while bypassing local firewalls. Here is some example code of what people already know how to do today and this list will grow as people discover more capabilities. [1][2][3][4][5][6] These do require some privileges to insert but will remain running and hidden until reboot. Privilege escalation today is easier than ever with the growing misuse and poor configurations of sudo as well as the g
Read the rest
rowing number of suid/setcap binaries. A common argument I get is "Well if someone ... then its game over". They are not entirely wrong, but I do not want yet another file-less anti-forensics vector that risks Linux being forbidden in secure zones nor do I want to play whack-a-mole using commercial tools like sysdig or complex tools people avoid like SELinux to try to fight this stuff. [0] - https://www.kernel.org/doc/html/latest/admin-guide/kernel-pa... [1] - https://github.com/citronneur/pamspy [2] - https://github.com/h3xduck/TripleCross [3] - https://github.com/krisnova/boopkit [4] - https://github.com/pathtofile/bad-bpf [5] - https://doublepulsar.com/bpfdoor-an-active-chinese-global-su... [6] - https://blog.doyensec.com/2022/10/11/ebpf-bypass-security-mo...
In eBPF – Adding functionality to OS at runtime
eBPF feature request for the eBFP foundation. The ability to completely disable eBPF without having to recompile the kernel, ideally in a kernel boot option. e.g. ebpf=0 Why? eBPF can bypass most facets of security controls and exposes potential and future file-less/disk-less vulnerabilities from trusted actors. [1][2][3] [1] - https://github.com/h3xduck/TripleCross [2] - https://github.com/pathtofile/bad-bpf [3] - https://github.com/Gui774ume/ebpfkit
In What Is The eBPF Foundation?

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.