Skip to content

Instantly share code, notes, and snippets.


Christoph Gerneth c7h

View GitHub Profile
c7h /
Created Jul 9, 2020
RCE Exploit Pickle Cookie
Cookie RCE for Cryptopaste server
import requests
import os
import pickle
import base64
target = "http://localhost:1337/"
c7h / ipynb
Created Dec 9, 2019
Install a pip package in jupyter (the right way)
View ipynb
# Install a pip package in the current Jupyter kernel
import sys
!{sys.executable} -m pip install plotly
c7h /
Created Sep 6, 2018
Read an I2C Portexpander
printf "76543210 76543210\n"
while :
v=$(i2cget -y 0 $ADDRESS 0x00 w)
echo ${v: -4:4} | xxd -r -p | xxd -b | awk '{split($0,a," "); printf "%s %s\r", a[2], a[3]}'
View rotarydial.ino
/* Rotary Dial encoder
encode the rotary dial of an old analog phone.
by Christoph Gerneth
const int active_pin = 2;
const int pulse_pin = 3;
int number_counter = 0;
int last_pulse_state = 0; // last state of the rotary dial pulser
int last_active_state = 0;
c7h / gist:cbba43f1c3d58250f9c9fc7bd39ebba7
Created Jul 17, 2017
major and annoying differences between module versions of Pythons JSON Library
View gist:cbba43f1c3d58250f9c9fc7bd39ebba7
Two versions of the same library behave completely different :-/
the PI
Python 3.4.2 (default, Oct 19 2014, 13:31:11)
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import json
>>> try:

Keybase proof

I hereby claim:

  • I am c7h on github.
  • I am c7h ( on keybase.
  • I have a public key ASCdetH8IgkxSS8N_CBwRxZhqthPiFpK-iGS4vlIn1vtUQo

To claim this, I am signing this object:

c7h /
Created Dec 9, 2015
logfile evaluation
my $user_c = 0;
my $user_min = 0;
my @ip = ();
while(<>) {
if (m/(^\w+).*(\d{2}:\d{2})/) {
if ($1 eq 'christoph'){
$user_c++; # user_zaehler erhöhen
c7h /
Created Nov 16, 2015
understanding binary search trees
class BinSearchTreeElement(object):
def __init__(self, data, leftTree=None, rightTree=None): = data
self.left = leftTree
self.right = rightTree
def add(self, element):
if element <=
self._insertElement(self.left, element)
c7h / gist:e0aa37201f255fd5e92a
Created Jul 3, 2015
CSV DictWriter Example
View gist:e0aa37201f255fd5e92a
__author__ = 'Christoph Gerneth'
from csv import DictWriter
from random import randrange
filename = 'data.csv'
label = ['x-axis', 'y-axis']
with open(filename, 'w') as f:
csvw = DictWriter(f, fieldnames=label)
View gist:e2c73880159ab3502539
__author__ = 'Christoph Gerneth'
Decorators are one of the most powerful patterns. They can be used to
inject code in functions, modify them and infuence their beihavior.
Here is an example:
class Tools(object):
def sayhello(self, func):