pip install hek
import hek
# get device current username
user = hek.system.username()
# print username
print(user)
import hek
os_name = hek.system.oname()
print(os_name)
from hek import system
# new file path
path = "dog.jpg"
# file url
url = "https://example/dog_picure.jpg"
# download content
result = system.download_content(url=url, path=path)
# print result
print(result)
You could change the name argument to process pid like (pid="1234"), also you could disable kill with force using force=False.
import hek
# process name
name = "chrome.exe"
# kill process
res = hek.system.process.kill_process(name=name)
print(res)
from hek import system
# targeted process name\user
name = "chrome.exe"
# will return process PID\ID
name = system.process.getnamebypid(name=pid)
# print process PID\ID
print(name)
from hek import system
# targeted process PID\id
pid = "2779"
# will return process name
name = system.process.getnamebypid(pid=pid)
# print process name
print(name)
With this way you can do all kinds of requests like post/get/options, before using the function you need to setup and run tor bundle you could download it from tor official site
import hek
# request tor session
tor_session = hek.tor.get_session()
# tor get request
result = tor_session.get("http://httpbin.org/ip").text
# print result
print(result)
You may add your host/proxy manually using this way, Identity is your proxy location contain some other info.
import hek
# adding host manually
host = "127.0.0.1:9050"
# request session
session = hek.tor.get_session(host=host)
# request your proxy identity..
identity = session.identity(host=host)
# print proxy identity
print(identity)
import hek
result = hek.proxy.checkproxy( # function to check if proxy is working
url="https://github.com/", # targeted url
user_agent="Mozilla/5.0", # user agent
proxy="185.61.94.65:61616" # HTTP/HTTPS proxy
)
if "Working" in result: # It'll return Working if It's alive end exception if not
print("Alive proxy")
It'll return Working if It's alive end exception if not
import hek
url = "github.com" # targeted url
ip = hek.ipstuff.siteip(url) # grap ip by url
print(ip)
import hek
ip = "192.168.0.1" # targeted device ip address
port = 80 # targeted port
result = hek.ipstuff.portscan(ip=ip, port=port, timeout=3) # checking if opened port or not
if result == True:
print("Opened port.")
elif result == False:
print("Closed port.")
import hek
ip = "192.168.0.1" # targeted device ip address
result = hek.ipstuff.checkssh(ip) # checking if device is shh by the device ip
if result == True:
print("is ssh")
elif result == False:
print("isn't ssh")
import hek
ip = "192.168.0.1" # targeted device ip address
result = hek.ipstuff.checkrdp(ip) # checking if device is rdp by the device ip.
if result == True:
print("is rdp")
elif result == False:
print("isn't rdp")
import hek
ip = "192.168.0.1" # targeted ip address
result = hek.ipstuff.checkip(ip) # checking if ip exist, It'll return True is exist and False if not.
if result == True:
print("ip exist")
elif result == False:
print("ip doesn't exist")
It'll return True is exist and False if not.
import hek
# get ip
ip = hek.ipstuff.myip(find="query")
# print ip
print(ip)
you could get your ip information by removing find="query" also you can change query and get other info about your ip.
import hek
# server ip
ip = "192.168.0.1"
# targeted port
port = 80
# check
result = hek.server.portscan(ip=ip, port=port)
print(result)
import hek
# server ip
ip = "192.168.0.1"
# targeted port
port = 430
# check
result = hek.server.get_banner(address=ip, port=port)
print(result)
server.set_socket is a static way like a session that you only need to add the server info once to start sending and receiving data, unlike server.socket which is not static at all.
import hek
# server ip
ip = "192.168.0.1"
# server port
port = 80
# set server data
server = hek.server.set_socket(host=ip, port=port)
# connect to server
r = server.connect()
print(f"connected: {r}")
import hek
# server ip
ip = "192.168.0.1"
# server port
port = 80
# set server data
server = hek.server.set_socket(host=ip, port=port)
# connect to server
r = server.connect()
print(f"connected: {r}")
# the packet
packet = "hi im packet"
# send packet
result = server.sendpacket()
print(result)
data = server.recv(bufsize=1048)
print(data)
server.close()
server.socket unlike set_socket It's unstatic better to work with it while using multiple socket's and multithreading.
from hek import server
# get the server value
server = server.socket()
# create socket
sock = server.socket()
# connect to a server
result = server.connect(sock, host="192.168.0.1", port=80)
# connection result True if connected
print(result)
# the packet
packet = "im a packet"
# send packet
result = server.sendpacket(sock, packet=packet, host="192.168.0.1", port=80)
print(result)
# receive data
server.recv(sock, bufsize=1048)
# close connection
server.close(sock)
import hek, threading
# start sniffing network
def sniff():
hek.network.arp.start_arp(
# your interface mostly It'll be wlan0
interface="wlan0",
# ip of the router that the device is connected to
router="192.168.0.1",
# device ip address that you want to sniff
device="192.168.0.112"
)
# this function will run wireshark according to the entered data
def monitor_traffic():
hek.wireshark.monitor_device(
# your interface mostly It'll be wlan0
interface="wlan0",
# device ip address
device="192.168.0.112"
)
threading.Thread(target=monitor_traffic).start() # run wireshark
threading.Thread(target=sniff).start() # start sniffing
import hek
# start sniffing network
def sniff():
hek.network.arp.start_arp(
# your interface mostly It'll be wlan0
interface="wlan0",
# ip of the router that the device is connected to
router="192.168.0.1",
# device ip address that you want to sniff
device="192.168.0.112"
)
sniff()
This function is for linux also requires wifi adapter.
import hek
# connect to wifi
result = hek.wifi.connect(ssid="Wifi ssid/Name", # wifi ssid/name
password="wifi-password" # wifi password
)
# connection result
print(result)
This function for linux.
import hek
# Start monitor mode
result = hek.net.monitor_start(name="wlan0")
# Output
print(result)
This function for linux.
import hek
# stop monitor mode
result = hek.net.monitor_stop(name="wlan0mon")
# Output
print(result)
import hek
data = hek.Image.extracexif(filename="hek.jpg") # grab exif data
print(data) # print data
import hek
hek.screen.screenshot(filename="test.png")
import hek
hek.webcam.webcamshot(filename="test.png")
import hek
hek.screen.capture_video(filename="filename.avi", seconds=5)
import hek
hek.webcam.capture_video(filename="webname.avi", seconds=3)
This program uses MIT license.