【技术组·反钓鱼】喜闻乐见的HOSTS式拦截

社区服务
高级搜索
猴岛论坛电脑百科【技术组·反钓鱼】喜闻乐见的HOSTS式拦截
发帖 回复
倒序阅读 最近浏览的帖子最近浏览的版块
7个回复

【技术组·反钓鱼】喜闻乐见的HOSTS式拦截

楼层直达
他妻负我°

ZxID:8333252

等级: 督察
配偶: 夜空
 做个俗人 贪财好色

举报 只看楼主 使用道具 楼主   发表于: 2013-07-02 0
本版有不少反钓鱼  
钓鱼加密 等思路   站内搜索即可
本次 最后更新一次个人的hosts拦截。
提供思路


虽然还可以考虑调用驱动NDIS来拦截封包(最底层的方法,很难破解),不过公开资料太少,微软公开资料英死早看不懂,姑且不做考虑了。

其实软件层的所有的反拦截方法都可以跳过我会乱说
不过相对该死的注入而言(在某些系统极不稳定)果断还是做出了hosts式的拦截封包。






.版本 2
.支持库 shell


.程序集 窗口程序集1
.程序集变量 IP, 文本型
.程序集变量 host路径, 文本型
.程序集变量 原hosts是否存在, 逻辑型
.程序集变量 客户, 文本型
.程序集变量 是否为账号, 逻辑型
.程序集变量 是否为密码, 逻辑型
.程序集变量 账号, 文本型
.程序集变量 密码, 文本型


.子程序 列表框_加入提示
.参数 提示, 文本型


列表框1.加入项目 (提示, )
列表框1.现行选中项 = 列表框1.取项目数 () - 1
处理事件 ()


.子程序 _按钮1_被单击


IP = “”
原hosts是否存在 = 真
账号 = “”
密码 = “”
是否为账号 = 假
是否为密码 = 假
连续赋值 (真, 编辑框2.禁止, 编辑框1.禁止, 单选框1.禁止, 单选框2.禁止)
列表框1.清空 ()
处理事件 ()
列表框_加入提示 (“正在访问网络获取指定邮箱服务器的IP地址...”)
IP = 转换为IP地址 (编辑框1.内容)
.如果真 (IP = “”)
    列表框_加入提示 (“查询IP失败!请检查邮箱服务器地址拼写。”)
    返回 ()
