Skip to content

Commit

Permalink
kali-whoami v1.0 release (end of beta release)
Browse files Browse the repository at this point in the history
  • Loading branch information
omer-dogan committed Jul 9, 2021
0 parents commit c51cc07
Show file tree
Hide file tree
Showing 18 changed files with 1,489 additions and 0 deletions.
674 changes: 674 additions & 0 deletions LICENSE

Large diffs are not rendered by default.

32 changes: 32 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
tool_name=kali-whoami

src_dir=/usr/share
trigger_dir=/usr/bin

install:

install -m 755 kali-whoami $(trigger_dir)
mkdir -p $(src_dir)/$(tool_name)/backups
cp -vr assets $(src_dir)/$(tool_name)
cp -vr $(src_dir)/$(tool_name)/assets/kali-whoami.desktop /usr/share/kali-menu/applications/
mv -v $(src_dir)/$(tool_name)/assets/kali-whoami.desktop /usr/share/applications/


uninstall:

rm -Rf $(trigger_dir)/$(tool_name)
rm -Rf $(src_dir)/$(tool_name)
rm -Rf $(src_dir)/kali-menu/applications/kali-whoami.desktop
rm -Rf $(src_dir)/applications/kali-whoami.desktop

reinstall:

rm -Rf $(trigger_dir)/$(tool_name)
rm -Rf $(src_dir)/$(tool_name)
rm -Rf $(src_dir)/kali-menu/applications/kali-whoami.desktop
rm -Rf $(src_dir)/applications/kali-whoami.desktop
install -m 755 kali-whoami $(trigger_dir)
mkdir -p $(src_dir)/$(tool_name)/backups
cp -vr assets $(src_dir)/$(tool_name)
cp -vr $(src_dir)/$(tool_name)/assets/kali-whoami.desktop /usr/share/kali-menu/applications/
mv -vr $(src_dir)/$(tool_name)/assets/kali-whoami.desktop /usr/share/applications/
106 changes: 106 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
<!-- PROJECT LOGO -->
![whoami-banner](https://user-images.githubusercontent.com/59175356/124522019-530f3480-ddfa-11eb-8e8b-a678b01b9254.PNG)

![](https://img.shields.io/github/v/release/omer-dogan/whoami?color=black&style=flat-square) ![](https://img.shields.io/github/last-commit/omer-dogan/whoami?color=black) ![](https://img.shields.io/github/languages/code-size/omer-dogan/whoami?color=black&style=flat-square)

<p align="center">
Quıck Menu
<br />
<a href="https://github.com/omer-dogan/kali-whoami#demo">View Demo</a>
·
<a href="https://github.com/omer-dogan/kali-whoami/issues">Report Bug</a>
·
<a href="https://github.com/omer-dogan/kali-whoami/issues">Request Feature</a>
</p>
</p>

<!-- TABLE OF CONTENTS -->
<details open="open">
<summary>Table of Contents</summary>
<ol>
<li>
<a href="#about-the-project">About The Project</a>
<ul>
<li><a href="#features">Features</a></li>
</ul>
</li>
<li>
<a href="#getting-started">Getting Started</a>
<ul>
<li><a href="#installation">Installation</a></li>
</ul>
</li>
<li><a href="#usage">Usage</a></li>
<li><a href="#license">License</a></li>

</ol>
</details>

<!-- ABOUT THE PROJECT -->
## About The Project

The purpose of the Whoami tool makes you as anonymous as possible on Kali linux. It is an user friendly with its ease of use and simple interface.
It follows two different paths to ensure the highest possible level of anonymity.

Finally, don't forget that there is never a hundred percent security on the internet!

<!-- FEATURES -->
## Features
* Anti mitm
* Log killer
* IP changer
* Dns changer
* Mac changer
* Anti cold boot
* Timezone changer
* Hostname changer
* Browser anonymization

<!-- GETTING STARTED -->
## Getting Started

If you do not update your system regularly or have not installed these packages on your system, you will not be able to use the tool.
So let's see what we need before installation and how we can download it.

* You can download all dependencies with the following command or check if they are up to date.

```sh
sudo apt update && sudo apt install tar tor curl python3 python3-scapy network-manager
```

### Installation

1. Clone the repo

```sh
git clone https://github.com/omer-dogan/kali-whoami
```
2. Install makefile

```sh
sudo make install
```
And that's it, now you're ready to fire up the tool!

<!-- USAGE EXAMPLES -->
## Usage
After completing setup, run the application by typing "Kali Whoami" in the search menu or by typing "sudo kali-whoami --help" in a terminal

```
[+] Usage : sudo kali-whoami [option]
--start : It will make backups and start the program.
--stop : Closes the program using a backup.
--status : Provides information about working status.
--fix : Used to repair the system in case of a possible bug.
--help : This shows the menu.
```

<!-- Demo -->
## Demo
![](https://user-images.githubusercontent.com/59175356/124754970-cc8d4c80-def8-11eb-8606-02c6cdd7f5a2.gif)

<!-- LICENSE -->
## License

Distributed under the GPL V3 License. See `LICENSE` for more information
Binary file added assets/icons/kali-whoami.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
9 changes: 9 additions & 0 deletions assets/kali-whoami.desktop
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
[Desktop Entry]
Name=Kali Whoami
Encoding=UTF-8
Exec=/usr/share/kali-menu/exec-in-shell "sudo kali-whoami --help"
Icon=/usr/share/kali-whoami/assets/icons/kali-whoami.png
StartupNotify=false
Terminal=true
Type=Application
X-Kali-Package=kali-whoami
14 changes: 14 additions & 0 deletions assets/scripts/anti_cold_boot
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/bash

start_anti_cold_boot(){

swapoff -a
swapon -a
echo 1024 >/proc/sys/vm/min_free_kbytes
echo 3 >/proc/sys/vm/drop_caches
echo 1 >/proc/sys/vm/oom_kill_allocating_task
echo 1 >/proc/sys/vm/overcommit_memory
echo 0 >/proc/sys/vm/oom_dump_tasks
info "Anti cold boot successfully enabled"

}
18 changes: 18 additions & 0 deletions assets/scripts/anti_mitm
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#!/usr/bin/env python

from scapy.all import Ether, ARP, srp, sniff, conf, os, subprocess
def get_mac(ip):
p = Ether(dst='ff:ff:ff:ff:ff:ff')/ARP(pdst=ip)
result = srp(p, timeout=3, verbose=False)[0]
return result[0][1].hwsrc
def process(packet):
if packet.haslayer(ARP):
if packet[ARP].op == 2:
try:
real_mac = get_mac(packet[ARP].psrc)
response_mac = packet[ARP].hwsrc
if real_mac != response_mac:
os.system("iptables -A INPUT -m mac --mac-source " + response_mac + " -j DROP")
except IndexError:
pass
sniff(store=False, prn=process)
29 changes: 29 additions & 0 deletions assets/scripts/browser_anonymization
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
#!/bin/bash

start_browser_anonymization(){

source /usr/share/kali-whoami/assets/sources/config

# check and configure browser anonymity settings
if [[ "$browser_anonymization_status" == "Disable" ]]; then
if [ -d /etc/firefox-esr ]; then
cp $SRCDIR/sources/whoami.js /etc/firefox-esr/
sed -i 's/browser_anonymization_status="Disable"/browser_anonymization_status="Enable"/g' $SRCDIR/sources/config
info "Browser anonymization successfully enabled"
else
warn "Browser anonymization only supports firefox and firefox not found on your system"
fi
else
warn "Browser anonymization is already running"
fi

}

stop_browser_anonymization(){

source /usr/share/kali-whoami/assets/sources/config
rm -fr /etc/firefox-esr/whoami.js
sed -i 's/browser_anonymization_status="Enable"/browser_anonymization_status="Disable"/g' $SRCDIR/sources/config
info "Browser anonymization successfully disabled"

}
39 changes: 39 additions & 0 deletions assets/scripts/dns_changer
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#!/bin/bash

start_dns_changer(){

source /usr/share/kali-whoami/assets/sources/config

if [[ "$ip_changer_status" == "Disable" ]]; then

#backup and configure nameservers
if [[ "$dns_changer_status" == "Disable" ]]; then

cat /etc/resolv.conf > $BACKUPDIR/resolv.conf.bak
cat >"/etc/resolv.conf" <<EOF
# generated by whoami
nameserver 84.200.69.80
nameserver 84.200.70.40
nameserver 91.239.100.100
nameserver 89.233.43.71
nameserver 208.67.222.222
nameserver 208.67.220.220
EOF
sed -i 's/dns_changer_status="Disable"/dns_changer_status="Enable"/g' $SRCDIR/sources/config
info "Dns changer successfully enabled"
else
warn "Dns changer is already running"
fi
else
warn "The Dns changer is not available. (Ip changer enabled)"
fi
}

stop_dns_changer(){

source /usr/share/kali-whoami/assets/sources/config
cat $BACKUPDIR/resolv.conf.bak > /etc/resolv.conf && rm -fr $BACKUPDIR/resolv.conf.bak
sed -i 's/dns_changer_status="Enable"/dns_changer_status="Disable"/g' $SRCDIR/sources/config
info "Dns changer successfully disabled"

}
37 changes: 37 additions & 0 deletions assets/scripts/fix
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#!/bin/bash

get_backups(){

cat /etc/resolv.conf > $BACKUPDIR/resolv.conf.bak
cat /etc/hostname > $BACKUPDIR/hostname.bak
cat $TORRC > $BACKUPDIR/torrc.bak
iptables-save > $BACKUPDIR/iptables.rules.bak
mkdir $BACKUPDIR/mac_addresses
IFACES=$(ip -o link show | awk -F': ' '{print $2}')
for IFACE in $IFACES; do
if [ $IFACE != "lo" ]; then
cat /sys/class/net/$IFACE/address > $BACKUPDIR/mac_addresses/$IFACE
fi
done
timedatectl show | grep Timezone | sed 's/Timezone=//g' > $BACKUPDIR/timezone.bak
cd $BACKUPDIR && tar -czf whoami_fix_backups.tar.gz *
rm -fr $BACKUPDIR/*.bak $BACKUPDIR/mac_addresses

}

restore_system(){

rm -fr $BACKUPDIR/*.bak $BACKUPDIR/mac_addresses && cd $BACKUPDIR && tar -xzf $BACKUPDIR/whoami_fix_backups.tar.gz
cat $BACKUPDIR/resolv.conf.bak > /etc/resolv.conf
cat $BACKUPDIR/hostname.bak > /etc/hostname
cat $BACKUPDIR/torrc.bak > /etc/tor/torrc
iptables-restore <$BACKUPDIR/iptables.rules.bak
for device in $(ls $BACKUPDIR/mac_addresses) ; do
ip link set $device down
ip link set $device address $(cat $BACKUPDIR/mac_addresses/$device)
ip link set $device up
done
restore_timezone=$(cat $BACKUPDIR/timezone.bak) && timedatectl set-timezone $restore_timezone
rm -fr $BACKUPDIR/*.bak $BACKUPDIR/mac_addresses

}
47 changes: 47 additions & 0 deletions assets/scripts/hostname_changer
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
#!/bin/bash

start_hostname_changer(){

if [[ "$hostname_changer_status" == "Disable" ]]; then

source /usr/share/kali-whoami/assets/sources/config
#backup hostname and change
cat /etc/hostname > $BACKUPDIR/hostname.bak

array[0]="Windows10-Enterprise "
array[1]="Windows10-Pro"
array[2]="Windows10-Enterprise-LTSC "
array[3]="Windows8.1O-EM"
array[4]="Windows8-Enterprise"
array[5]="Windows8.1-Pro"
array[6]="Windows7-Professional"
array[7]="Windows7-Enterprise"
array[8]="Windows7-Ultimate"
array[9]="Windows-Vista-Business"
array[10]="WindowsXP-Professional"
array[11]="macOS11"
array[12]="OSX10.11"
array[13]="MacBook-Air"
array[14]="MacBook"
array[15]="MacBook-Pro"

size=${#array[@]}
index=$(($RANDOM % $size))

echo "${array[$index]}" > /etc/hostname
sed -i 's/hostname_changer_status="Disable"/hostname_changer_status="Enable"/g' $SRCDIR/sources/config
info "Hostname changer successfully enabled"
else
warn "Hostname changer is already running"
fi

}

stop_hostname_changer(){

source /usr/share/kali-whoami/assets/sources/config
cat $BACKUPDIR/hostname.bak > /etc/hostname && rm -fr $BACKUPDIR/hostname.bak
sed -i 's/hostname_changer_status="Enable"/hostname_changer_status="Disable"/g' $SRCDIR/sources/config
info "Hostname changer successfully disabled"

}
Loading

0 comments on commit c51cc07

Please sign in to comment.