Important nuances of exploiting Citrix Bleed 2 (CVE-2025-5777):
1. Paths that attackers may target:
2. The POST request body will contain a single parameter without an equals sign and value:
3. (Additional) If CSRF tokens are used, the attack will be performed in two stages:
1st - obtaining a valid CSRF token via a preliminary GET request, and 2nd - exploiting the vulnerability via a POST request with all the necessary additional HTTP headers.
Attention! Both the request body and the request path are case-insensitive - they may use any combination of uppercase and lowercase letters! This is crucial to account for when creating WAF rules.
โ
KGM's notes | KGM's notes (EN)
1. Paths that attackers may target:
/p/u/doAuthentication.do
/nf/auth/doAuthentication.do
2. The POST request body will contain a single parameter without an equals sign and value:
login
3. (Additional) If CSRF tokens are used, the attack will be performed in two stages:
1st - obtaining a valid CSRF token via a preliminary GET request, and 2nd - exploiting the vulnerability via a POST request with all the necessary additional HTTP headers.
Attention! Both the request body and the request path are case-insensitive - they may use any combination of uppercase and lowercase letters! This is crucial to account for when creating WAF rules.
โ
KGM's notes | KGM's notes (EN)
๐1๐ฅ1๐ฏ1
๐ง Fixing Time Synchronization Issues in Kali Linux (on VMware)
I love working with VMware Workstation Pro and periodically download new virtual machine builds from the official Kali Linux website. And every time I run into the time desynchronization issue ๐
After much experimentation, I found a working solution that I now use on a regular basis.
๐ Example of setting the correct Moscow time on a Kali Linux VM:
๐ Useful links:
- Where to download VMware Workstation Pro
- Ready-made Kali Linux virtual machines
#linux #kali #vmware #setup
โ
KGM's notes | KGM's notes (EN)
I love working with VMware Workstation Pro and periodically download new virtual machine builds from the official Kali Linux website. And every time I run into the time desynchronization issue ๐
After much experimentation, I found a working solution that I now use on a regular basis.
๐ Example of setting the correct Moscow time on a Kali Linux VM:
# Update package list
sudo apt update
# Install systemd-timesyncd for NTP synchronization
sudo apt install systemd-timesyncd -y
# Set timezone (Moscow, UTC+3)
sudo timedatectl set-timezone Europe/Moscow
# Enable automatic time synchronization
sudo timedatectl set-ntp true
# Restart the synchronization service
sudo systemctl restart systemd-timesyncd
# Check the result. Make sure the time on your system is set correctly
timedatectl
# Reboot to apply all changes
reboot
๐ Useful links:
- Where to download VMware Workstation Pro
- Ready-made Kali Linux virtual machines
#linux #kali #vmware #setup
โ
KGM's notes | KGM's notes (EN)
โค1๐1๐ค1
๐ Installing the Latest Version of Go on Ubuntu/Debian/Kali Linux (Part 1/2)
If you need to install the latest version of
โ ๏ธ If you're using
โ Expected result:
๐ Updating
๐ก
๐ Useful links:
- Official Go website
- ProjectDiscovery
- pdtm
#linux #go #setup
โ
KGM's notes | KGM's notes (EN)
If you need to install the latest version of
Go, configure the PATH variable for utilities installed via go install, as well as ProjectDiscovery tools (via pdtm), run the following commands:# Update package list
sudo apt update
# Install the jq utility
sudo apt install jq -y
# Get the latest stable Go version from the official JSON API
LATEST_VERSION=$(curl -s https://go.dev/dl/?mode=json | jq -r '.[0].version')
# Generate the archive filename (e.g., go1.25.4.linux-amd64.tar.gz)
FILENAME="${LATEST_VERSION}.linux-amd64.tar.gz"
# Download the latest version
wget "https://go.dev/dl/${FILENAME}" -O "/tmp/${FILENAME}"
# Remove the old installation and extract the new one
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "/tmp/${FILENAME}"
# Add Go paths to the PATH variable
echo 'export PATH=/usr/local/go/bin:~/go/bin:~/.pdtm/go/bin:$PATH' >> ~/.profile
# Apply changes to the current session
source ~/.profile
# Verify the installed version
echo "Go updated to version: $LATEST_VERSION"
go version
โ ๏ธ If you're using
Kali Linux (which uses zsh by default at the time of writing), additionally run the following commands:echo 'export PATH=/usr/local/go/bin:~/go/bin:~/.pdtm/go/bin:$PATH' >> ~/.zprofile
source ~/.zprofile
go version
โ Expected result:
Go updated to version: go1.25.4
go version go1.25.4 linux/amd64
๐ Updating
Go to the latest version:LATEST_VERSION=$(curl -s https://go.dev/dl/?mode=json | jq -r '.[0].version')
FILENAME="${LATEST_VERSION}.linux-amd64.tar.gz"
wget "https://go.dev/dl/${FILENAME}" -O "/tmp/${FILENAME}"
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "/tmp/${FILENAME}"
echo "Go updated to version: $LATEST_VERSION"
go version
๐ก
PATH is already configured during the initial installation, no need to add it again.๐ Useful links:
- Official Go website
- ProjectDiscovery
- pdtm
#linux #go #setup
โ
KGM's notes | KGM's notes (EN)
๐ Downgrading Go to a Specific Version on Ubuntu/Debian/Kali Linux (Part 2/2)
If you've already installed the latest version of
โ Expected output:
#linux #go #setup
โ
KGM's notes | KGM's notes (EN)
If you've already installed the latest version of
Go (as described in the previous note) and want to roll back to a specific older version, simply run the following commands:# Specify the version number here, e.g. go1.23.2.linux-amd64.tar.gz
FILENAME="go1.23.2.linux-amd64.tar.gz"
# Download the desired version
wget "https://go.dev/dl/${FILENAME}" -O "/tmp/${FILENAME}"
# Remove the previous installation and extract the new one
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf "/tmp/${FILENAME}"
# Verify the installed version
go version
โ Expected output:
go version go1.23.2 linux/amd64
#linux #go #setup
โ
KGM's notes | KGM's notes (EN)
Telegram
KGM's notes (EN)
Original InfoSec content.
Sharing what I wish I had when I started.
Contact: @Russian_OSlNT
Sharing what I wish I had when I started.
Contact: @Russian_OSlNT
๐ PDTM - Tool Manager by ProjectDiscovery
After setting up the correct system time and the latest version of Go, I always install
I highly recommend it to everyone involved in web and mobile application security testing.
๐ฅ Installing pdtm:
1. Via Go (recommended):
๐ก If Go is not installed โ see the note "Installing the Latest Version of Go on Ubuntu/Debian/Kali Linux", which also covers
2. Pre-built binaries:
Available in the Releases section: https://github.com/projectdiscovery/pdtm/releases
๐ Using
Install all
๐ก It's best to install all tools at once when possible. Before installing all tools, it's recommended to install the dependencies required for some tools to work correctly:
Install specific tools:
๐ Updating:
Update all installed tools:
Update specific tools:
Update pdtm itself:
๐ Removal:
Remove a specific tool:
Remove multiple tools:
Remove all tools:
๐ Useful links:
- GitHub repository
- Official documentation
- Additional guide on getting started with pdtm
#linux #tools #projectdiscovery #pdtm
โ
KGM's notes | KGM's notes (EN)
After setting up the correct system time and the latest version of Go, I always install
pdtm with all available tools from ProjectDiscovery.I highly recommend it to everyone involved in web and mobile application security testing.
PDTM (ProjectDiscovery Tool Manager) simplifies the installation, updating, and removal of tools such as nuclei, httpx, subfinder, naabu, dnsx, katana, and many others.๐ฅ Installing pdtm:
1. Via Go (recommended):
go install -v github.com/projectdiscovery/pdtm/cmd/pdtm@latest
๐ก If Go is not installed โ see the note "Installing the Latest Version of Go on Ubuntu/Debian/Kali Linux", which also covers
PATH configuration for ProjectDiscovery tools to work properly.2. Pre-built binaries:
Available in the Releases section: https://github.com/projectdiscovery/pdtm/releases
๐ Using
pdtm:Install all
ProjectDiscovery tools:pdtm -ia
# or
pdtm -install-all
๐ก It's best to install all tools at once when possible. Before installing all tools, it's recommended to install the dependencies required for some tools to work correctly:
# Dependencies for naabu and shuffledns respectively
sudo apt install -y libpcap-dev massdns
Install specific tools:
pdtm -i nuclei
# or multiple at once
pdtm -i nuclei,httpx,subfinder
๐ Updating:
Update all installed tools:
pdtm -ua
# or
pdtm -update-all
Update specific tools:
pdtm -u nuclei,httpx
Update pdtm itself:
pdtm -up
# or
pdtm -self-update
๐ Removal:
Remove a specific tool:
pdtm -r nuclei
Remove multiple tools:
pdtm -r nuclei,httpx,subfinder
Remove all tools:
pdtm -ra
# or
pdtm -remove-all
๐ Useful links:
- GitHub repository
- Official documentation
- Additional guide on getting started with pdtm
#linux #tools #projectdiscovery #pdtm
โ
KGM's notes | KGM's notes (EN)
GitHub
Releases ยท projectdiscovery/pdtm
ProjectDiscovery's Open Source Tool Manager. Contribute to projectdiscovery/pdtm development by creating an account on GitHub.
๐ฅ Running processes that survive terminal closure
Quite often you need to run processes that can take hours or even days (for example, port or web application scans)! Do you really have to keep the terminal open the entire time?!
Popular options for running background processes -
Personally, I use the
๐ฅ Installation:
๐ Basic commands:
โจ๏ธ Hotkeys inside a screen session:
๐ Viewing output history:
If the process running in screen produced a lot of output, you won't be able to scroll through it without entering a special mode (scroll mode):
Arrow keys
๐ Typical usage scenario:
๐ก Naming sessions with
๐ Terminating a session:
If you want to completely close the virtual terminal:
๐ก As an alternative to screen, you can explore tmux on your own.
๐ Useful links:
- Official screen documentation
- Official tmux documentation
#linux #tools #screen #terminal
โ
KGM's notes | KGM's notes (EN)
Quite often you need to run processes that can take hours or even days (for example, port or web application scans)! Do you really have to keep the terminal open the entire time?!
Popular options for running background processes -
& and nohup - have limitations: the first won't survive terminal closure, the second doesn't allow you to return to the process and see output in real-time.Personally, I use the
screen utility, which doesn't have these drawbacks.๐ฅ Installation:
# Debian/Ubuntu/Kali
sudo apt install screen
๐ Basic commands:
screen -S session_name # create a named session
screen -ls # list all sessions
screen -r session_name # attach to a session
screen -d -r session # force detach other connections and attach
โจ๏ธ Hotkeys inside a screen session:
Ctrl+A, D - detach, the process will keep running๐ Viewing output history:
If the process running in screen produced a lot of output, you won't be able to scroll through it without entering a special mode (scroll mode):
Ctrl+A, Esc - enter scroll modeArrow keys
โ/โ or PgUp/PgDown - scroll through historyEsc - exit scroll mode๐ Typical usage scenario:
# === Start a network scan ===
screen -S nmap-scan
nmap -sV -sC -p- 192.168.1.0/24 -oA scan_results
# Ctrl+A, D โ detach
# === Start a backup ===
screen -S backup
./long_backup_script.sh
# Ctrl+A, D โ detach
# === Close the laptop if working remotely, or just close the terminal, go grab some coffee ===
# === Come back, check what's happening ===
screen -ls
# There are screens on:
# 12345.nmap-scan (Detached)
# 12346.backup (Detached)
# Check scan progress
screen -r nmap-scan
# Ctrl+A, Esc โ scroll through output, look for discovered ports
# Ctrl+A, D โ detach
# Check backup status
screen -r backup
# See file copy progress
# If session is marked as Attached (forgot to detach from another terminal)
screen -d -r backup # force detach and attach here
๐ก Naming sessions with
-S is a good habit. Without names you'll have to navigate by numeric IDs, which is inconvenient with multiple parallel tasks.๐ Terminating a session:
If you want to completely close the virtual terminal:
# From inside the session โ just exit the shell
exit
# or Ctrl+D
# Or force kill the window
# Ctrl+A, K โ confirm with 'y'
# From outside โ kill session by name
screen -X -S session_name quit
๐ก As an alternative to screen, you can explore tmux on your own.
๐ Useful links:
- Official screen documentation
- Official tmux documentation
#linux #tools #screen #terminal
โ
KGM's notes | KGM's notes (EN)
www.gnu.org
- GNU Project - Free Software Foundation
Skip to main text