Innovate, disrupt, code the future. 💻🔐🚀

DNS Exfiltration With Python

Below is a detailed blog post in Markdown that uses real snippets from your repository and explains how your DNS exfiltration client‑server works and why you chose specific options.


In this post, we dive into the mechanics behind a DNS exfiltration tool written in Python. This project demonstrates how data can be covertly transmitted via DNS queries. I built this client‑server system to study DNS exfiltration techniques in a controlled, educational environment. Below, I detail the architecture, key design decisions, and provide annotated code snippets from both the client and server implementations.

2025-04-01

Understanding Dependency Injection in Python

Dependency Injection (DI) is a software design pattern that helps create loosely coupled, testable, and maintainable code. Instead of having classes create their own dependencies, those dependencies are “injected” from the outside. This blog post will walk you through a concrete Python example that demonstrates DI, along with alternate techniques like the Service Locator and Factory patterns.

What Is Dependency Injection?

At its core, dependency injection involves passing (or “injecting”) an object’s dependencies rather than instantiating them internally. The main benefits include:

2025-03-30

Stratum‑1 NTP Server on Raspberry Pi 5

This guide explains how to transform a fresh installation of Raspberry Pi OS into a stratum‑1 NTP server. The project leverages a GPIO‑based GPS module with PPS, the PTP hardware timestamping capability of the Ethernet interface, Chrony for NTP synchronization, and Telegraf with InfluxDB for monitoring.


1. Overview

In this project you’ll build a stratum‑1 NTP server using:

  • Raspberry Pi 5 as the host.
  • A GPS module (via the serial UART port) for an absolute time reference.
  • A PPS (Pulse Per Second) signal from the same GPS for sub-microsecond timing accuracy.
  • The PTP hardware timestamping on the Ethernet interface for improved precision on PTP packets.
  • Chrony for NTP time synchronization.
  • gpsd to interface with your GPS receiver.
  • Telegraf for monitoring various metrics (including Chrony statistics) sent to an InfluxDB backend.

2. Prerequisites and Required Hardware

Before you begin, ensure you have the following:

2025-03-28

Mathematics & Physics for understanding Orbital Mechanics

Welcome to this interactive curriculum on the mathematics and physics behind launching and recovering space vehicles. In this notebook, we will build a comprehensive understanding of the underlying math, coordinate systems, and physics that allow engineers to determine launch windows, orbital trajectories, reentry paths, and landing coordinates for real-world spacecraft.

Overview of the Notebook

This notebook is structured to guide you step-by-step through the essential topics required for space mission planning. We begin with fundamental mathematical concepts such as algebra, trigonometry, and coordinate systems, and progressively build up to advanced topics like orbital mechanics, trajectory optimization, and reentry dynamics. Each section includes interactive Python examples and visualizations to help reinforce the concepts and illustrate how real-world physics is applied in space missions.

2025-03-26

Understanding the Crystal Ball Function

Exploring the intricacies of the Crystal Ball Problem as it applies to arrays, this piece delves into the challenge of predicting future elements based on current sequences. It underscores the significance of pattern recognition and algorithmic forecasting in computational analysis and real-world applications.

Introduction to the Crystal Ball Problem with Arrays

The Crystal Ball Problem in the context of arrays is a metaphorical representation of the challenge of predicting future elements or trends based on a current sequence of data. Imagine you have an array of numbers representing data points over time. The task is to predict the next set of values the array will hold using only the information currently available.

2024-04-05

Store dotfile with git

Version: 1.2

Store all DotFiles in a bare git repository

Setup

  1. git init –bare $HOME/.cfg
  2. alias config=’usr/bin/git –git-dir=$HOME.cfg/ –work-tree=$HOME'
  3. echo “alias config=’usr/local/bin/git –git-dir=$HOME.cfg/ –work-tree=$HOME’” >> $HOME/.zsh/aliases
  4. config config –local status.showUntrackedFiles no

Adding files

Manually add files to repository by using config add <filename>. Use this to add all your files manually, this way only updates to your tracked files will show

Add the github repository

  1. config remote add origin <remote-url>
  2. config push -u origin main

Restore files from github

  1. echo “.cfg” >> .gitignore
  2. git clone <remote-git-repo-url> $HOME/.cfg
  3. alias config=’/usr/local/bin/git –git-dir=<path to .cfg’s Git directory> –work-tree=$HOME'
  4. config config –local status.showUntrackedFiles no
  5. config checkout
2024-04-04

Transforming Enterprise Networking: The Impact of AI Technologies

Date: <2024-04-03 Wed>

Transforming Enterprise Networking:

In the ever-evolving realm of enterprise networking, the integration of Artificial Intelligence (AI) technologies has become a game-changer. One of the most notable advancements in this area is Juniper Mist, a platform that leverages AI to revolutionize how networks are managed and operated. This article delves into how AI, particularly through solutions like Juniper Mist, is reshaping the enterprise networking landscape.

Understanding Juniper Mist and Its AI-Driven Approach

Juniper Mist is an AI-driven network solution that offers a unique combination of cloud management, advanced AI capabilities, and programmable APIs to deliver a full-stack solution for wireless, wired, and WAN networks. The platform is designed to simplify operations, improve user experiences, and provide unprecedented insight into network performance.

2024-04-03

Top Networking Trends of 2024: A Network Engineer's Perspective

Date: <2024-01-28 Sun>

Version: 1.0

Welcome to 2024, a year that continues to witness revolutionary changes in the world of networking. As a network engineer, I’ve seen firsthand the rapid evolution of technology in our field. This year is no exception, with several trends emerging that are reshaping how we think about and implement network infrastructure. Let’s dive into some of the top trends in networking for 2024.

1. The Rise of 6G Technology

Although 5G has just recently become mainstream, the buzz around 6G technology is already gaining momentum. Expected to be commercially available by 2030, research and development in 6G are heating up in 2024. This next-generation technology promises even faster speeds, lower latency, and higher reliability, paving the way for more advanced applications like holographic communications and augmented reality.

2024-03-05

GnuPG Cheat Sheet

GnuPG Cheatsheet

Quick list of the most common GnuPG commands that I need most often. Encrypt, decrypt, signing, key management, key servers, and special features.

Encrypt and decrypt

Encrypt a file with your key

gpg -er me@example.org diary.txt
  • Options

    -r encrypts the file for the user specified as argument. The output is written to diary.txt.gpg.

Encrypt a file for another person

gpg -er alice@example.org diary.txt

Encrypt a file with passphrase

gpg -c diary.txt

Decrypt a file

gpg -do diary.txt diary.txt.gpg

Encrypt and sign

Encrypt a file and sign with your key

gpg -esr alice@example.orge diary.txt

Sign and encrypt the file, output is written to diary.txt.gpg.

2022-08-21

beginner-network-templating

Develop and Deploy Network Templates Before Automating

Date: 2022-05-26
Subject: Network Templating
Version 1.0

Automation is the number one topic in networking today. Automation allows a team to lean left, moving simple troubleshooting to the NOC, it allows the team to do more with less, and it allows for repeatable deployments. A good place to start is to think about many of the day to day work that gets done, how much of this work is simply applying the same changes over and over. These tasks are a great place to start with templating.

2022-05-26