*本文作者:ChuanFile,本文属FreeBuf原创文章奖励计划,未经许可禁止转载
名词解释
内网: 仅包括内部员工使用的pc终端和仅提供内部服务的服务器系统
后渗透: 在拿下内网某终端的基础上对内网的进一步渗透攻击
众所周知网络隔离策略、杀软、入侵检测阻止系统等都是防止终端设备感染恶意程序的重要措施,但没有任何人、任何组织可以说自己的防御是100%的(最近的各种热门入侵事件证明了这点),所以如果黑客控制的恶意程序已经突破了这些防御措施进入了内网终端,他接下来会做什么就成了我们必须思考的问题。
很自然我们就会想到:内网web这个重大突破点。
一台pc终端的信息是很有限的,黑客很难通过一台pc获取被入侵公司的核心数据,继续扩散终端这条路是有很大难度(权限验证、网络策略、漏洞修复等等都很难突破),那么渗透内网web这条路就成了下一个目标。内部服务的web站点(如流程管理、人事管理等),尤其是各种hr系统,这可是个人信息(包括名字、密码、住址、联系方式等)的宝库,拿到此数据是黑客认为最有“钱途”的任务。此外各种管理外部业务的内部站点(如对外业务的配置更新等)都会有大量的有价值信息,如支付凭据(信用卡、社保信息等)、游戏数据(账号、密码、级别、资产等)、虚拟资产数据(充值卡号、充值卡密码等)等数据都可以直接获利。
面对此威胁,我们必须制定有效的措施进行防御检测,那黑客到底要怎么做呢?
1、内网有哪些web系统?这是入侵的第一步,如果有哪些系统都不知道,那还个入侵个P
2、每个web系统都是干什么的?筛选重要系统,找寻有用信息,如一个内部食堂菜单展示系统,肯定是没啥直接有用的信息的(当然可以截图炫耀,说我xx了某个公司。。。)
3、我的权限可以登录哪些重要系统?
虽然知道了内网有哪些重要系统,也知道都是干什么的了,那有没有权限登陆就是摆在面前的问题了,如工资管理系统你作为一个小弟肯定是登陆不了的。我们能登陆哪些就是我能获取的信息!黑客并不能获取全部的探测数据(说明内网权限控制的重要性)
4、 哪些web系统的漏洞可以利用获取服务器权限?
如果我没有权限去获取数据,但是还觉得这个系统很重要,那么各种漏洞的利用就要发挥作用,如弱密码、验证绕过、sql注入等,当然可能存在非web的其他漏洞,我们本次仅聚焦web类,所以这里不做探讨了。
a) 此操作需要一定连贯性,如每1秒1张截屏,否则无法获取有用信息;
b) 需要较多耐心,监控时间较长才可以获取足够数据;
c) 外传数据量较大;
d) 可回答黑客疑问1,2,3
结论:单次操作为用户正常操作,防御难度大,但批量操作存在规律,可检测
a) 此操作持续时间较长,需要较多耐心,监控时间较长才可以获取足够数据(包括网址、密码等);
b) 外传数据量较小,只传输键盘记录数据;
c) 可回答黑客疑问1,3;
结论:很多正常软件存在此操作,防御难度大,检测难度大
a) 此方案可获取明文的浏览器的历史记录,部分加密的浏览器历史记录无法获取;
b) 进一步获取信息需重放浏览历史记录,通过获取回包获取有用信息;
c) 需要窃取cooke、token等,否则无法对认证状态的系统进行重放;
d) 可回答黑客疑问1,2,3;
结论:重放操作模拟用户主动行为,难于防护,且无规律,难于检测,但触碰聊天记录文件行为可监控
a) 有点常识的黑客就知道oa.com是内网域名的二级域名,继续域名爆破就可以轻松获取内网域名;
b) 进一步获取信息需重放扫描结果,通过获取回包获取有用信息;
c) 需要窃取cooke、token等,否则无法对认证状态的系统进行重放;
d) 如需获取首页以外的内容,需爬虫(页面序号规律、超链接探测等);
e) 可回答黑客疑问1,2,3;
结论:获取内网域名行为存在规律,如域名清单,不存在域名会返回失败等,易于检测;爬虫较容易检测。
a) 弱密码、管理后台、sql注入等是拿下web系统最简便的方式,csrf、xss等对于从内网终端对内网web系统进行渗透可行性不高
b) 本方案不讨论非web方式的探测
c) 可回答黑客疑问4
结论:规律特征业内通用,易于防御,易于检测
综上,我们已经基本了解黑客探测入侵内网web系统行为的细节了,我们再结合黑客心理,逐步深入分析。首先,如果是新手黑客,他进入内网是非常激动的,根本不考虑什么方式和隐藏,甚至会直接远程桌面把登陆用户挤下去,然后浏览器直接翻查(利用浏览历史),如果用shell他的操作也就是扫描,快速暴力获取信息;其次如果是个有经验的黑客,有一定的反侦察能力,为了防止被发现,他是不会做远程桌面和扫描这种大动作了,他会尽量模拟用户的正常行为,如正常的网站浏览行为等;
最后,如果是apt的黑客,他们的目的是最大程度的隐藏,存活越久才可以发现更多,他们多采取屏幕观看、键盘记录等方式,不多主动行为(即使模拟用户行为也不做),当然外传数据采用闲时传送、压缩、加密等手段是必不可少的。不过新手、经验黑客、apt黑客的角色也不是绝对的,当达到最终收割阶段的时候,各种方式都会被采取,最大化窃取数据才是最终目的。
这是个复杂的问题,我拆分成对于
阶段1:内网有哪些web系统;
阶段2:每个web系统都是干什么的;
阶段3:我的权限可以登录哪些重要系统;
阶段4:哪些web系统的漏洞可以利用获取服务器权限,等四部分讨论
今天我们只讨论阶段1:内网有哪些web系统。
从我们分析黑客行为的结果看,要实现阶段1:内网有哪些web系统,我们可以做的操作有域名爆破(遍历、名单等)、浏览记录获取、屏幕截图查看、键盘记录等四种方式,总结如下
防御:扫描行为可模拟useragent等数据,很难判定是否用户主动行为,根据频率做拦截会影响用户体验,建议不采取防御措施;
检测:黑客仅可凭猜测获取二级域名oa.com或根据外网获取外部域名如baidu.com,则根据扫描特征和黑客思路,建议规则为:
单终端+单位时间+触碰名单或数量达到阈值,如notebook001在5分钟内访问*.oa.baidu.com 100次,或notebook001在5分钟内访问敏感域名清单(*.oa.baidu.com)50% ;
防御:建议自行开发模块,仅允许浏览器读取浏览记录文件
检测:通过监控非浏览器读取浏览记录文件行为发现恶意行为
防御:截图属于正常用户行为,建议不采取防御措施;
检测:截图查看是有时间间隔规律的行为,通过监控规律性截图行为,如每5秒截图一次,可发现此恶意行为
防御:键盘记录需要做hook,这个太多程序使用hook技术了,不建议做防御操作
检测:检查hook操作,排除正常即可
1、使用工具做爆破行为
2、抓包分析:
结论:频率规则可覆盖(注意:不是web访问,而是dns请求),判定oa.baidu.com的次数
1、使用monitor模拟监控行为,如下
chrome浏览器浏览历史记录文件触碰行为,定位存放历史记录的个人目录
定位历史记录文件
监控历史记录文件触碰行为
360浏览器浏览器历史记录文件触碰行为
定位历史记录文件位置
监控历史记录文件触碰行为
QQ浏览器浏览器历史记录文件触碰行为
定位历史记录文件位置
监控历史记录文件触碰行为
结论:通过监控可判定哪些非浏览器程序触碰了浏览器历史记录文件,当然除了以上演示的方法,判定哪些非浏览器程序打开了浏览器历史记录文件对应的文件handle也是个不错的方案。
1、 使用api monitor模拟监控截图行为,如下
配置截图相关api,如GetDc,GetDcEx,GetDeviceCaps等,并使用RemoteThread(Standard)方式方式启动firefox
使用firefox截图
记录到相关的api调用
结论:可通过api监控获取截图行为,当然实际应用需要开发自己的api监控模块,也会存在误报,这需要逐步的运营调整优化。
1、使用工具监控键盘hook操作,演示如下
结论:可通过监控键盘记录各种实现方式判定是否存在键盘记录行为。
综上,我们已经能够对抗黑客后渗透中内网web渗透的第一步:内网有哪些web系统,后续我们再继续探讨其他阶段。
*本文作者:ChuanFile,本文属FreeBuf原创文章奖励计划,未经许可禁止转载
进了内网还入侵啥web?不动域控不动服务器动什么web?……
初级水平
鉴定完毕
最后一张图是啥子工具