charun
- 关注
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

文章背景
这两天刚做完一个项目,有感而发,顺手写下这个测试指南,其中包含了网银机的一些测试手法,方便各位师傅借鉴和各位客户爸爸自主学习测试。
什么?你不知道什么网银体验机!就是下面这个设备(包括触屏和自带键盘的两种):
虚假的黑客,正经人谁带面罩呀
真实的黑客,直接物理黑入
卑微安服仔测试留存照片
测试指南
测试思路
言归正传,所谓的网银体验机测试主要是为了寻找沙盒设计的缺陷,逃逸沙盒,获得cmd的执行命令权限,从而拿到这台设备的管理权限。
网银体验机的设计原理可以如下图所示:
大部份网银体验机,都是集成的WIN7/XP系统,再使用沙盒将IE完整的封装在里面,使其完全运行再这个无缝(全屏模式)框架中,避免直接遭受攻击。
测试流程
下面几张图,为了避免信息泄露,只能打上厚马
系统层面
在日常的测试中,我们主要也是集中在此方面进行测试。以下提供一些绕过的思路:
跳出界面
大致可以理解为点击屏幕、键盘等其他方式跳出沙盒进行后台操作系统
1.利用鼠标右键,在提示信息出现时,未很好的屏蔽右键菜单,可直接利用。
不需要局限于桌面组件和沙盒内部的右键菜单,第三方组件的也会出现逃逸情况。例如下图中输入法导致的逃逸情况:
2.使用CTRL+ALT+DELETE组合键打开安全窗口,然后选择打开任务管理器后可以打开命令行。目前这种比较基础的漏洞很少出现了,如果存在这个问题基本剩下的问题就不用看了。
具体点击:文件-运行新任务
这里也可以通过直接使用WIN+R键,打开运行对话框
常用的命令:
打开根目录:C:\
打开当前用户文件夹:C:\Users\UserName
打开cmd命令提示符:cmd
打开资源管理器:explorer
打开注册表编辑器:regedit
本地服务设置:services.msc
3.开启资源管理器。部分的网银体验机存在退出功能,但是退出后仍然会强制返回页面。因此在退出的时候存在返回的时间差,通过快速点击进入资源管理器(我的电脑),如下图所示,可以在红框内输入cmd或者输入cmd的路径即C:\windows\System32\cmd.exe
也可以直接使用快捷键Win+E,进行测试
4.证书缺陷。利用https通信过程中的网银设计缺陷,很多网银在证书传输中,会被浏览器认为服务器证书存在问题,而弹出警告信息,这里非常频繁,且非常容易造成问题,需要引起注意。
通过此处可以通过internet选项,最高可进入控制面板
还有以下这种情况:
通过详细信息,进入windows帮助和支持,再从中重新进行浏览器,查看是否新弹出的流量器是否能稳定绕过沙盒。
此外还有很多类似于证书的弹窗,就不一一演示了,出现了就可以每个选择项都点进去试一试。
5.下载界面,通过选择保存位置可自行选择路径,从而进入资源管理器,再输入cmd的路径,执行cmd命令,进入到DOS界面。
此处需要仔细寻找设备中的每一个下载接口,都有可能构成泄露。
例如最常见的是:
①提供USB KEY的驱动的下载
②网银机客户端下载
下图为下载文件后利用的演示:
但是部分的系统限制了自主选择保存位置,但是可以通过先下载文件然后查看实际文件地址,从而进入资源管理器。
报错提示
1.在输入错误信息等操作的时候,系统弹出一个错误提示。查看错误信息,会弹跳出来.txt格式的文本文件。可以通过notepad以文本形式查看、写入任意文件,但无法执行文件。例如写入.bat结尾的脚本,再结合其他漏洞进行利用。
示例:保存文件test.bat(其实直接cmd也行)
cmd /k
2.通过点击错误提示中包含的链接,可以访问浏览器。(不用局限在这里,网银体验机中会涉及很多浏览器的接口,但是如果存在限制,全局基本都打不开),在浏览器中输入“C:\”地址进入文件管理器,可以在文件管理器中查看任意文件和执行“.bat”、“.exe”等可执行文件。
但是更多的时候浏览器是没有对bat等脚本的执行权限,因此可以通过下载System32文件夹下的cmd.exe,看一下这里能不能下载文件并弹出cmd窗口
下载文件直接尝试打开
物理层面
1.接口泄露
USB、网口,电源口等接口对普通用户不可见。
①USB接口
USB需要根据具体情况做限制,部分网银机需要插入USB key,此时就需要严格控制USB的控制权限,只允许特定设备接入。
此外USB key的设计中,有时候存在设计缺陷,可以查看自己的证书信息,而此时很可能带有导入功能;并且在证书更新中,如果使用过期证书,在网银中进行更新,也可绕过部份沙盒;
并且如果设备未对USB接口做到完全限制,可直接重启接入PE系统,强制修改网银体验机密码。
部分设备的USB接口是进行加壳处理的,打开盖子才能接入USB键盘鼠标并操作后台系统,这部分的设备需要检查是否正常上锁,如果没上锁,就可以直接接入键盘鼠标等控制设备,因为这里的USB口基本没做限制。
Tips:测试的时候可以直接试试badusb,查看一下控制情况。类似这样,使用Digispark开发板试一下无害的操作。
代码部分:
# include "DigiKeyboard.h"
# define KEY_ESC 41
# define KEY_BACKSPACE 42
# define KEY_TAB 43
# define KEY_PRT_SCR 70
# define KEY_DELETE 76
void setup() {
DigiKeyboard.delay(500);
//win+r cmd
DigiKeyboard.sendKeyStroke(KEY_R,MOD_GUI_LEFT);
DigiKeyboard.delay(200);
DigiKeyboard.sendKeyStroke(KEY_SPACE, MOD_CONTROL_LEFT);
DigiKeyboard.delay(500);
//DigiKeyboard.println(F("cmd"));
DigiKeyboard.println(F("cmd /q /d /f:off /v:on /k MODE con: cols=15 lines=1"));
DigiKeyboard.delay(1200);
}
void loop() {
}
如果想学习这方面的文章,可以继续看一下我的其他文章。
②网口
通过直接插入网口,查看是否能并直连网银机或者并入局域网。这部分接口必须隐藏,不能泄露。
2.进入安全模式
开机长按F8进入"带命令提示符的安全模式"
同理也可以开机长按CTRL进入该模式
带命令提示符的安全模式 如下图所示:
3.启动修复模式
win7可利用粘滞键的问题,将sethc改为cmd,从而绕过密码限制
具体操作可以查看我之前写的这篇文章
通过修改sethc粘滞键改为cmd
具体操作可以查看我之前写的这篇文章
注:操作时涉及强制重启,可能会导致磁盘故障,谨慎使用。
此处需要注意的是,由于此操作需要涉及强制重启,如果设备不能系统上直接关闭,需要从通过拔电源线等物理手段关闭,有可能会影响到磁盘安全,需要谨慎使用,
总结
网银体验机的测试追根结底就是对沙盒的绕过技术,也就是以下这3方面,分别为快捷键跳出、报错/下载跳出、接口跳出。实际测试的时候如果常规的快捷键和操作都被禁止,也可以任意点击页面的部位或任意按键盘,不管白猫黑猫,能抓到老鼠的就是好猫。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)