HellPot เป็น honeypot ที่ไม่มีที่สิ้นสุดซึ่งมีพื้นฐานมาจาก Heffalump ที่ส่งบอท HTTP ที่เกเรไปยังนรก
โดยเฉพาะอย่างยิ่งมันใช้ไฟล์การกำหนดค่า toml มีการบันทึก JSON และมาพร้อมกับประสิทธิภาพที่เพิ่มขึ้นอย่างมาก
ลูกค้า (หวังว่าบอท) ที่ไม่คำนึงถึง robots.txt
และเชื่อมต่อกับอินสแตนซ์ HellPot ของคุณจะ ได้รับผลกระทบชั่วนิรันดร์
HellPot จะส่งข้อมูลที่ไม่มีที่สิ้นสุดซึ่ง ใกล้พอ ที่จะเป็นเว็บไซต์จริงที่พวกเขาอาจจะติดอยู่จนกว่าวิญญาณของพวกเขาจะขาดออกจากกันและหยุดอยู่
ภายใต้ฝากระโปรงของความทุกข์ทรมานชั่วนิรันดร์นี้เป็นเครื่องมือมาร์คอฟที่รวบรวมชิ้นส่วนของ The Birth of Tragedy (Hellenism และ Pessimism) โดย Friedrich Nietzsche ไปที่ลูกค้าโดยใช้ fasthttp
HellPot น่าจะสร้างด้วย Go เวอร์ชัน 1.17 ขึ้นไป
HellPot ใช้โมดูล go สิ่งนี้น่าจะทำให้การสร้างด้วยการติดตั้ง stock Go เป็นเรื่องง่าย เพื่อให้ง่ายยิ่งขึ้น เราได้เพิ่ม GNU Makefile
1) git clone https://github.com/yunginnanet/HellPot
2 ) cd HellPot
4 ) make
5 ) พิจารณาถึงผลร้ายแรงที่อาจเกิดขึ้นจากการกระทำของคุณ
ในกรณีที่ไฟล์การกำหนดค่าหายไป HellPot จะพยายามวางการกำหนดค่าเริ่มต้นไว้ใน $HOME/.config/HellPot/config.toml สิ่งนี้จะทำให้ดวงวิญญาณที่ขาดความรับผิดชอบสามารถเริ่มโปรยไฟนรกได้อย่างง่ายดาย ในทันที :
1 ) ดาวน์โหลดรุ่นที่คอมไพล์แล้ว
2 ) เรียกใช้ไบนารี่และเริ่มส่งลูกค้าโดยตรงไปยังนรกทันที
1) กำหนดค่าเว็บเซิร์ฟเวอร์เป็นพร็อกซีย้อนกลับ (ดูด้านล่าง)
2 ) ./HellPot --genconfig
3 ) แก้ไข config.toml
ที่สร้างขึ้นใหม่ของคุณตามต้องการ
4 ) ไตร่ตรองของคุณ การดำรงอยู่ ความสามารถของเซิร์ฟเวอร์ในการจัดการค่าประสิทธิภาพที่คุณเลือก
5 ) ./HellPot -c config.toml
666 ) ?͘͝?̓̓͛?͑́̄ ?͆͠͝?͑̾͌?̽͌͆ ?̓̔̔?͒͐͝ ?
เคล็ดลับ
ค่าคอนฟิกูเรชันสามารถแทนที่ได้ด้วยตัวแปรสภาพแวดล้อมที่นำหน้าด้วย HELLPOT_
เมื่อใช้วิธีนี้ ให้แทนที่ขีดล่างในคีย์การกำหนดค่าด้วยขีดล่างสองตัว
เช่น เพื่อตั้งค่า http.bind_addr
ผ่าน env ให้ตั้งค่า 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 ;
}
URL ที่ไม่มีอยู่ทั้งหมดกำลังกลับพร็อกซีไปยังอินสแตนซ์ HellPot บน localhost ซึ่งตั้งค่าเป็น catchall การรับส่งข้อมูลที่ให้บริการโดย HellPot มีอัตราจำกัดอยู่ที่ 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 >