All Projects → subgraph → usblockout

subgraph / usblockout

Licence: other
USBLockout monitors your user session and triggers Grsecurity Deny New USB feature.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to usblockout

STM32 XPD
STM32 eXtensible Peripheral Drivers
Stars: ✭ 38 (-26.92%)
Mutual labels:  usb
usb
Minimalist portable USB device stack for SAMD21, LPC1800, LPC4300, Xmega
Stars: ✭ 90 (+73.08%)
Mutual labels:  usb
usbmon
List and monitor USB devices connected to Linux host. Also as Collectd plugin.
Stars: ✭ 28 (-46.15%)
Mutual labels:  usb
getting-started
List of ideas for getting started with TimVideos projects
Stars: ✭ 50 (-3.85%)
Mutual labels:  usb
photo-screen-saver
A Chrome Extension providing a screen saver with custom photo sources. Developed with Polymer Web Components
Stars: ✭ 20 (-61.54%)
Mutual labels:  screensaver
matrix
Small, fast and elegant Windows screensaver of the green "Matrix" cypher-code seen in the films.
Stars: ✭ 123 (+136.54%)
Mutual labels:  screensaver
usb stack
Tiny and portable USB device/host stack for embedded system with USB IP
Stars: ✭ 175 (+236.54%)
Mutual labels:  usb
mkosxinstallusb
Linux shell script that creates USB flash drive booting OS X installer
Stars: ✭ 34 (-34.62%)
Mutual labels:  usb
ws-ldn-12
ARM / STM32F7 DIY synth workshop
Stars: ✭ 62 (+19.23%)
Mutual labels:  usb
MiniNT5-Tools
small Windows 10 (based on Windows PE) with customised tools
Stars: ✭ 34 (-34.62%)
Mutual labels:  usb
akbl
Control the lights of Alienware computers under GNU/Linux systems.
Stars: ✭ 99 (+90.38%)
Mutual labels:  usb
tesla-usb-drive
Tesla DashCam & Music USB drive maker tool
Stars: ✭ 17 (-67.31%)
Mutual labels:  usb
FPGA-USB-Device
FPGA-based USB-device controller to implement USB-CDC, USB-HID, etc.
Stars: ✭ 29 (-44.23%)
Mutual labels:  usb
phywhispererusb
PhyWhisperer-USB: Hardware USB Trigger
Stars: ✭ 56 (+7.69%)
Mutual labels:  usb
GLMaze
GLMaze is a Windows 95 Maze screensaver clone written in C using OpenGL.
Stars: ✭ 23 (-55.77%)
Mutual labels:  screensaver
yags
Go powered statusline generator
Stars: ✭ 18 (-65.38%)
Mutual labels:  dbus
macos-blank-screensaver
Blank (black) screensaver for MacOS
Stars: ✭ 27 (-48.08%)
Mutual labels:  screensaver
nrf52-keyboard
A BLE & 2.4G Keyboard Firmware using nrf52810/52811/52832
Stars: ✭ 101 (+94.23%)
Mutual labels:  usb
multiclock
MultiClock is a screensaver for macOS that displays the time using 24 clocks
Stars: ✭ 48 (-7.69%)
Mutual labels:  screensaver
azalea
main board for the GreatFET project, also known as GreatFET One
Stars: ✭ 52 (+0%)
Mutual labels:  usb

Session USB Lockout

You're in a place that is relatively safe, say your local hackerspace. You need to leave your computer out of sight for a small amount of time, the space is safe enough that you are not worried about it being stolen, but not enough that someone couldn't attempt a quick drive-by USB attack.

This program provides a way to toggle Grsecurity Deny New USB feature with the state of a user session. That is, it will automatically enable the feature when the screen is locked or the session exits, and vice versa.

It consists of a privileged daemon that exposes itself on the dbus system bus; and a client daemon which runs in the user session via xdg-autostart, and relays the session screen-lock events on the system bus.

The client utility also allows the user to enable or disable the feature manually by calling:

usblockout --[enable|disable]

Caveats

Beware! If you use some sort of USB device (ex: a YubiKey) for PAM logins, login will be entirely broken! One workaround for this is to plug in the USB device at boot (before the daemon launches), or before switching to a different tty. Devices like smartcards, which have readers that are always plugged in, should work as expected.

This, of course only works if Grsecurity sysctl is enabled and not locked.

Building & Packaging

Provided in this repository is a debian branch which is used to build a deb package from git tags:

git checkout -b debian https://github.com/subgraph/usblockout.git
cd usblockout
gbp buildpackage -us -uc
dpkg -i /tmp/subgraph-usblockout_#VERSION#.deb

You will need to either log out and log back in, or launch usblockout (for example via alt-F2) after the install.

To run without without the xdg autostart and systemd service (when you are debugging or for development) you will want to run the daemon in one terminal with sudo ./usblockoutd --debug and the client in another with ./usblockout --debug.

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].