Andrey Konovalov Profile
Andrey Konovalov

@andreyknvl

5,675
Followers
671
Following
48
Media
1,052
Statuses

Security engineer at . Focusing on the Linux kernel. Maintaining @linkersec . Trainings at .

Joined February 2014
Don't wanna be here? Send us removal request.
Pinned Tweet
@andreyknvl
Andrey Konovalov
2 months
Please hit me up if you want a 15% discount voucher for the Exploiting the Linux Kernel training session at RomHack in September. I have a few, valid only until the end of this week.
Tweet media one
@cybersaiyanIT
Cyber Saiyan / RomHack Conference, Training, Camp
2 months
🎓🎓 #RomHack2024 #Training 🎓🎓 Early Bird –> 10% discount We rely on our community to make #RomHack2024 bigger and better! Register Now: #CyberSecurityExperts #LearnFromTheBest #CyberSecurityTraining
Tweet media one
0
4
9
1
7
19
@andreyknvl
Andrey Konovalov
2 years
WTF, @github is planning to ban me. No idea why. Hosting proof-of-concept code? Having given talks at Russian conferences? Holding a Russian passport (even though I've been a German resident for last 6 years)? No meaningful explanation given. Any good decentralized githubs yet?
Tweet media one
78
163
907
@andreyknvl
Andrey Konovalov
2 years
Wrote an article about #fuzzing the Linux kernel network stack externally with #syzkaller . The article covers: 🧰 Introduction to syzkaller 💉 Using TUN/TAP for packet injection 👽 Integrating TUN/TAP via pseudo-syscalls 🏆 Showcases of found bugs
5
254
701
@andreyknvl
Andrey Konovalov
3 months
Wrote an article about turning a ThinkPad X1 Carbon 6th Gen laptop into a programmable USB device by enabling the xDCI controller 😯 Now I can emulate USB devices from the laptop without external hardware, including via Raw Gadget or even Facedancer 😁
7
189
627
@andreyknvl
Andrey Konovalov
7 years
Linux kernel local root exploit for CVE-2017-1000112
2
364
516
@andreyknvl
Andrey Konovalov
3 years
Memory tagging is coming to kill all of your favorite Linux kernel exploits. I'll be premiering my "Mitigating Linux kernel memory corruptions with Arm Memory Tagging" LSS talk on YouTube in 24 hours. Please join in! I'll be in chat to answer questions.
Tweet media one
7
120
519
@andreyknvl
Andrey Konovalov
2 years
Slides for "Sanitizing the Linux kernel: On KASAN and other Dynamic Bug-finding Tools", the talk I just gave at Linux Security Summit Europe 2022. Covers: 🐧 Generic KASAN implementation 🔥 Other Sanitizers 🗡 Extending KASAN and KMSAN to find more bugs
Tweet media one
8
75
272
@andreyknvl
Andrey Konovalov
5 years
A set of Linux binary exploitation tasks for beginners for various architectures (x86, x86-64, arm, arm64, mips, mips64, ppc, ppc64, sparc64 on the way):
1
127
266
@andreyknvl
Andrey Konovalov
7 years
Proof-of-Concept local root exploit for the double-free in Linux kernel DCCP implementation (CVE-2017-6074):
3
242
250
@andreyknvl
Andrey Konovalov
2 years
This is the first Linux-kernel-host-code-execution-over-USB exploit known to me. Awesome job! @jmartijnb @geistdana
@linkersec
Linux Kernel Security
2 years
Achieving Linux Kernel Code Execution Through a Malicious USB Device; by Martijn Bogaard @jmartijnb and Dana Geist @geistdana Slides:
3
124
315
4
55
236
@andreyknvl
Andrey Konovalov
2 years
If anyone who's around in Paris for @hexacon_fr wants to acquire a USB-Cereal adapter — hit me up. This adapter is a convenient replacement for the Android Debug Cable. Essentially splits the USB port into two: one with UART with kernel logs, the other is a pass-through for ADB.
Tweet media one
6
39
222
@andreyknvl
Andrey Konovalov
3 years
Slides for my "Fuzzing the Linux kernel" talk at PHDays 2021. Roughly the same content as for the LF Mentorship talk, but organized differently.
2
70
218
@andreyknvl
Andrey Konovalov
5 years
syzbot has started reporting bugs in the Linux kernel USB drivers that can be triggered by a malicious USB device:
3
85
194
@andreyknvl
Andrey Konovalov
3 years
I released an update to the collection of Linux kernel exploitation materials. Features work by @theflow0 , @chompie1337 , @a13xp0p0v , @tklengyel , @azz_maher , @pwningsystems , @0xGlider , @Markak_ , and others whom I failed to find on Twitter.
4
51
179
@andreyknvl
Andrey Konovalov
3 years
As of April 1st, I no longer work at Google. I decided to take a gap year and explore what's it like to work on my own. I'll still be doing kernel stuff, though, and keeping an eye out for KASAN/KCOV patches.
15
6
148
@andreyknvl
Andrey Konovalov
6 years
Exploit for CVE-2017-18344: Details:
2
81
141
@andreyknvl
Andrey Konovalov
3 years
The cool part about eBPF-based rootkits is portability. A kernel module–based rootkit needs to be rebuilt when a new kernel is deployed.
4
36
138
@andreyknvl
Andrey Konovalov
4 years
Nice! FTR, Meltdown can still also be used on Linux to bypass KASLR by leaking some IDT entries.
Tweet media one
@bluefrostsec
Blue Frost Security
4 years
Thought Meltdown was dead? See how @NicoEconomou revived it by leaking the KVA Shadow Mappings and breaking KASLR on latest Windows 10
4
99
183
2
37
128
@andreyknvl
Andrey Konovalov
4 years
Exploiting Uses of Uninitialized Stack Variables in Linux Kernels to Leak Kernel Pointers by @haehyun_cho Slides: Video: Paper: CC @Glider
0
47
128
@andreyknvl
Andrey Konovalov
8 months
The "Randomized slab caches for kmalloc()" patch was merged into mainline. With CONFIG_RANDOM_KMALLOC_CACHES=y, each kmalloc cache is split into 16. kmalloc uses a random one for each allocation based on the code location. Choices change every reboot.
Tweet media one
1
36
113
@andreyknvl
Andrey Konovalov
3 years
My LF Mentorship Series talk on Fuzzing the Linux kernel: Video: Slides: Thanks to everyone who attended and those who asked questions!
0
39
113
@andreyknvl
Andrey Konovalov
5 years
An overview of existing approaches to USB fuzzing:
0
40
105
@andreyknvl
Andrey Konovalov
1 year
Looks like this issue is now called EntryBleed 😎 Btw, as known by those who have taken my training 😉, you can use SIDT to find out the address of IDT (on CPUs without UMIP), so you don't even need to brute-force.
@andreyknvl
Andrey Konovalov
4 years
Nice! FTR, Meltdown can still also be used on Linux to bypass KASLR by leaking some IDT entries.
Tweet media one
2
37
128
1
21
103
@andreyknvl
Andrey Konovalov
3 years
Another batch of updates for the Linux kernel exploitation materials collection.
0
29
103
@andreyknvl
Andrey Konovalov
8 years
Wrote a PoC for Linux kernel KASLR bypass via timing prefetch. Inspired by a blogpost by @anders_fogh . PoC is here:
3
67
92
@andreyknvl
Andrey Konovalov
6 months
Instructions for enabling MTE for the kernel on Pixel 8 by @kees_cook . Do not require unlocking the bootloader.
1
33
92
@andreyknvl
Andrey Konovalov
3 years
Another update for the Linux kernel exploitation collection.
2
21
87
@andreyknvl
Andrey Konovalov
1 year
Authored 122 Linux kernel commits in 2022! 🥳 Almost all are KASAN/MTE-related: vmalloc tagging, better stack trace reporting for the tag-based modes, and various improvements for bug reporting and tests.
1
3
86
@andreyknvl
Andrey Konovalov
4 years
USB Raw Gadget (an interface that allows to emulate USB devices through the USB Gadget subsystem) has been merged into mainline:
4
29
85
@andreyknvl
Andrey Konovalov
2 years
Slides and video from my Fuzzing USB with Raw Gadget talk at @BSidesMunich . 🤖 Raw Gadget — a new interface for emulating USB devices 🪶 Fuzzing via virtual controllers 🔌 Reproducing bugs via Raspberry Pi Zero Slides: Video:
1
30
85
@andreyknvl
Andrey Konovalov
2 years
Pushed an update for the Linux kernel exploitation collection.
0
20
83
@andreyknvl
Andrey Konovalov
7 years
Started working on adding external USB fuzzing support to syzkaller =)
Tweet media one
2
32
78
@andreyknvl
Andrey Konovalov
8 years
CVE-2016-2384: arbitrary code execution due to a double-free in the usb-midi linux kernel driver
1
81
77
@andreyknvl
Andrey Konovalov
4 years
Yet another memory corruption in Linux kernel packet sockets, CVE-2020-14386, by @0xorco .
0
34
76
@andreyknvl
Andrey Konovalov
4 years
Additions to the Linux kernel exploitation materials collection from the last few months.
0
22
72
@andreyknvl
Andrey Konovalov
4 months
A few of my Exploiting the Linux Kernel training sessions for this year are now public 🥳 Unlike in the last year, these sessions are solely focused on exploitation. So no KASAN or syzkaller but more hardcore exploits 😎 See the list below 👇
Tweet media one
Tweet media two
Tweet media three
2
13
69
@andreyknvl
Andrey Konovalov
9 months
Realized it was KASAN's 10th birthday a few days ago 🥳 On August 5th 2013, a fix for the very first Linux kernel bug both me and KASAN found was committed to the mainline. I suppose it's reasonable to consider that date the birthday 😄
Tweet media one
3
11
71
@andreyknvl
Andrey Konovalov
4 years
Gonna join @a13xp0p0v 's party :) All of my Linux kernel security related talks, articles, exploits, etc. are listed here:
0
19
70
@andreyknvl
Andrey Konovalov
2 years
A bit delayed due to holidays, but here's another update for the Linux kernel exploitation collection.
0
20
66
@andreyknvl
Andrey Konovalov
4 years
Posted a patchset that adds Hardware Tag-Based KASAN mode, that is based on arm64 Memory Tagging Extension:
2
22
65
@andreyknvl
Andrey Konovalov
2 years
Each of the Linux kernel Sanitizers now has an out-of-tree home page. Mostly, they contain links to kernel documentation, but putting them together gives a nice overview of what Sanitizers there are and what they do.
1
24
65
@andreyknvl
Andrey Konovalov
1 year
On May 22–25th, I'll be delivering a 4-day "Attacking the Linux Kernel" training at @offensive_con in Berlin. Covers KASAN, syzkaller, and writing exploits. See the training page for details 😋
@offensive_con
offensivecon
1 year
Attacking the Linux Kernel by @andreyknvl
0
3
7
2
9
64
@andreyknvl
Andrey Konovalov
2 months
Updates for the Linux kernel exploitation collection 😋
0
14
62
@andreyknvl
Andrey Konovalov
3 years
A short blog post about implementing syntax highlighting of syzkaller descriptions for GitHub Pages.
2
8
59
@andreyknvl
Andrey Konovalov
2 years
On December 5–6th, I'll be delivering a 2-day "Attacking the Linux Kernel" training at Black Hat Europe in London. Super excited, first time I'm delivering a training at a major international conference 🥳 @BlackHatEvents #BHEU
Tweet media one
1
9
58
@andreyknvl
Andrey Konovalov
4 years
Additions to the Linux kernel exploitation materials collection from the last couple of months:
0
19
58
@andreyknvl
Andrey Konovalov
3 years
And the video is live! You can find the slides here:
Tweet media one
1
21
57
@andreyknvl
Andrey Konovalov
4 years
Linux kernel 5.5 includes kcov extension that allows to collect code coverage from background kernel threads:
0
20
57
@andreyknvl
Andrey Konovalov
3 years
Recent additions to the Linux kernel exploitation materials collection.
0
15
55
@andreyknvl
Andrey Konovalov
4 months
0-day KASLR bypass for Debian/Ubuntu kernels by @p1k4l4 😋
@_bcoles
bcoles
4 months
Nice #KASLR break by @p1k4l4 for x86_64 kernels with Xen support (Debian and Ubuntu by default). Xen symbols are included in the kernel ELF .notes section and exposed world readable via SysFS (/sys/kernel/notes) since 2007 (pre-KASLR). Added to KASLD:
1
7
29
2
5
54
@andreyknvl
Andrey Konovalov
2 years
On May 16th, I'll be giving a talk about fuzzing Linux kernel USB drivers via Raw Gadget and syzkaller at @BSidesMunich . If you're in Munich, come join in person. The last batch of conference tickets should go live on Monday, April 25th, at 20:00 CET.
Tweet media one
1
9
54
@andreyknvl
Andrey Konovalov
1 year
Attacking the Linux Kernel at Zer0Con in Seoul on April 9–12th. The first 4-day training session I'll be delivering this year 🥳 Covers: 🐞 Analyzing bugs with KASAN 🔍 Fuzzing with syzkaller 🗡 Writing privilege escalation exploits More details:
@POC_Crew
POC_Crew 👨‍👩‍👦‍👦
1 year
[Zer0Con2023 Training] - "On-Spot, 4days course" Andrey Konovalov( @andreyknvl ), "Attacking the Linux Kernel - Advanced" Register: #Zer0con2023
Tweet media one
0
3
19
0
7
52
@andreyknvl
Andrey Konovalov
4 years
Posted the next bunch of Linux kernel USB CVEs on oss-security:
0
14
51
@andreyknvl
Andrey Konovalov
3 years
A new batch of updates for the Linux kernel security materials collection.
1
10
47
@andreyknvl
Andrey Konovalov
11 months
Great example of reusing KASAN shadow memory to build a new type of a bug detector! Full paper: I think we can add similar simpler checks to KASAN itself; filed a bug for this:
@vu5ec
VUSec
11 months
Our uncontained paper @USENIXSecurity is online! Find out how the Linux kernel is the "container of" several type confusion bugs, detected by our sanitizer & static analyzer. Joint work by @JakobKoschel @borrello_pietro @dcdelia @herbertbos @c_giuffrida :
0
49
139
1
6
48
@andreyknvl
Andrey Konovalov
2 years
Updates to the Linux kernel exploitation collection from the last two months.
0
8
46
@andreyknvl
Andrey Konovalov
1 year
Updates for the Linux kernel exploitation collection.
0
5
45
@andreyknvl
Andrey Konovalov
3 years
Apparently, I authored 84 Linux kernel commits last year (KASAN, kcov, USB) — a personal record for me :)
0
0
43
@andreyknvl
Andrey Konovalov
5 years
Using KASAN and syzkaller to fuzz the XNU kernel
@panicaII
panicall
5 years
Please get the slides from BHEU here: Or you can get ppt + poc here:
1
26
78
1
15
43
@andreyknvl
Andrey Konovalov
2 years
And merged! Over 60 patches, combined with a few clean-ups. Memory Tagging–based KASAN can now prevent malicious accesses to non-executable vmalloc allocations.
@andreyknvl
Andrey Konovalov
2 years
Posted v1 of the patch series that adds vmalloc tagging support to Memory Tagging–based KASAN. This will prevent certain types of vmalloc-out-of-bounds bugs on MTE-enabled devices.
0
8
35
2
4
43
@andreyknvl
Andrey Konovalov
8 months
Updates for the Linux kernel exploitation collection.
0
6
42
@andreyknvl
Andrey Konovalov
7 months
Looks like Apple is getting ready for MTE 😃 No MTE instructions in the XNU code just yet, but there is an obscure reference to more potential implementations of their memory tagging interface besides TBI-based KASAN.
@matteyeux
matteyeux
8 months
What could be a tagged address 🫣
Tweet media one
1
1
25
1
6
41
@andreyknvl
Andrey Konovalov
4 years
Getting closer to having production-ready Memory Tagging in the kernel, posted another patchset that adds boot parameters to control some KASAN features:
0
9
42
@andreyknvl
Andrey Konovalov
4 years
Did an "Introduction to USB hacking" stream on Sunday (USB 101, BadUSB, Facedancer, Linux Gadget, fuzzing, sniffing). The stream was in Russian, but the slides and other materials are in English:
1
14
41
@andreyknvl
Andrey Konovalov
11 months
My next 4-day "Attacking the Linux Kernel" training will be at @HITBSecConf Phuket on August 21–24th 😎 Covers KASAN, syzkaller, and exploitation. See the training page for details 🧐 Promo code for a discount: 2Q1K-ALKT-QHGL
Tweet media one
0
10
42
@andreyknvl
Andrey Konovalov
3 years
Christmas updates for Linux kernel exploitation materials. Happy holidays!
0
11
40
@andreyknvl
Andrey Konovalov
1 year
Updates for the Linux kernel exploitation collection.
0
6
39
@andreyknvl
Andrey Konovalov
1 year
Updates for the Linux kernel exploitation collection.
0
9
38
@andreyknvl
Andrey Konovalov
3 months
syzkaller snippets highlighting has been finally picked up by GitHub Pages 🥳 syzkaller added a few new syzlang features since I implemented this, so snippets with those will not be highlighted properly. But the basic support is there. Demo:
@andreyknvl
Andrey Konovalov
3 years
TL;DR: I implemented syzlang syntax highlighting based on Rouge, the default highlighter used by GitHub Pages. Here's a demo:
Tweet media one
1
3
10
1
11
39
@andreyknvl
Andrey Konovalov
6 years
Linux kernel: CVE-2017-18344: arbitrary-read vulnerability in the timer subsystem
0
28
37
@andreyknvl
Andrey Konovalov
5 years
15 more CVEs (2 still not fixed :) in Linux kernel USB drivers found with syzkaller:
0
11
35
@andreyknvl
Andrey Konovalov
3 years
I was at Google for 5 years, and I had a chance to work on many aspects of kernel security: bug detectors, fuzzers, exploits, mitigations. Many thanks to my team, it was an outstanding experience! @kayseesee @dvyukov @0xGlider @maelver
1
2
36
@andreyknvl
Andrey Konovalov
4 years
When you add new descriptions for some subsystem into syzkaller (in this case for fuzzing ath9k driver over USB):
Tweet media one
1
7
35
@andreyknvl
Andrey Konovalov
2 years
Posted v1 of the patch series that adds vmalloc tagging support to Memory Tagging–based KASAN. This will prevent certain types of vmalloc-out-of-bounds bugs on MTE-enabled devices.
0
8
35
@andreyknvl
Andrey Konovalov
4 months
Updates for the Linux kernel exploitation collection 😋
0
3
34
@andreyknvl
Andrey Konovalov
3 months
syzkaller descriptions now have support for conditional fields 👍 This is when a structure field (or a union option) is only present when the value of another field satisfies a specified condition. Documentation:
Tweet media one
Tweet media two
0
5
35
@andreyknvl
Andrey Konovalov
1 year
Heads-up for KASAN users: starting with 6.3, bad accesses via memcpy, memmove, or memset are not detected on x86 [1] unless you build the kernel with Clang 15+ or not-yet-released GCC 13.1+ [2]. [1] [2]
0
10
34
@andreyknvl
Andrey Konovalov
3 months
The overall process included fiddling with Linux kernel drivers, xHCI, DWC3, ACPI, BIOS/UEFI, Boot Guard, TPM, NVRAM, PCH, PMC, PSF, IOSF, and P2SB, and making a custom USB cable 😱
Tweet media one
Tweet media two
Tweet media three
Tweet media four
2
4
33
@andreyknvl
Andrey Konovalov
2 years
The exploit is based on the bug I found a few years ago. However, my exploit required cooperating userspace, so it didn't really count. Happy to see a purely USB one!
1
2
31
@andreyknvl
Andrey Konovalov
2 years
Commit: fuse: fix pipe buffer lifetime for direct_io Description: bad splice'ing into a pipe from fuse Reported-by: @tehjh Fixes: commit from 2010 Hmm... Dirty Fused Pipe? :)
1
8
29
@andreyknvl
Andrey Konovalov
2 years
We're working on a less expensive edition with , but it's not fully ready at the moment. Here's a teaser nevertheless:
Tweet media one
0
0
31
@andreyknvl
Andrey Konovalov
6 months
Updates for the Linux kernel exploitation collection.
0
4
30
@andreyknvl
Andrey Konovalov
3 years
Tomorrow (March 2nd) at 16:30 CET (7:30 PST) I'll be mentoring a @linuxfoundation webinar session: Fuzzing Linux Kernel Agenda: kernel fuzzing overview, approaches, and tips.
0
8
31
@andreyknvl
Andrey Konovalov
2 years
As an update to this: I'll continue working on KASAN/MTE (which you might have noticed I already do if you monitor KASAN patches :) & supporting Google as a part-time external consultant for the foreseeable future.
@andreyknvl
Andrey Konovalov
3 years
As of April 1st, I no longer work at Google. I decided to take a gap year and explore what's it like to work on my own. I'll still be doing kernel stuff, though, and keeping an eye out for KASAN/KCOV patches.
15
6
148
0
1
30
@andreyknvl
Andrey Konovalov
5 years
Reported-by: syzbot =)
@maddiestone
Maddie Stone
5 years
Kernel privilege escalation bug in Android affecting fully patched Pixel 2 & others. Reported under 7 day deadline due to evidence of in-the-wild exploit. @tehjh and I quickly wrote a POC to get arbitrary kernel r/w using this bug, released in tracker.
20
424
943
0
3
30
@andreyknvl
Andrey Konovalov
3 years
Includes an exploit that obtains a kernel read/write/execute primitive:
@ProjectZeroBugs
Project Zero Bugs
3 years
Samsung NPU (Neural Processing Unit) memory corruption in shared memory parsing
0
32
87
0
14
29
@andreyknvl
Andrey Konovalov
3 years
The schedule for Linux Security Summit has been published. I'll be giving a talk on the new ARM Memory Tagging–based KASAN mode. Tune in on Oct 1st.
📢 The LSS 2021 schedule is published: 🗓️See you in person or online: Sept 29 - Oct 01.
0
12
21
0
11
29