Knowledge
Computer Languages
- - C (20y, on a daily basis)
- - PHP (19y), SQL (19y), HTML / CSS (19y)
- - Python (5y), TCL (19y)
- - Bash scripting (21y), ..
- - Assembler (limited use, mostly reading)
Languages
- - Dutch (native)
- - English (good)
- - German (reasonable)
Main Technical Skills
- - C programming
- - System administration (mostly Linux, some Windows)
- - Security: hardening (Linux), firewalls, code auditing, penetration testing
- - Networking
Experienced with these OS's and Software
- - Linux (20y): Ubuntu, Debian, RedHat/Fedora
- - System hardening: AppArmor, SELinux, mod_security, ..
- - Intrussion detection: OSSEC, Tripwire, Snort, ..
- - Network scanning: OpenVAS, nmap, ..
- - Common daemons: Samba, Apache, PHP, various ftpds, mysql, etc.
- - Mail servers: exim+courier, qmail+vpopmail, spamassassin, clamav
- - Developer tools: gcc, gdb, gcov, gprof, Microsoft Visual C++, git, svn, cvs
- - IRC: UnrealIRCd, Eggdrop, anope, ircservices, denora, ..
- - Low-level networking: Tcpdump, Ethereal/Wireshark, ..
- - Virtual servers: KVM, OpenVZ, UML, VMWare, VirtualBox, ..
- - Storage: Linux MD Raid, DRBD
- - Windows NT/95/98/2000/XP/7/8/10 Client
Non-IT interests/hobby's
- - Science
- - Hiking in mountains
- - In-depth news / documentaries
- - Books about "recent" history (20th century)
- - Photography
Work Experience
MLHJ - System-/Network administrator 2007-present
The Montessori Lyceum Herman Jordan is a high school (12-18y) for ~850 students, located in The Netherlands.
- - Part-time system-/network administrator
- - School now owns 400 computers & laptops. Students and staff bring in another 1000 devices every day (BYOD)
- - Work is very much diverse. However, key aspects are: server management, security and networking/wifi.
Chrends - VP of Engineering (through VULNSCAN) 2014-2015
Chrends was a bold attempt to bring IRC to the masses, notably mobile
phones. Chrends stands for Chatrooms for trending topics and consists of an easy to use iPhone app
that uses IRC extensively as a backend for all messaging. With a focus
heavily on anonymity it was designed so that nobody[*] could find out who you really are.
Infrastructure-wise it used Linux, UnrealIRCd, Amazon EC2, Amazon S3,
Amazon SNS, Percona XtraDB Cluster and other technologies. In my position
I was responsible for programming the IRC backend, protocol design,
maintaining the infrastructure and supervising security.
In the final months I was also responsible for coding a RESTful API using
the Symphony2 framework and the Doctrine DBAL.
[*: or at least on a technical level make it substantially difficult,
achieved by (among other things): not storing any personable identifiable
information, hiding/abstracting IP addresses everywhere and making
extensive use of encryption both in data transfer and data storage]
SafeWire - Software developer, Consulting, Server Management 2007-2011
Started a company with a friend, specialized in VPN (Virtual Private Network)
solutions. Targetted at small and medium businesses located in The Netherlands.
VULNSCAN - Software developer, Consulting, Server Management 2005-present
Started my own company because the success of writing paid software/consulting as a hobby was getting a bit out of hand.
- - Providing custom coding and consultancy to various companies troughout the world
(US, Germany, France, Belgium, Luxembourg, Norway, Hungary, Mexico, Australia, ..).
- - Coding/consultancy includes large projects for commercial companies,
such as coding and/or maintaining: customer support systems, messaging services, restricted/paid chat systems, ..
- - Also doing non-IRC related consultancy such as server management (security hardening, apache, proftpd, mysqld, etc), PHP coding, and more
MLHJ - System-/Network administrator 2001-2002
The Montessori Lyceum Herman Jordan is a high school (12-18y) for ~700 students, located in The Netherlands.
- - Converted the entire network from coax to UTP
- - Installed a secure internet router/firewall & new Internet uplink
- - Merging internal networks, converting a network from Novell to Linux+NT
- - A _lot_ of Windows (NT/2000) and Linux security measures both at server and desktop (you know students..)
- - Installing backup systems, UPS, writing backup procedures
- - Basic hardware installation/management, ended up with 100 desktops for students throughout the school.
Volunteer Projects
UnrealIRCd - Head coder 2001-present
UnrealIRCd is a highly advanced open-source IRCd (chat server), it is the most popular one
on small- and medium-sized networks (1-3000 users).
- - Implemented spamfilter: to my knowledge the first real spam filter at the IRCd level
- - Redesigned channel mode +f: A build-in anti-flood system in the IRCd, making it respond in real-time, also avoiding the need of bots
- - Implemented extended channel modes system: allowing another 32 more channel modes, all in a clear framework, fully modularized
- - Implemented extended bans: not originally my idea, but the first major ircd using this concept
- - Countless bugfixes and other small features
Other Projects
Here's a list of some of the other projects I did in my spare time:
- Security, 1999-2005 - While my publications (well, bugtraq posts) on security are quite
limited, I was quite active in this field during this period. Unfortunately
nowadays I don't have much time to search for security holes and experiment. I wrote my first exploit when I was
16, it was a buffer overflow that emulated a struct with function pointers,
you can find it here
(but please ignore my bad English from back then ;p). In the meantime I
occasionally mailed bugtraq/vuln-dev. Another thing I wrote was a tool
to check for apache servers being vulnerable to the chunked encoding
exploit, at that time I also warned several companies that there server was
vulnerable. My last public proof-of-concept
is from 2004 and tries to crash OpenSSL applications vulnerable to the OpenSSL ASN.1 bug.
I noticed that for some reason nobody published an exploit/PoC, not even
months after the release of the advisory, hence I decided to post it after
several people requested it. Over time I've also kept several exploits private (although
never abused), such as: snmpd bof, eggdrop fmt bug, IIS 4 DoS, tcpdump DoS, Unreal Tournament DoS,
rcrypt/cryptcat crypto weakness, and more. These vulnerabilities have been fixed since then.
- Honeypot, 2002 - A project where I set up my own honeypot (to
catch hackers). I also wrote several Linux kernel modules such as one that
locks down the system if a certain file is hit (rm -rf protection), a logger,
and some others I want to keep private for now.
- HokIRCd, 2001 - I wrote my own IRCd in VB (yes, sorry..), over 10.000
lines of code, using it's entire own protocol, zip, ssl, and most of
important of all supporting a mesh link topology. This was just a
proof-of-concept thing written in my summer vacation, it was never meant for
public/mass use. I gained a lot of experience from it however.
- Spoofit, 2001 - An utility that can blindly spoof a connection
from any IP address to Windows 95/98/NT/2000. It tries to guess
the ISN (Initial Sequence Number) range and then performs the spoof. It was
especially designed for use on the Internet from a normal *DSL/cable
broadband connection. It takes just a few seconds to spoof for W9X/NT,
and 5-10m for 2000+. Originally meant for releasing to the public, but for
some unknown reason never done. Nowadays most TCP/IP stacks have been fixed.
- SUBCOM, 1999 - A project that (mis)uses the ISDN protocol to allow some
limited free data transfer (10bps), this was before I had a cable connection
and my phone bills were rather expensive. Implemented via a modified
Linux kernel that hacked into ISDN layer 2 to send extra frame data when
calling (such as "calling party subaddress"). Included it's own protocol
(including segmentation), own chat server, etc. Although slow by nature, it was
a nice way to communicate for free.