.如果真结束
列表框_加入提示 (“查询结果: 地址[” + 编辑框1.内容 + “]对应IP地址[” + IP + “]”)
host路径 = 取特定目录 (#Windows系统目录) + “Drivers\etc\hosts”
' 备份原hosts文件
列表框_加入提示 (“正在备份原hosts文件...”)
.如果真 (复制文件 (host路径, “.\hosts.bak”) = 假)
    原hosts是否存在 = 假
.如果真结束
列表框_加入提示 (“正在修改hosts文件...”)
.如果真 (写到文件 (host路径, 到字节集 (“127.0.0.1 ” + 编辑框1.内容 + #换行符)) = 假)
    列表框_加入提示 (“hosts文件修改失败!请使用管理员身份运行,并且不要拦截。”)
    返回 ()
.如果真结束
服务器1.端口 = 到整数 (编辑框2.内容)
列表框_加入提示 (“已开始监控...请务必关闭监控后再退出本工具,以便还原hosts”)
按钮1.禁止 = 真
按钮2.禁止 = 假


.子程序 __启动窗口_可否被关闭, 逻辑型


.如果真 (按钮1.禁止 = 真)
    信息框 (“请先关闭监控在退出软件!否则无法还原备份的hosts文件!”, 0, )
    返回 (假)
.如果真结束
返回 (真)


.子程序 _按钮2_被单击


服务器1.端口 = 0
列表框1.清空 ()
列表框1.加入项目 (“正在还原被修改的hosts文件...”, )
.如果 (原hosts是否存在 = 假)
    .如果真 (删除文件 (host路径) = 假)
        列表框1.加入项目 (“还原hosts失败!请不要用杀毒软件拦截。”, )
        返回 ()
    .如果真结束


.否则
    .如果真 (写到文件 (host路径, 读入文件 (“.\hosts”)) = 假)
        列表框1.加入项目 (“还原hosts失败!请不要用杀毒软件拦截。”, )
        返回 ()
    .如果真结束


.如果结束
列表框_加入提示 (“监控已关闭!”)
按钮2.禁止 = 真
按钮1.禁止 = 假
连续赋值 (假, 编辑框2.禁止, 编辑框1.禁止, 单选框1.禁止, 单选框2.禁止)


.子程序 __启动窗口_创建完毕


服务器1.端口 = 0


.子程序 _服务器1_客户进入


客户 = 服务器1.取回客户 ()
列表框_加入提示 (“客户进入:” + 客户)
.如果真 (单选框2.选中 = 真)
    服务器1.发送数据 (客户, “220 smtp.qq.com Esmtp QQ Mail Server” + #换行符, )
    返回 ()
.如果真结束
客户1.连接 (IP, 到整数 (编辑框2.内容))




.子程序 _服务器1_客户离开


客户 = 服务器1.取回客户 ()
列表框_加入提示 (“客户离开:” + 客户)
客户1.断开连接 ()
_按钮4_被单击 ()


.子程序 _服务器1_数据到达
.局部变量 数据, 字节集
.局部变量 不输出列表, 逻辑型


数据 = 服务器1.取回数据 ()
.如果真 (单选框2.选中 = 真)
    ' 如果是这样则当本软件为虚拟SMTP服务器,返回数据给钓鱼软件骗取密码
    列表框_加入提示 (“发送数据:” + 到文本 (数据))
    .如果真 (寻找字节集 (数据, 到字节集 (“HELO”), ) ≠ -1 或 寻找字节集 (数据, 到字节集 (“EHLO”), ) ≠ -1)
        服务器1.发送数据 (客户, “250-smtp.qq.com” + #换行符 + “250-PIPELINING” + #换行符 + “250-SIZE 52428800” + #换行符 + “250-AUTH LOGIN PLAIN” + #换行符 + “250-AUTH=LOGIN” + #换行符 + “250-MAILCOMPRESS” + #换行符 + “250 8BITMIME” + #换行符, )
        列表框_加入提示 (“返回数据:250-smtp.qq.com250-PIPELINING250-SIZE 5242880”)
        返回 ()
    .如果真结束
    .如果真 (数据 = 到字节集 (“AUTH LOGIN” + #换行符))
        服务器1.发送数据 (客户, “334 VXNlcm5hbWU6” + #换行符, )
        列表框_加入提示 (“返回数据:334 VXNlcm5hbWU6”)
        是否为账号 = 真
        返回 ()
    .如果真结束
    .如果真 (是否为账号 = 真)
        服务器1.发送数据 (客户, “334 UGFzc3dvcmQ6” + #换行符, )
        列表框_加入提示 (“返回数据:334 UGFzc3dvcmQ6”)
        账号 = 到文本 (BASE64解码 (到文本 (数据)))
        列表框_加入提示 (“拦截到账号:” + 账号)
        是否为账号 = 假
        是否为密码 = 真
        返回 ()
    .如果真结束
    .如果真 (是否为密码 = 真)
        服务器1.发送数据 (客户, “235 Authentication successful” + #换行符, )
        列表框_加入提示 (“返回数据:235 Authentication successful”)
        密码 = 到文本 (BASE64解码 (到文本 (数据)))
        列表框_加入提示 (“拦截到密码:” + 密码)
        是否为密码 = 假
        返回 ()
    .如果真结束
    .如果真 (数据 = 到字节集 (“QUIT” + #换行符))
        服务器1.断开客户 (客户)
        返回 ()
    .如果真结束


.如果真结束
.如果真 (是否为密码 = 真)
    ' 说明这次拦截的数据是邮箱密码
    密码 = 到文本 (BASE64解码 (到文本 (数据)))
    列表框_加入提示 (“拦截到密码:” + 密码)
    是否为密码 = 假
    不输出列表 = 真
.如果真结束
.如果真 (是否为账号 = 真)
    账号 = 到文本 (BASE64解码 (到文本 (数据)))
    列表框_加入提示 (“拦截到账号:” + 账号)
    是否为账号 = 假
    是否为密码 = 真
    不输出列表 = 真
.如果真结束
.如果真 (不输出列表 = 假)
    列表框_加入提示 (“发送数据:” + 到文本 (数据))
.如果真结束
.如果真 (数据 = 到字节集 (“AUTH LOGIN” + #换行符))
    ' 这意味着拦截到AUTH LOGIN
    是否为账号 = 真
.如果真结束
客户1.发送数据 (数据)




.子程序 BASE64解码, 字节集
.参数 编码文本, 文本型, 参考
.局部变量 文本长度
.局部变量 整倍数
.局部变量 三字节组, 字节型, , "3"
.局部变量 四字节组, 字节型, , "4"
.局部变量 编码值
.局部变量 X
.局部变量 n
.局部变量 二进制数据, 字节集
.局部变量 指针
.局部变量 字节数组, 字节型, , "0"


编码文本 = 删全部空 (编码文本)
编码文本 = 子文本替换 (编码文本, #换行符, , , , 真)
文本长度 = 取文本长度 (编码文本)
整倍数 = 文本长度 \ 4
.如果真 (文本长度 % 4 ≠ 0)
    整倍数 = 整倍数 + 1
.如果真结束
重定义数组 (字节数组, 假, 整倍数 × 3)  ' 开辟缓冲区大小
指针 = 1
.计次循环首 (整倍数, X)
    .计次循环首 (4, n)
        四字节组 [n] = 取代码 (编码文本, (X - 1) × 4 + n)
        编码值 = 寻找文本 (“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/”, 字符 (四字节组 [n]), , 假)
        .如果真 (编码值 = -1)
            跳出循环 ()
        .如果真结束
        四字节组 [n] = 编码值 - 1
    .计次循环尾 ()
    字节数组 [指针] = 位或 (四字节组 [1] × 4, 四字节组 [2] ÷ 16)
    字节数组 [指针 + 1] = 位或 (四字节组 [2] × 16, 四字节组 [3] ÷ 4)
    字节数组 [指针 + 2] = 位或 (四字节组 [3] × 64, 四字节组 [4])
    指针 = 指针 + 3
.计次循环尾 ()
二进制数据 = 到字节集 (字节数组)
.如果真 (n < 5)  ' 最后一组4字符是提前退出的,截取字节集
    n = 5 - n
    二进制数据 = 取字节集左边 (二进制数据, 取字节集长度 (二进制数据) - n)
.如果真结束
返回 (二进制数据)


.子程序 _客户1_连接断开


服务器1.断开客户 (客户)
列表框_加入提示 (“客户被强制离开。”)


.子程序 _客户1_数据到达
.局部变量 数据, 字节集


数据 = 客户1.取回数据 ()
服务器1.发送数据 (客户, 数据, )
列表框_加入提示 (“返回数据:” + 到文本 (数据))


.子程序 _按钮3_被单击
.局部变量 输出文本, 文本型


输出文本 = “账号:”
.如果 (账号 = “”)
    输出文本 = 输出文本 + “未拦截到”
.否则
    输出文本 = 输出文本 + 账号
.如果结束
输出文本 = 输出文本 + #换行符 + “密码:”
.如果 (密码 = “”)
    输出文本 = 输出文本 + “未拦截到”
.否则
    输出文本 = 输出文本 + 密码
.如果结束
信息框 (输出文本, 0, )




.子程序 _按钮4_被单击


是否为账号 = 假
是否为密码 = 假
列表框_加入提示 (“重置完毕。”)


host式反钓鱼工具.rar[点击下载](5 K) 下载次数:14 累计下载获得 DB 28


本帖de评分: 2 条评分 DB +7
DB+3 2013-07-02

精品文章

DB+4 2013-07-02

精品文章

2014

ZxID:21900290

等级: 元老
     ๑热心会员๑      ๑值得拥有๑

举报 只看该作者 沙发   发表于: 2013-07-02 0
精品文章
熬过低谷

ZxID:23403682

等级: 中校
举报 只看该作者 板凳   发表于: 2013-07-05 0
bbndfthertjntsmrjhewtafgmghetwr3w
kgdaiai

ZxID:8060148

等级: 列兵
举报 只看该作者 地板   发表于: 2013-07-25 0
收下啦谢谢分享
___你的柔

ZxID:23251282

等级: 少尉
举报 只看该作者 4楼  发表于: 2013-11-11 0
反钓鱼。。。 就是 反着钓鱼  ((~ o ~)~zZ)

际遇之神

惩罚

借朋友的法拉利去HI,不小心车上刮了一道划痕,花去DB1

___你的柔

ZxID:23251282

等级: 少尉
举报 只看该作者 5楼  发表于: 2013-11-11 0
--  DB有人送么?  送我100000000000000W  就好了。
___你的柔

ZxID:23251282

等级: 少尉
举报 只看该作者 6楼  发表于: 2013-11-11 0
- -
腾讯小攸

ZxID:16676672

等级: 上将
易语言,我带你走向世界。

举报 只看该作者 7楼  发表于: 2013-11-11 0
这你是自己写的么? 好像很牛逼的样子,不过我用不到。。
« 返回列表
发帖 回复