来Track安全社区投稿~
千元稿费!还有保底奖励~(https://bbs.zkaq.cn)
介绍
要求
开始
EC2实例/VPS
DNS 记录
interact.domain.tld
— interact.sh 服务器本身,因此 payloads 会类似于 “.interact.domain.tld”ns1.interact.domain.tld
— 用作 DNS 服务器的子域名interactapp.domain.tld
(可选)— 用于设置 interact.sh 网页客户端的子域名ns1.interact
指向 Elastic IPinteract
指向 ns1.interact.domain.tld
interactapp
指向将托管网页应用程序的 Elastic IP设置服务器
sudo apt install golang
go install -v github.com/projectdiscovery/interactsh/cmd/interactsh-server@latest
nano /etc/systemd/system/interactsh.service
Description=InteractSh
After=network.target
[Service]
ExecStart=/home/ubuntu/go/bin/interactsh-server -domain interact.domain.tld -t TOKEN -cidl 5 -cidn 6
Restart=always
User=root
Group=root
Environment=PATH=/usr/bin:/bin:/usr/local/bin
WorkingDirectory=/home/ubuntu/go/bin
[Install]
WantedBy=multi-user.target
ExecStart
中添加额外的参数。例如,我使用 -cidl
和 -cidn
来缩短 payloads。/home/ubuntu/.config/interactsh-server/config.yaml
。-config <path>
参数即可。sudo systemctl enable interactsh
sudo systemctl start interactsh
设置 Web 应用程序(可选)
网络应用程序设置
git clone https://github.com/projectdiscovery/interactsh-web.git
cd interactsh-web
sudo docker build -m=1400m -t interactshwebserv .
<http://YOUR_IP:3000>
并立即使用它:sudo docker run -e REACT_APP_HOST=interact.domain.tld
-e REACT_APP_CIDL=5 -e REACT_APP_CIDN=6
-e REACT_APP_TOKEN=<YOUR_TOKEN> -m=1400m
-it -p 0.0.0.0:3000:3000 interactshwebserv
0.0.0.0
或在防火墙中过滤 3000 端口。Nginx 反向代理
#Install apache-utils
sudo apt-get install apache2-utils
# Create a user
htpasswd -c .htpasswd admin
#Install certbot
sudo apt install certbot python3-certbot-nginx
#Get an HTTPS certificate for interactapp subdomain:
sudo certbot certonly -d interactapp.domain.tld
>Spin up a temporary webserver (standalone)
#Copy the certificates
sudo cp /etc/letsencrypt/live/interactapp.doman.tld/fullchain.pem .
sudo cp /etc/letsencrypt/live/interactapp.doman.tld/privkey.pem .
sudo docker run - name nginx-basic-auth-proxy
-v $(pwd)/.htpasswd:/etc/nginx/.htpasswd:ro
-v $(pwd)/fullchain.pem:/etc/nginx/ssl/fullchain.pem:ro
-v $(pwd)/privkey.pem:/etc/nginx/ssl/privkey.pem:ro
-p 8443:443 -d nginx
sudo docker exec -it nginx-basic-auth-proxy bash
nano /etc/nginx/conf.d/default.conf
YOUR_WEB_APP_CONTAINER_IP
替换为运行网页应用程序的容器/主机地址。0.0.0.0
上暴露的。否则,使用在前一步中创建的 interactsh-web 容器的 IP。nano /etc/nginx/conf.d/default.conf
server {
listen 443 ssl;
ssl_certificate /etc/nginx/ssl/fullchain.pem;
ssl_certificate_key /etc/nginx/ssl/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
location / {
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
proxy_pass http://<YOUR_WEB_APP_CONTAINER_IP>:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
sudo docker exec -it nginx-basic-auth-proxy nginx -s reload
使用
References
[1]
公共托管的 Web 客户端: https://app.interactsh.com/#/声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。
原文始发于微信公众号(白帽子左一):安全工具 | 搭建带有 Web 仪表板的Interact.sh
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论