Skip to content

Instantly share code, notes, and snippets.

@withakay
withakay / UnlockScheduledTask.ps1
Created Feb 19, 2021
This Powershell script updates the security descriptor for scheduled tasks so that any user can run the task.
View UnlockScheduledTask.ps1
<#
.SYNOPSIS
This Powershell script updates the security descriptor for scheduled tasks so that any user can run the task.
Version 1.0 of this script only displays tasks in the root folder. I want to make sure that works first.
.DESCRIPTION
Earlier versions of Windows apparently used file permissions on C:\Windows\System32\Tasks files to manage security.
Windows now uses the SD value on tasks under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree to accomplish that.
@withakay
withakay / install-latest-docker-compose.sh
Created Feb 8, 2021
Install the latest docker-compose
View install-latest-docker-compose.sh
#!/bin/bash
# A script that will always install the latest docker-compose.
# Execute as root.
#
# See official docs for more
# https://docs.docker.com/compose/install/
#
curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
@withakay
withakay / resize.sh
Last active Feb 4, 2021
Extend/Resize a partition and logic volume on Ubuntu Linux that was installed with LVM enabled
View resize.sh
#!/usr/bin/env bash
# This script will extend the logical volume
# To use all the free space.
# Run this after increasing the size of the virtual disk.
# NOTE, run as sudo.
# Run `pvdisplay` to check your device numbers match up
# /dev/sda3 & ubuntu-vg & ubuntu-lv are the defaults
# if you chose LVM when installing Ubuntu
@withakay
withakay / dhcpd.conf
Created Dec 2, 2020
Update Route53 from ISC DHCP Server when a new lease is created via python and boto3
View dhcpd.conf
# add to dhcpd.conf
# make sure the dhcpd user has permission to execute the script
on commit {
set ClientName = pick-first-value(option fqdn.hostname, option host-name, "unknown-hostname");
set ClientIp = binary-to-ascii(10, 8, ".", leased-address);
set ClientMac = binary-to-ascii(16, 8, ":", substring(hardware, 1, 6));
execute("/opt/dhcpd-hooks/dhcp_event_hook.py", "commit", ClientName, ClientIp, ClientMac);
}
@withakay
withakay / sigred_temp_fix.bat
Created Jul 17, 2020
SigRed temp registry fix
View sigred_temp_fix.bat
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters" /v "TcpReceivePacketSize" /t REG_DWORD /d 0xFF00 /f && net stop DNS && net start DNS
@withakay
withakay / doing.sh
Created Jan 7, 2020
Doing. Log what you are doing to a text file with a timestamp in a markdown friendly manner
View doing.sh
#!/usr/bin/env bash
# path to the 'doing' file, if this doesn't exist one will be created (see below)
DOING_FILE="~/Documents/doing.txt"
# the entry prefix, a tab and hyphen, so markdown parsers can render it
PREFIX=" -"
# date now as yyyy-MM-dd HH:mm - e.g. 2019-05-25 21:56
now=`date '+%F %H:%M'`
task="$@"
View windows-vpn.ps1
# Path for the public phonebook. Used as this is an all users connection.
# Change $env:PROGRAMDATA to $env:APPDATA if not creating an AllUserConnection.
$PbkPath = Join-Path $env:PROGRAMDATA 'Microsoft\Network\Connections\Pbk\rasphone.Pbk'
# Update these variables with the actual VPN name, address, and PSK.
$ConnectionName = 'ArrayString0',"ArrayString1", "ArracyString3","ArracyString4"
$ServerAddress = 'meraki-dynamic-ip-address-dynamic-m.com','meraki-dynamic-ip-address-dynamic-m.com','meraki-dynamic-ip-address-dynamic-m.com','meraki-dynamic-ip-address-dynamic-m.com'
$PresharedKey = 'PreSharedKeySecret'
# If no VPNs, rasphone.Pbk may not already exist
@withakay
withakay / NTLM.cs
Created Oct 8, 2019
NTLM Hash function in c#
View NTLM.cs
/*
source:
https://www.codeproject.com/Articles/328761/NTLM-Hash-Generator
*/
public static string Ntlm(string key)
{
const uint INIT_A = 0x67452301;
const uint INIT_B = 0xefcdab89;
const uint INIT_C = 0x98badcfe;
View id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDiYWt/bASTO/OR9c6MN4JMjlpTFsbuV+Vn0HfiR/XxRDTH52ay/KdlK0DdbkENVv66cWolZ/J/e71UJwGVTnKwOfYn1Hu4fh3RvLWDPJ/F0eaCvBEmrqxd+KxtWH/0io1J9sSjfAA2zTEGaR6NYf1Kz1lJpYROy7IbfHCpi7UGBbw9DOirPBG8GIH6y5QbZrLvV+CwA+GcQnGy2VU/H8GhQVYFwduhikXerEW9OJeX4USKjea7M1MaW//vPeRb5wQ3rZpJHwLryO0NpkhAU7V6kkaTyPBF95SlP4vE7tI5t/x0Ve/NQ3i4DOkcrQMX56jR4kXLBBF9wSavEcy1vB7tpxL+f/Tpm7IcQ+RwxWAYoNDzFEsU+Fhk5UwKYlTWKEGbSpISFObS72Bp11TgmdJydC5Ns2804DHo/4NlnW4Dg/7Ck0ruxGcCbKNffGPbcBOQRsLMfzcwAIenJoUNoHcchULBeDVcF83X8tobSTx0YDtYFlZKrNlVqHRXt8pZCKLIjAr+Lh1qkad7B1oP0WLokaqMnE0XGR3fzGgPl5kuvKpTLQIA2IbYTg0iW8nGBjq37G7kN/orGyyxcDqr1tWt7jzOwzSJTO4+B84QNyN9CSlSjxKU1sG0NbLdM5mWrAgTlc2EJof9S535oCVNqPlCJ0IT36DhS+6o6aFqMcQzvQ== jack@f4der.local
View doing.js
/* Usage
1. Run the setup function (you'll need to do this twice - 1st time to grant acces to Script Properties)
2. Share > Publish as service ... set security level and enable service
3. Copy the service URL and post this in your form/script action
4. Insert column names on the DATA sheet matching the parameter names of the data you are passing
call via https://your-script-url/exec?key=YOUR_KEY?headerX=123&headerB=xyz
*/