Linux Kernel Security – Telegram
Linux Kernel Security
4.02K subscribers
95 photos
318 links
Links related to Linux kernel security and exploitation | Chat @linkersec_chat | @xairy @a13xp0p0v
Download Telegram
CVE-2022-27666: Exploit esp6 module in Linux kernel

Xiaochen Zou aka ETenal published an article on exploiting a page_alloc-out-of-bounds in the esp6 crypto module.

The researcher:

1️⃣ performed page-level heap fengshui to gain page_alloc-to-slab overflow,

2️⃣ constructed arbitrary read/write using the msg_msg kernel object,

3️⃣ finally achieved root privileges via modprobe_path overwrite.

The article comes with excellent animated diagrams.
🔥9👍5
How The Tables Have Turned: An analysis of two new Linux vulnerabilities in nf_tables

A detailed article by David Bouman about exploiting an integer-overflow leading to a limited stack-out-of-bounds read/write in the nf_tables module.

The exploit constructs a filter whose logic depends on the value of a kernel address that happens to be on the stack. This way, it leaks the KASLR offset by observing the side-effects.

The exploit then builds a ROP chain that leaves the softirq context where the bug is triggered, switches to the root network namespace, and gains root privileges.
🔥5👍1
Writing a Linux Kernel Remote [Exploit] in 2022

An article by Samuel Page @sam4k1 about writing an exploit for a remotely-triggerable stack-buffer-overflow in TIPC (CVE-2022-0435).

Assuming the absence of KASLR and the Stack Protector, the exploit overwrites the stack with a ROP chain that hooks a syscall to hijack a root process.
👍9🔥1
Looking for Remote Code Execution bugs in the Linux kernel

I wrote an article about fuzzing the Linux kernel network stack externally with syzkaller.

The article covers:

🧰 Introduction to syzkaller
💉 Using TUN/TAP for injecting packets into the kernel
🚚 Patching TUN/TAP for collecting coverage via KCOV
👽 Adding pseudo-syscalls for network fuzzing
🗄 Describing packet structure in syzlang
🏆 Showcases of found bugs

In the article, I put a focus on the presentation: highlighted syzlang code, made interactive snippets, added side notes that are actually on the side. I also implemented a dynamic table of contents (only visible on large screens).

The described work was done a few years ago, but I consider it still relevant. The recent trend of looking for remote Linux kernel exploits is quite exciting! I hope to see even more research in this area.
🔥16👍3
Learning Linux kernel exploitation — Part 2 — CVE-2022-0847

A detailed article by 0xricksanchez about the Dirty Pipe vulnerability and its exploitation. The article also recaps Dirty Cow and compares it to Dirty Pipe.
🔥2👍1
Exploiting Dirty Pipe on Android

Two publications about exploiting Dirty Pipe on Android. Both use similar techniques without additional vulnerabilities.

1. Notes and an exploit by polygraphene.

2. Slides by Giovanni Rocca.
👍5😱3👎2
Tetragone: A Lesson in Security Fundamentals

An article by Pawel Wieczorkiewicz and Brad Spengler about bypassing post-exploitation detection provided by Tetragon.

The article also expands on the impossibility of preventing malicious post-exploitation activity if the prevention component works at the same privilege level as the attacked code.

Similar concerns affect LKRG. Check out the LKRG bypass article by Alexander Popov for the details.
👍5
A Kernel Hacker Meets Fuchsia OS

Alexander Popov (me) published an article about hacking the Zircon microkernel of Fuchsia OS.

Experience in Linux kernel security helped to assess Fuchsia OS from the attacker's point of view.

Summary:
🟪 Fuchsia security architecture
🟪 Exploit development experiments for the Zircon microkernel
🟪 PoC attack planting a rootkit into the microkernel
🔥16👍4
kconfig-hardened-check: new feature

kconfig-hardened-check is a tool for checking the security hardening options of the Linux kernel.

Initially, it supported checking compile-time Kconfig options that are relevant for security.

And now this tool can also check the kernel cmdline options, aka boot parameters.
👍9🤔2
Fuzzing USB with Raw Gadget

Slides and video from a talk by Andrey Konovalov on fuzzing USB drivers.

The talk covers:

🤖 Raw Gadget — a new interface for emulating USB devices
🪶 Fuzzing in a VM via virtual USB controllers
🔌 Reproducing found bugs via Raspberry Pi Zero
👍10🔥8
Linux kernel heap feng shui in 2022

An article by Michael S and Vitaly Nikolenko describing the kernel changes that affected exploitation techniques for slab-related vulnerabilities over the last few years.
👍8🔥2🤔1
Exploration of the Dirty Pipe Vulnerability (CVE-2022-0847)

An article by Valentin Obst and Martin Claus covering the Dirty Pipe vulnerability. The article also suggests a few approaches to investigating Linux kernel bugs.
👍5
Yet another bug into Netfilter

An article by Arthur Mongodin about exploiting an out-of-bounds access in the netfilter subsystem to achieve an info-leak. The article also suggests a potential approach to gain privilege escalation.
👍9
io_uring - new code, new bugs, and a new exploit technique

Lam Jun Rong published an article that covers analyzing and exploiting CVE-2021-41073, an invalid-free vulnerability in the io_uring subsystem.

This vulnerability has previously been exploited by Valentina Palmiotti, but that exploit relied on eBPF. The new exploit targets Ubuntu 21.10, where eBPF is not available to unprivileged users.
👍3
The Android kernel mitigations obstacle race

A great article by Man Yue Mo about exploiting a race condition that leads to a use-after-free vulnerability in the Qualcomm GPU driver for Samsung Galaxy Z Flip3.

The researcher widened the race window to hit the bug reliably, and then bypassed kCFI, automatic variable initialization, and Samsung RKP in the exploit.
👏7🔥1
TripleCross

A Linux eBPF rootkit providing a backdoor with command and control (C2) capabilities, library injection, execution hijacking, persistence, and hiding.
🔥6👍3🤔1
[CVE-2022-34918] A crack in the Linux firewall

An article by Arthur Mongodin about exploiting a slab-buffer-overflow in the netfilter subsystem.

The exploit uses the unlinking technique from Lam Jun Rong's io_uring exploit.
👍4
Corrupting memory without memory corruption

An article by Man Yue Mo about exploiting CVE-2022-20186, an integer overflow in the Arm Mali GPU driver.

The bug allows mapping arbitrary physical pages to the GPU memory with both read and write access. The exploit gets arbitrary kernel code execution on Pixel 6, disables SELinux, and gains root.
👍9
PAWNYABLE: Linux Kernel Exploitation

A series of articles in Japanese by ptr-yudai covering various Linux kernel exploitation techniques.
🔥5👍1🤯1
The quantum state of Linux kernel garbage collection CVE-2021-0920 (Part I)

Xingyu Jin published an article describing the root cause of a race condition in the garbage collection for SCM_RIGHTS.

This bug is used for Android exploitation in the wild.
👍3