Download static tailscaled binary here
TAILSCALED_SOCKET="/tmp2/$USER/tailscaled.sock"
TAILSCALED_STATE="tailscaled.state"
./tailscaled --tun=userspace-networking --state="$TAILSCALED_STATE" --socket "$TAILSCALED_SOCKET"
| #include <stdio.h> | |
| #include <stdlib.h> | |
| #include <dlfcn.h> | |
| __attribute__((constructor)) void init() { | |
| putenv("LD_PRELOAD="); | |
| system("sh"); | |
| exit(0); | |
| } | |
| // gcc -shared -fPIC hook.c -o hook.so -ldl -Os -s -Wall |
| const mem = new Uint8Array(Module.asm.memory.buffer) | |
| function encode(str) { | |
| return new TextEncoder().encode(str) | |
| } | |
| function decode(arr) { | |
| return new TextDecoder().decode(arr) | |
| } |
| [Interface] | |
| PrivateKey = REDACTED | |
| Address = 172.16.0.2/32 | |
| MTU = 1280 | |
| [Peer] | |
| PublicKey = REDACTED | |
| # 0.0.0.0/0 - (0.0.0.0/8, 10.0.0.0/8, 127.0.0.0/8, 169.254.0.0/16, 172.16.0.0/12, 192.168.0.0/16, 240.0.0.0/4, 162.159.192.1/32, 1.1.1.1/32) + 172.16.0.0/24 | |
| # 162.159.192.1 is for engage.cloudflareclient.com | |
| # reference: https://github.com/ViRb3/wgcf/issues/42, https://www.procustodibus.com/blog/2021/03/wireguard-allowedips-calculator/ |
| while true; do mkfifo pipe; stdbuf -o0 cat pipe | nc -lv 7777 | ( read line; reqpath="$(echo "$line" | sed -nE 's/GET ([^ ]*) HTTP.*/\1/p')"; echoparam="$(echo "$reqpath" | cut -d '?' -f2 | awk 'BEGIN { RS="&"; FS="=" } { if ($1 == "echo") print $2 }')"; response=$echoparam; if [[ $reqpath == '/' ]]; then response='<form><input name="echo"><button>Echo</button></form>'; fi; printf 'HTTP/1.0 200 OK\r\nContent-Type: text/html\r\n\r\n'; printf '%s' "$response" ) > pipe; rm pipe; done |
| {"elements":[{"text":"Water","emoji":"π§","discovered":false},{"text":"Fire","emoji":"π₯","discovered":false},{"text":"Wind","emoji":"π¬οΈ","discovered":false},{"text":"Earth","emoji":"π","discovered":false},{"text":"Steam","emoji":"π¨","discovered":false},{"text":"Mud","emoji":"π©","discovered":false},{"text":"Dust","emoji":"π«οΈ","discovered":false},{"text":"Planet","emoji":"πͺ","discovered":false},{"text":"Steampunk","emoji":"π―οΈ","discovered":false},{"text":"Cloud","emoji":"βοΈ","discovered":false},{"text":"Volcano","emoji":"π","discovered":false},{"text":"Mountain","emoji":"ποΈ","discovered":false},{"text":"Snow","emoji":"βοΈ","discovered":false},{"text":"Snowball","emoji":"βοΈ","discovered":false},{"text":"Snowman","emoji":"βοΈ","discovered":false},{"text":"Eruption","emoji":"π","discovered":false},{"text":"Lava","emoji":"π","discovered":false},{"text":"Stone","emoji":"πͺ¨","discovered":false},{"text":"Rock","emoji":"πͺ¨","discovered":false},{"text":"Clay","emoji":"πΊ","discovered":false},{"text":"Boulder","emoji":"πͺ¨","dis |
| #!/usr/bin/env python | |
| from __future__ import print_function | |
| import argparse | |
| import binascii | |
| import functools | |
| import struct | |
| import sys | |
| import zlib |
Download static tailscaled binary here
TAILSCALED_SOCKET="/tmp2/$USER/tailscaled.sock"
TAILSCALED_STATE="tailscaled.state"
./tailscaled --tun=userspace-networking --state="$TAILSCALED_STATE" --socket "$TAILSCALED_SOCKET"
| from types import FunctionType, CodeType | |
| import dis | |
| def assemble(ops): | |
| cache = bytes([dis.opmap["CACHE"], 0]) | |
| ret = b"" | |
| for op, arg in ops: | |
| opc = dis.opmap[op] | |
| ret += bytes([opc, arg]) |
| #!/bin/sh | |
| source=$1 | |
| dest=$2 | |
| if [ -z "$source" ] || [ -z "$dest" ]; then | |
| echo "Usage: $0 <source> <dest>" | |
| exit 1 | |
| fi | |
| tmpmd="$(mktemp tmp-XXXXXX.md)" | |
| tmphtml="$(mktemp tmp-XXXXXX.html)" |
| from Crypto.Util.number import * | |
| from hashlib import sha256 | |
| import random | |
| # https://eprint.iacr.org/2018/623.pdf | |
| # vdf implementation using rsa as hidden order group | |
| n = getPrime(512) * getPrime(512) | |
| T = 2**20 |