freeBuf
主站

分类

云安全 AI安全 开发安全 终端安全 数据安全 Web安全 基础安全 企业安全 关基安全 移动安全 系统安全 其他安全

特色

热点 工具 漏洞 人物志 活动 安全招聘 攻防演练 政策法规

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

基于JXWAF快速搭建钓鱼网站
FreeBuf_15352 2018-04-23 10:30:54 819498
所属地 广东省

一、前言

前段时间为了加强内部安全意识,需要进行钓鱼邮件演练,于是通过JXWAF快速搭建了一个钓鱼网站,发现效果不错,特此分享。

PS:本文仅用于技术讨论及分享,严禁用于非法用途

二、规则配置

首先假设攻击场景为获取公司内部OA账号,内部OA域名为oa.testing.com。那么第一步就是注册域名,比如去万网注册钓鱼域名oa.testlng.com,地址指向为钓鱼网站IP地址。

为了方便这里以DVWA来当成OA进行演示。

先来分析登陆成功和登陆失败的特征。

1.png

登陆失败。

2.png

登陆成功。

如图,登陆失败和登陆成功的区别在于response中Location的指向,失败指向为login.php,成功指向为index.php,那么我们就以此为特征来设置两条规则,一条识别登陆失败的账号,一条来识别登陆成功的账号,当然也可以不用这么精细,直接设置规则记录输入的账号密码。

分析结束,接下来是搭建JXWAF及配置规则,搭建可以参考 https://github.com/jx-sec/jxwaf,规则配置如下:

登陆JXWAF,在自定义规则组中新建规则组 "钓鱼专用规则"。

TIM图片20180418152711.png

先来设置第一条规则(不建议用这种方式),无论登陆成功失败直接记录输入账户密码,这是钓鱼网站通常的做法,因为他们没有用户数据库,也就只能这么处理了。规则配置如下,比较简单。

3.png

4.png

5.png

结果如下:

6.png

设置第二条规则,只有验证用户名密码失败时才记录(不截图直接放规则)。

{
    "rule_action": "deny",
    "rule_category": "其他",
    "rule_update_category": "resp",
    "rule_log": "true",
    "rule_serverity": "high",
    -
    "rule_matchs": [
        -
        {
            -
            "rule_transform": [
                "none"
            ],
            -
            "rule_vars": [
                -
                {
                    "rule_var": "URI"
                }
            ],
            "rule_operator": "rx",
            "rule_pattern": "login.php$",
            "rule_negated": "false"
        },
        -
        {
            -
            "rule_transform": [
                "none"
            ],
            -
            "rule_vars": [
                -
                {
                    "rule_var": "REQUEST_METHOD"
                }
            ],
            "rule_operator": "rx",
            "rule_pattern": "POST",
            "rule_negated": "false"
        },
        -
        {
            -
            "rule_transform": [
                "none"
            ],
            -
            "rule_vars": [
                -
                {
                    "rule_var": "RESP_HEADERS",
                    -
                    "rule_specific": [
                        "Location"
                    ]
                }
            ],
            "rule_operator": "rx",
            "rule_pattern": "index.php$",
            "rule_negated": "false"
        }
    ],
    "rule_id": "10012",
    "rule_detail": "记录用户登陆成功账号密码"
}

结果如下:

7.png

设置第三条规则,只有验证用户名密码成功时才记录(不截图直接放规则)。

{
    "rule_action": "deny",
    "rule_category": "其他",
    "rule_update_category": "resp",
    "rule_log": "true",
    "rule_serverity": "high",
    -
    "rule_matchs": [
        -
        {
            -
            "rule_transform": [
                "none"
            ],
            -
            "rule_vars": [
                -
                {
                    "rule_var": "URI"
                }
            ],
            "rule_operator": "rx",
            "rule_pattern": "login.php$",
            "rule_negated": "false"
        },
        -
        {
            -
            "rule_transform": [
                "none"
            ],
            -
            "rule_vars": [
                -
                {
                    "rule_var": "REQUEST_METHOD"
                }
            ],
            "rule_operator": "rx",
            "rule_pattern": "POST",
            "rule_negated": "false"
        },
        -
        {
            -
            "rule_transform": [
                "none"
            ],
            -
            "rule_vars": [
                -
                {
                    "rule_var": "RESP_HEADERS",
                    -
                    "rule_specific": [
                        "Location"
                    ]
                }
            ],
            "rule_operator": "rx",
            "rule_pattern": "index.php$",
            "rule_negated": "false"
        }
    ],
    "rule_id": "10012",
    "rule_detail": "记录用户登陆成功账号密码"
}

结果如下:

图片.png

三、总结

只需花几分钟时间配置规则即可实现钓鱼网站的搭建,因为是通过jxwaf反向代理到真实的目标网站地址,所以整个钓鱼网站,除了域名外其他都跟实际网站是一致的,隐蔽性比起自建的钓鱼网站更强,也更不容易引起攻击目标的警觉。在钓鱼演练过程中发现,当有些用户反映过来时候,会通过XSS攻击,SQL注入等方式尝试反X钓鱼网站,所以这种方式的另一好处就是安全,因为攻击流量都导入真实网站去了,就是被成功攻击也是真实网站的事情,钓鱼网站在这个过程中全程打酱油。 而且在钓鱼过程中会有些用户故意"捣乱",或者是谨慎的先尝试错误的密码看网站是不是都返回正确登陆,那么通过这种方式会使得钓鱼过程更真实,同时获取用户的输入数据也是真实的,方便事后统计结果。

*本文作者:chenjc,转载请注明来自FreeBuf.COM

# 钓鱼网站 # JXWAF
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 FreeBuf_15352 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
FreeBuf_15352 LV.4
这家伙太懒了,还未填写个人描述!
  • 17 文章数
  • 17 关注者
JXWAF最佳实践-离线部署
2020-01-14
JXWAF正式版发布
2020-01-13
开源SSH双因素登陆认证系统JXOTP了解一下(续)
2018-10-12
文章目录