System Overlord

A blog about security engineering, research, and general hacking.

socat as a handler for multiple reverse shells

I needed a way to handle multiple reverse shells calling back to the same C2 host. It's a little convoluted, but I found a way to receive multiple incoming sessions and multiplex them into tmux windows.

TP-Link Kasa App: SSL Verification Disabled (Fixed)

For an unknown period of time prior to December 2017, the Kasa "Smart Home" control application for Android failed to validate any TLS certificates when communicating to TP-Link's servers. This app is used for control of the company's line of smart plugs, light bulbs, and home hub, and affected all phases of the use of the app, including user registration, authentication, and device control.

A Cheap and Compact Bench Power Supply

I wanted a bench power supply for powering small projects and devices I'm testing. I ended up with a DIY approach for around $30 and am very happy with the outcome. It's a simple project that almost anyone can do and is a great introductory power supply for any home lab.

Even With the Cloud, Client Security Still Matters

Despite the move of resources to the cloud, security of your clients and endpoints remains important. Some believe that only servers need to be secured, but it's important to remember that the clients with access to servers are equally vulnerable to compromise and use to gain access.

2017 Christmas Ornament

After playing around with a custom DEF CON badge, I wanted to do another electronics project just for fun. What better time to share electronics with others than Christmas? So I decided to do a custom ornament for friends and family.

Though it shared some characteristics with my DEF CON badge (blinken lights, battery powered, etc.), the similarities ended there. In this case I want something lightweight (it’s going on a tree branch), simple (the XXV badges took a long time to assemble by hand), and that could run off a coin cell battery for days.

Not being the most artistic of individuals, I went with a simple snowflake design and 6 LEDs at the points. At first, I wanted to do white LEDs, but since they have a forward voltage around 3.2V, that wouldn’t work well with a single 3V coin cell, so I settled for 1.8V Red LEDs. (The battery will be unable to produce much current at all long before it reaches 1.8V.)

Snowflake Ornament Front

The ornament base is a red soldermask PCB with gold-plated (ENIG) copper. The boards were produced at Elecrow and I hand assembled the parts. The microcontroller is the ATTiny2313A, chosen both for low power consumption and low cost. (Driving 6 LEDs doesn’t take much in the way of CPU.) I chose not to use the ATTiny25/45/85 series because I didn’t want to deal with multiplexing pins to drive the LEDs and in-circuit programming (ICSP) header.


The schematic is pretty straight forward. There’s a battery holder and a couple of power supply capacitors (due to PWM of the lights, I didn’t want the input voltage bouncing around too much), the microcontroller, a single resistor network, and the 6 LEDs which are on the front of the board. The full bill of materials includes:

Label   Description
BT1     20mm SMD Coin Cell Holder
C1      0.1uF Ceramic Capacitor (0805)
C2      10uF Ceramic Capacitor (0805)
U1      ATTiny2313A (QFN20)
RN1     Resistor Network, 8 Independent, 100 Ohm Each
D1-D6   Red SMD LED (0805)
J1      2x3 Header, SMD, 2.54mm Spacing (AVR ICSP)

On the actual ornaments, the ICSP header is unpopulated – I manually held a connector to it to program each one. I left the connector in a standard format instead of a pogo pin arrangement in case any of my recipients wanted to hack on the firmware. (Since it’s Open Source.)

Snowflake Ornament Back

It was a fun little project and I’m already considering how I can improve for a new one next year. Full schematics, design files, and source code are on Github.