Skip to content

Instantly share code, notes, and snippets.

View zwade's full-sized avatar
💻
Probably CTFing

Zach Wade zwade

💻
Probably CTFing
View GitHub Profile
@zwade
zwade / homepage.png
Last active August 29, 2015 14:03
Getting Set Up With Wakari and JITCode

Navigate to oak.itl.gwu.edu/login to get started with Wakari.

Once you've logged in, you should go into the settings menu, and under "account settings" change your password from the default one, to something more convenient from you. As soon as you save your settings, return to your user page and open up the JITCode project. Once in the project, you will have the option to open up an iPython notebook, viewer, or terminal, among others. Click the iPython notebook option and then click the first lesson to get started.

@zwade
zwade / Baleful.md
Last active October 30, 2015 15:18
Hello!

Baleful

Before we start, know that this problem take an inordinate amount of time, and I will be glossing over a lot of my process in solving this. I will hit the highlights, but as with many things like this, practice makes perfect. Lets see what they give us.

This program seems to be rather delightfully twisted! Can you get it to accept a password? We need it to get access to some Daedalus Corp files.

And the hint,

>This program appears to be "packed." Fortunately, it's packed with a common packer, and no trickery was performed - so you should be able to just unpack it with the same packer.

@zwade
zwade / Spark.js
Created March 31, 2015 14:58
A lightweight handlebars live rendering system
//A lightweight Handlebars live rendering system similar to ember and blaze
//Written 2015 by zwade
Spark = function(hb) {
this._hb = hb;
this._kvp = {};
this._upd = {};
var that = this;
hb.registerHelper("spark", function() {
@zwade
zwade / DFT.v
Created April 29, 2015 13:06
DFT V.1
`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer:
//
// Create Date: 12:51:35 03/13/2015
// Design Name:
// Module Name: main
// Project Name:
// Target Devices:
@zwade
zwade / box.css
Last active August 29, 2015 14:20
box.css
.box {
background-color: #f00 !important;
}
window {
background: #0f0;
}
@zwade
zwade / fizzbuzz.bf
Created May 23, 2015 18:10
Befunge
>145*5*09p>:0\09g`#@_\:3%!#v_>:5%!#v_\#v_:.v
" " >v
z z \
z z $
i \ u \
f ^1$< b ,
" \ " ,
>,,,,^ >,,^
^ ,*25 +1 < <
@zwade
zwade / laml.js
Created July 15, 2015 20:07
LAML -- Lazy-Butt Markup Language, pronounced Lame-al -- Transpiler. See Below for input (schema.laml) and output (schema.js). Note, it outputs JS, not JSON to allow for the embedding of functions within the markup language.
funcs = []
function main() {
fs = require("fs")
file = fs.readFileSync(process.argv[2] || "schema.laml").toString()
empty = file.split(/\n+/)
var out = {}
@zwade
zwade / capture.js
Created December 13, 2017 18:48
Capture Script for Arduino
#!/usr/bin/env node
let yargs = require("yargs")
let serial = require("serialport")
let fs = require("fs")
let { join } = require("path")
let glob = require("glob")
function getPorts() {
let files = glob.sync("/dev/tty.usbmodem*")
@zwade
zwade / decode.ts
Last active September 29, 2019 10:12
Disassembler for Dragon CTF 2019 Mysterious CPU Problem
#!/usr/bin/env ts-node
import * as fs from "fs-extra";
import { symlinkSync } from "fs-extra";
let color = (num: number) => (data: any) => `\x1b[38;5;${num}m${data}\x1b[0m`;
let gray = color(0);
let red = color(1);
let green = color(2);
let yellow = color(3);
@zwade
zwade / pinboool.py
Created August 16, 2020 18:04
Reimplementation of DEF CON 2020's Pinboool Binary
from typing import Tuple, Dict, List, TypedDict
import copy
import struct
from functools import cached_property
import math
from pwnlib.util.packing import flat, u16
def twos_byte(b):
b = b & 0xFF
if b <= 0x7F: