Weeman配置参数完全指南:url、action_url、user_agent等6大选项深度拆解
2026/8/24 17:37:54 网站建设 项目流程

Weeman配置参数完全指南:url、action_url、user_agent等6大选项深度拆解

【免费下载链接】weemanHTTP server for phishing in python项目地址: https://gitcode.com/gh_mirrors/we/weeman

Weeman 是一款用 Python 编写的经典 HTTP 钓鱼服务器工具(phishing server),它通过克隆网页并拦截表单提交来完成抓包分析。本文是 Weeman 配置参数的完整指南,带你逐一拆解 url、action_url、port、user_agent、html_file、external_js 这 6 大核心选项,并附上 profile 配置文件的使用技巧,帮助你快速上手 Weeman 的配置体系。

⚠️合规提醒:Weeman 属于安全测试类工具,请务必仅在自己拥有权限的环境(如本地测试站)中学习和演练,任何针对第三方网站的使用都是违法的。

图:Weeman 的交互式 Shell 与内置 framework 模块一览

一、Weeman 是什么?先搞懂工作原理

在拆解配置前,用 30 秒理解 Weeman 的运行逻辑,配置参数就不难记了:

  1. 抓取网页:根据url下载目标页面的 HTML;
  2. 改写表单:把页面中所有<form>的提交动作改为指向本地的redirect.html(见 core/httpd.py);
  3. 本地代理:在port端口启动 HTTP 服务器,用户访问的其实是你的本地副本;
  4. 捕获提交:用户提交表单时,字段以key => value形式打印到终端并写入以域名命名的日志文件(见 core/httpd.py);
  5. 回传原站:通过action_url生成一个隐藏表单并自动提交,把数据转发到原始表单地址,制造"提交成功"的假象(见 core/httpd.py)。

理解了这个闭环,就能明白每个配置参数分别控制哪一步。

二、6 大配置选项逐个拆解

以下 6 个变量定义在 core/config.py 中,可在 Shell 里用set <选项> <值>修改,用show查看当前值(实现见 core/shell.py)。

1️⃣ url —— 要克隆的源网页地址

  • 作用:Weeman 启动run时,会以该 URL 抓取 HTML 并生成本地index.html
  • 要求:必须带https://http://前缀。
  • 默认值:为空(None),即不设置就不允许启动,run会提示Error: please set "url".(见 core/shell.py)。
  • 记忆口诀url 决定"克隆谁"

2️⃣ action_url —— 表单数据的回传地址

  • 作用:用户提交表单后,Weeman 会生成redirect.html,把捕获的字段作为隐藏域 POST 到这个地址,从而让受害者以为登录成功。
  • 与 url 的关系:多数场景下两者相同(即原始表单的真实 action 地址);如果你想"只抓不发",可以将其指向自己的测试服务器。
  • 记忆口诀action_url 决定"数据送到哪"

3️⃣ port —— 本地监听端口

  • 作用:Weeman 本地 HTTP 服务器的监听端口,默认8080(见 core/config.py)。
  • 权限提示:若设置为 80,必须以 root 身份运行,否则会提示Permission denied, to bind port 80, you need to run weeman as root.(见 core/shell.py)。
  • 新手建议:日常练习保持 8080 即可,访问地址即http://localhost:8080

4️⃣ user_agent —— 请求时伪装的浏览器指纹

  • 作用:Weeman 向源站抓取页面时携带的 User-Agent 头(见 core/httpd.py)。
  • 默认值:Chrome on Linux 的桌面 UA(见 core/config.py)。
  • 实战技巧:若目标站有移动端页面,可改成手机 UA。项目自带了现成示例——桌面版 profiles/localhost.profile 和移动版 profiles/mobile_localhost.profile,两者唯一的区别就是 user_agent 一行。
  • 注意:Shell 里set user_agent后可以直接跟带空格的 UA 字符串,Shell 会自动拼接(见 core/shell.py)。

5️⃣ html_file —— 用本地 HTML 替代远程抓取

  • 作用:设置后 Weeman不再请求 url,直接读取本地 HTML 文件作为克隆源(见 core/httpd.py)。
  • 典型场景:离线分析、页面结构调试,或对无网络的测试页面做演练。
  • 细节:该选项不会写入 history.log,属于"一次性"配置(见 core/shell.py)。
  • 记忆口诀html_file 决定"不抓远端,用本地文件"

6️⃣ external_js —— 向页面注入外部脚本

  • 作用:Weeman 会把<script src="...">插入到 HTML 头部最前面(见 core/httpd.py),用于加载自定义脚本。
  • 典型场景:附加调试脚本、统计脚本等。
  • 默认值:为空,不注入任何脚本。

三、快速配置方法:set / show / run 三步走

进入 Weeman 后(python weeman.py,入口见 weeman.py),标准流程只有三步:

步骤命令示例说明
① 设置set url http://localhost:8000逐项设置 6 大参数
② 查看show确认全部参数无误
③ 启动run(别名r启动本地服务器

其他常用命令:help <选项名>查看单个参数释义(见 core/misc.py)、clear清屏、quit退出。

💡小贴士set urlset action_urlset portset user_agentset external_js都会自动追加写入history.log;下次启动 Weeman 时会自动读回这些值(见 core/config.py)——这就是"会话恢复"功能,改过的参数不用反复输入。

四、profile 配置文件:一键加载整套参数

每次手动set太麻烦?Weeman 1.7 引入了profile 机制(见 ChangeLog),用一个纯文本文件打包全部参数:

# Website URL url = https://localhost # <from action> action_url = https://localhost # The port weeman will listen port = 80 # HTTP User-Agent user_agent = "Mozilla/5.0 (X11; Linux x86_64) ..." # HTML file to load instead of URL # html_file = "file.html"
  • 参数格式为键 = 值#开头的行为注释,解析逻辑见 core/shell.py。
  • 项目自带两个开箱即用的示例:
    • profiles/localhost.profile —— 桌面端本地演练配置;
    • profiles/mobile_localhost.profile —— 移动端 UA 的变体配置。
  • 使用方式:命令行加-p指定 profile,Weeman 将跳过交互式 Shell,直接读取参数并启动服务器(见 weeman.py):
python weeman.py -p profiles/localhost.profile
  • 还有一个-q(quiet)参数,可以隐藏启动 Banner(见 weeman.py)。

五、常见报错与排查清单

报错信息原因解决办法
Error: please set "url".未设置 url 就执行 runset url http://...
Error: please set "action_url".未设置 action_urlset action_url http://...
Permission denied, to bind port 80...非 root 绑定 80 端口改用 8080 或提升权限
your profile file looks bad.profile 中缺少必要字段或格式错误对照 profiles/localhost.profile 检查键 = 值格式
Weeman has no support for Python 3.使用了 Python 3换用 Python 2.7(见 weeman.py)

另外注意:Weeman 目前不支持 Windows 平台,推荐在 Linux / Mac 下运行(见 weeman.py)。

六、总结:一张表记住 6 大选项

选项管什么默认值是否写入 history.log
url克隆哪个网页
action_url表单数据回传到哪
port本地监听端口8080
user_agent抓页面时的浏览器指纹Chrome 桌面 UA
html_file用本地文件代替抓取
external_js向页面头部注入脚本

一句话总结:url 管"克隆谁",action_url 管"数据去哪",port 管"在哪听",user_agent 管"装什么浏览器",html_file 管"用不用本地文件",external_js 管"注入什么脚本"。配合 profile 文件一键加载,Weeman 的配置体系就全部掌握了。

⚠️ 再次强调:请将本文内容仅用于自有环境的合法安全测试与学习。在未取得授权的情况下对他人网站使用 Weeman,将构成违法犯罪行为。

【免费下载链接】weemanHTTP server for phishing in python项目地址: https://gitcode.com/gh_mirrors/we/weeman

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询