HellPot adalah honeypot tanpa akhir berdasarkan Heffalump yang mengirim bot HTTP nakal ke neraka.
Khususnya ia mengimplementasikan file konfigurasi toml, memiliki logging JSON, dan memberikan peningkatan kinerja yang signifikan.
Klien (semoga bot) yang mengabaikan robots.txt
dan terhubung ke instance HellPot Anda akan menanggung konsekuensi abadi .
HellPot akan mengirimkan aliran data tak terbatas yang cukup mirip dengan situs web nyata sehingga mereka mungkin akan bertahan sampai jiwa mereka terkoyak dan mereka tidak ada lagi.
Di balik penderitaan abadi ini terdapat mesin markov yang membuang potongan-potongan The Birth of Tragedy (Hellenism and Pessimism) karya Friedrich Nietzsche ke klien menggunakan fasthttp.
HellPot mungkin dibuat dengan Go versi 1.17 atau lebih tinggi.
HellPot menggunakan modul go. Ini akan membuatnya sangat mudah untuk dibangun dengan instalasi stok Go. Untuk membuatnya lebih sederhana, kami telah menambahkan GNU Makefile.
1) git clone https://github.com/yunginnanet/HellPot
2) cd HellPot
4) make
5) Pertimbangkan potensi konsekuensi buruk dari tindakan Anda.
Jika ada file konfigurasi yang hilang, HellPot akan mencoba menempatkan konfigurasi defaultnya di $HOME/.config/HellPot/config.toml . Hal ini memungkinkan jiwa-jiwa yang tidak bertanggung jawab untuk mulai menghujani api neraka dengan mudah, segera :
1) Unduh rilis yang dikompilasi
2) Jalankan biner dan segera mulai mengirim klien langsung ke neraka.
1) Konfigurasikan server web sebagai proxy terbalik (lihat di bawah)
2 ) ./HellPot --genconfig
3) Edit config.toml
yang baru Anda buat sesuai keinginan.
4) Renungkan milik Anda adanya kemampuan server untuk menangani nilai kinerja yang Anda pilih.
5 ) ./HellPot -c config.toml
666 ) ?͘͝?̓̓͛?͑̈́̀ ?͆͠͝?͑̾͌?̽͌͆ ?̓̔̔?͒͐͝ ?͑̈́̚?͛͒?͑͆̽?̾̚̚?͋̒̒?̾͛͝?͒̒̀.́̔͝
Tip
Nilai konfigurasi dapat diganti dengan variabel lingkungan yang diawali dengan HELLPOT_
. Saat menggunakan metode ini, ganti garis bawah pada kunci konfigurasi dengan dua garis bawah.
misal: untuk menyetel http.bind_addr
melalui env, setel HELLPOT_HTTP_BIND__ADDR="xxxx"
[ deception ]
# Used as "Server" HTTP header. Note that reverse proxies may hide this.
server_name = " nginx "
[ http ]
# TCP Listener (default)
bind_addr = " 127.0.0.1 "
bind_port = " 8080 "
# header name containing clients real IP, for reverse proxy deployments
real_ip_header = ' X-Real-IP '
# this contains a list of blacklisted useragent strings. (case sensitive)
# clients with useragents containing any of these strings will receive "Not found" for any requests.
uagent_string_blacklist = [ " Cloudflare-Traffic-Manager " , " curl " ]
# Unix Socket Listener (will override default)
unix_socket_path = " /var/run/hellpot "
unix_socket_permissions = " 0666 "
use_unix_socket = false
[ http . router ]
# Toggling this to true will cause all GET requests to match. Forces makerobots = false.
catchall = false
# Toggling this to false will prevent creation of robots.txt handler.
makerobots = true
# Handlers will be created for these paths, as well as robots.txt entries. Only valid if catchall = false.
paths = [ " wp-login.php " , " wp-login " ]
[ logger ]
# verbose (-v)
debug = true
# extra verbose (-vv)
trace = false
# JSON log files will be stored in the below directory.
directory = " /home/kayos/.local/share/HellPot/logs/ "
# disable all color in console output. when using Windows this will default to true.
nocolor = false
# toggles the use of the current date as the names for new log files.
use_date_filename = true
[ performance ]
# max_workers is only valid if restrict_concurrency is true
max_workers = 256
restrict_concurrency = false
location '/robots.txt' {
proxy_set_header Host $host ;
proxy_set_header X-Real-IP $remote_addr ;
proxy_pass http://127.0.0.1:8080 $request_uri ;
}
location '/wp-login.php' {
proxy_set_header Host $host ;
proxy_set_header X-Real-IP $remote_addr ;
proxy_pass http://127.0.0.1:8080 $request_uri ;
}
Semua URL yang tidak ada sedang diproksi terbalik ke instance HellPot di localhost, yang disetel ke catchall. Lalu lintas yang dilayani oleh HellPot dibatasi hingga 5 KiB/s.
< VirtualHost yourserver>
ErrorDocument 400 " /content/400 "
ErrorDocument 403 " /content/403 "
ErrorDocument 404 " /content/404 "
ErrorDocument 500 " /content/405 "
< Directory "$wwwroot/.well-known/">
ErrorDocument 400 default
ErrorDocument 403 default
ErrorDocument 404 default
ErrorDocument 500 default
</ Directory >
/* HTTP Honeypot / HellPot (need mod_proxy, mod_proxy_http) */
ProxyPreserveHost on
ProxyPass " /content/ " " http://localhost:8080/ "
ProxyPassReverse " /content/ " " http://localhost:8080/ "
/* Rate Limit config, need mod_ratelimit */
< Location "/content/">
SetOutputFilter RATE_LIMIT
SetEnv rate-limit 5
</ Location >
/* Remaining config */
</ VirtualHost >