Skip to content

Instantly share code, notes, and snippets.

@IAmStoxe
IAmStoxe / ElevatedWindowsTerminal.md
Created November 6, 2024 18:35
This configuration allows you to launch a Windows Terminal session under your DA account directly from your standard account, giving you elevated access when needed without switching users entirely.

Step-by-Step Guide for Configuring an Elevated DA Account Profile in Windows Terminal

  1. Open Windows Terminal Settings:

    • Open Windows Terminal.
    • Click on the dropdown arrow and select Settings.
  2. Add a New Profile:

    • In the Settings panel, navigate to Profiles and click on Add a new profile.
    • Choose PowerShell (or Command Prompt, depending on your preference) as the base profile.
@IAmStoxe
IAmStoxe / Forward-Port.ps1
Created August 28, 2024 22:42
Forward port to WSL
# Define variables
$port = 80
$wslIp = (wsl hostname -I | ForEach-Object { $_.Split(" ")[0] }).Trim() # Get the first IP address of the WSL instance
$firewallRuleName = "AllowPort$portToWSL"
$netshRuleName = "WSL Port Forwarding $port"
# Add a firewall rule to allow inbound traffic on the specified port
Write-Host "Adding firewall rule to allow inbound traffic on port $port..."
New-NetFirewallRule -DisplayName $firewallRuleName -Direction Inbound -LocalPort $port -Protocol TCP -Action Allow
@IAmStoxe
IAmStoxe / Kill-PortProcess.ps1
Created June 3, 2024 19:05
This script finds and terminates the process listening on specified port.
# Find the process ID (PID) listening on port
$port = 3000
$processId = Get-NetTCPConnection -LocalPort $port | Select-Object -ExpandProperty OwningProcess
# Check if processId is found
if ($processId) {
# Kill the process with the found processId
Stop-Process -Id $processId -Force
Write-Output "Process with PID $processId listening on port 3000 has been terminated."
} else {
$KnownFolders = @{}
$KnownFolders.Add("{DE61D971-5EBC-4F02-A3A9-6C82895E5C04}" , "AddNewPrograms")
$KnownFolders.Add("{724EF170-A42D-4FEF-9F26-B60E846FBA4F}" , "AdminTools")
$KnownFolders.Add("{A520A1A4-1780-4FF6-BD18-167343C5AF16}" , "AppDataLow")
$KnownFolders.Add("{A305CE99-F527-492B-8B1A-7E76FA98D6E4}" , "AppUpdates")
$KnownFolders.Add("{9E52AB10-F80D-49DF-ACB8-4330F5687855}" , "CDBurning")
$KnownFolders.Add("{DF7266AC-9274-4867-8D55-3BD661DE872D}" , "ChangeRemovePrograms")
$KnownFolders.Add("{D0384E7D-BAC3-4797-8F14-CBA229B392B5}" , "CommonAdminTools")
$KnownFolders.Add("{C1BAE2D0-10DF-4334-BEDD-7AA20B227A9D}" , "CommonOEMLinks")
$KnownFolders.Add("{0139D44E-6AFE-49F2-8690-3DAFCAE6FFB8}" , "CommonPrograms")
@IAmStoxe
IAmStoxe / add_port.sh
Last active October 12, 2023 17:29
Add Inbound IPv4 Ports to iptables Configuration for Oracle Ubuntu (OCI)
#!/bin/bash
# Script to add inbound IPv4 ports to the iptables configuration.
# Ensure the script is being run as root
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root"
exit 1
fi
@IAmStoxe
IAmStoxe / falcon180b_dl.sh
Last active September 7, 2023 16:05
This script helps you to automatically download and assemble the split files of the Falcon 180B Chat GGUF dataset from Hugging Face.
#!/bin/bash
# Create a file with the list of URLs to download
echo -e "#\nhttps://huggingface.co/TheBloke/Falcon-180B-Chat-GGUF/resolve/main/falcon-180b-chat.Q4_K_M.gguf-split-a\n out=falcon-180b-chat.Q4_K_M.gguf-split-a\nhttps://huggingface.co/TheBloke/Falcon-180B-Chat-GGUF/resolve/main/falcon-180b-chat.Q4_K_M.gguf-split-b\n out=falcon-180b-chat.Q4_K_M.gguf-split-b\nhttps://huggingface.co/TheBloke/Falcon-180B-Chat-GGUF/resolve/main/falcon-180b-chat.Q4_K_M.gguf-split-c\n out=falcon-180b-chat.Q4_K_M.gguf-split-c" > ~/urls.txt
# Use aria2 to download files in parallel
aria2c -x 6 -i ~/urls.txt -d ~
# Concatenate the downloaded files
cat ~/falcon-180b-chat.Q4_K_M.gguf-split-a ~/falcon-180b-chat.Q4_K_M.gguf-split-b ~/falcon-180b-chat.Q4_K_M.gguf-split-c > ~/falcon-180b-chat.Q4_K_M.gguf
@IAmStoxe
IAmStoxe / Get-GPLink.ps1
Created February 13, 2023 18:42 — forked from jdhitsolutions/Get-GPLink.ps1
A PowerShell function to list Group Policy links
@IAmStoxe
IAmStoxe / ProcessHollow.cs
Created December 30, 2022 19:34 — forked from affix/ProcessHollow.cs
Process Hollowing Technique using C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Threading;
using System.Text;
using System.Threading.Tasks;
namespace hollow
{
<#
To easily find out why a sign-in failed for a specific user,
you can use the Where-Object cmdlet to filter the sign-in logs
by the user's display name, and then output information
about the failed sign-in attempt.
№ Here's an example of how you might use the Where-Object cmdlet to find out
why a sign-in failed for a specific user:
#>
function NSLookup(type, domain) {
if (typeof type == 'undefined') {
throw new Error('Missing parameter 1 dns type');
}
if (typeof domain == 'undefined') {
throw new Error('Missing parameter 2 domain name');
}