Technologies: Python, scapy
This project was done as part of a Scripting for Cybersecurity module for the MSc in Cybersecurity Management. The script can probe for open ports on the /24 network or use a pre-defined list of IP addresses to perform a port scan, password brute force attack, and finally copy itself and execute itself on a compromised target.
net_recon (Network Reconnaissance)
Technologies: Python, scapy
This project was done as part of a Scripting for Cybersecurity module for the MSc in Cybersecurity Management. The script works in two mode – active and passive. In passive mode, the script listens for ARP responses to build a list of IP Addresses and mapped MAC addresses. In active mode, the script used the ICMP protocol (ping) to check for IP addresses on the same /24 as the host.
MyGenetic (Machine Learning)
Technologies: Python, numpy, matplotlib
This was a project done as part of an Artificial Intelligence assignment for Institute of Technology, Tralee. The project was to create a set of individual with “chromosomes” that fed a cost function. These individuals could cross their “genes” to produce new individuals with randomly inherited genes from both parents with a degree of mutation. The population is occasionally culled to produce a “fitter” population overall. The test ends when a maximum number of iterations (generations) is met, or when the population reaches a pre-defined state of “fitness”.
The project aimed to look at test values for how the algorithm would get to the pre-defines state of fitness in the quickest possible ways, and look at optimal test parameters such as population size, maximum number of iterations, odds of mutation, mutation value range and explore rate.
Technologies / Languages: Python
I created this script to deduplicate family photos and videos on a family NAS that is backed up to AWS S3. Many deduplication tools rely on hashes to identify matching files, but this can be very slow – especially when dealing with multi-GB video files. A faster, and equally-reliably method is to do an initial pass on all the files based on file size, and only then hash files that have a potential “twin”.
Colin’s WP Theme
Technologies / Languages: PHP, CSS
This is a sub-theme for the Koromo wordpress theme. It customizes the stylesheets and implements the private CV feature that you can see on this website. The CV feature allows me to keep my CV/resumé private, but generate access keys for selected authorized individuals.
ScoreKeeper (Android App)
Scorekeeper is a badminton umpire’s app for Android. I developed the app when a feature request to support handicap (negative) scores was rejected. The application supports handicap scores, keeps track of the service and game scores, side-switching (e.g. at point 11 in the 3rd game of a match) and has an undo function in case a score is added in error.