All Projects → zerosum0x0 → Sassykitdi

zerosum0x0 / Sassykitdi

Licence: apache-2.0
Kernel Mode TCP Sockets + LSASS Dump (Rust Shellcode)

Programming Languages

rust
11053 projects
shellcode
44 projects

Projects that are alternatives of or similar to Sassykitdi

Ktf
Kernel Test Framework
Stars: ✭ 93 (-19.13%)
Mutual labels:  kernel
Monkos
an experimental 64-bit operating system
Stars: ✭ 100 (-13.04%)
Mutual labels:  kernel
Fisy Fuzz
This is the full file system fuzzing framework that I presented at the Hack in the Box 2020 Lockdown Edition conference in April.
Stars: ✭ 110 (-4.35%)
Mutual labels:  kernel
Hacksysextremevulnerabledriver
HackSys Extreme Vulnerable Windows Driver
Stars: ✭ 1,330 (+1056.52%)
Mutual labels:  kernel
Neural Tangents
Fast and Easy Infinite Neural Networks in Python
Stars: ✭ 1,357 (+1080%)
Mutual labels:  kernel
Core
Ultibo Core
Stars: ✭ 102 (-11.3%)
Mutual labels:  kernel
Reactos
A free Windows-compatible Operating System
Stars: ✭ 10,216 (+8783.48%)
Mutual labels:  kernel
Aura Operating System
AuraOS, the Franco-English Operating System developed in C# using Cosmos!
Stars: ✭ 111 (-3.48%)
Mutual labels:  kernel
Acpi
Rust library for parsing ACPI tables and AML
Stars: ✭ 99 (-13.91%)
Mutual labels:  kernel
Jingos
JingOS - The World’s First Linux-based OS design for Tablets
Stars: ✭ 101 (-12.17%)
Mutual labels:  kernel
Boneos
💥 BoneOS Kernel and Operating System Source Tree
Stars: ✭ 96 (-16.52%)
Mutual labels:  kernel
Kernel Fuzzing
Fuzzers for the Linux kernel
Stars: ✭ 99 (-13.91%)
Mutual labels:  kernel
Linux Pine64
Pine64 Linux Kernel
Stars: ✭ 103 (-10.43%)
Mutual labels:  kernel
Ipod Gadget
iPod usb gadget for audio playback
Stars: ✭ 94 (-18.26%)
Mutual labels:  kernel
Symfony Async Kernel
[Deprecated] Symfony Async Kernel adpater
Stars: ✭ 111 (-3.48%)
Mutual labels:  kernel
Kernelgat
The source codes for Fine-grained Fact Verification with Kernel Graph Attention Network.
Stars: ✭ 92 (-20%)
Mutual labels:  kernel
Cheats
🎮 Source code of ring0/ring3 cheats in Counter-Strike Global Offensive
Stars: ✭ 102 (-11.3%)
Mutual labels:  kernel
U Root
A fully Go userland with Linux bootloaders! u-root can create a one-binary root file system (initramfs) containing a busybox-like set of tools written in Go.
Stars: ✭ 1,816 (+1479.13%)
Mutual labels:  kernel
Tofita
🍬 All-new kernel for @GreenteaOS
Stars: ✭ 112 (-2.61%)
Mutual labels:  kernel
Serenity
SerenityOS is a love letter to '90s user interfaces with a custom Unix-like core. It flatters with sincerity by stealing beautiful ideas from various other systems.
Stars: ✭ 16,842 (+14545.22%)
Mutual labels:  kernel

SassyKitdi

See writeup at https://zerosum0x0.blogspot.com/2020/08/sassykitdi-kernel-mode-tcp-sockets.html

Study

You can view the generated shellcode in assembly.txt

Most of the code of interest is in the src/common/ntmem (LSASS dump) and src/common/nttdi (TCP sockets) libraries. All structs, types, function signatures, etc are in src/common/ntdef. The shellcode project is in src/payloads/sassykitdi.

Tested on Windows 10.0.18362.1016. Might require some tweaking for other versions but all APIs used are available since Win2k.

Build/Run

Install gcc-mingw-w64 and Rustup with x86_64-windows-pc-gnu target.

In src/payloads/sassykitdi there is build.sh and pyit.sh to build the project and scrape the shellcode out of the DLL. The big endian reverse address/port should be changed in the source.

There is also src/socketdump.py server which will wait to receive SassyKitdi connections and create a minidump file.

Exploit Preambles

SassyKitdi must be performed at PASSIVE_LEVEL. To use the sample project in an exploit payload, you will need to provide your own exploit preamble. This is the unique part of the exploit that cleans up the stack frame, and in e.g. EternalBlue lowers the IRQL from DISPATCH_LEVEL.

Other Notes

The Rust code compiler generated size is ~3300 bytes, but includes many safety checks and early bailouts. Hand optimization could go down to ~2500 bytes, perhaps further with less safety checks.

Disclaimer

Code is provided for educational purposes and is unfriendly due to my laziness. I am not responsible for anyone's actions, including my own, and am warning you not to do illegal things.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].