PAGE 1 工控固件分析工具安装和使用 实验原理 Binwalk是一款快速、易用,用于分析,逆向工程和提取固件映像的工具。简单易用,完全自动化脚本,并通过自定义签名,提取规则和插件模块。该工具对linux支持较好,对于windows功能支持较差。 IDA使用数据类型信息,通过派生的变量和函数名称来尽其所能地注释生成的反汇编代码。这些注释将原始十六进制代码的数量减到最少,并显著增加了符号化信息的数量。 实验目的 掌握安装软件Binwalk和IDA 掌握Binwalk命令 掌握IDA命令 实验环境 Windows10,kali-Linux计算机,python 2.7+或python 3.4+版本 推荐课时数 推荐课时数:2课时 实验步骤 任务一:安装Binwalk和IDA binwalk工具安装支持的平台: Operating System Core Support Optional Feature Support Linux Excellent Excellent OSX Excellent Good Cygwin Excellent Good FreeBSD Experimental
2022-06-25 09:00:18 981KB 工业互联网
数据库攻击 实验原理 二次注入:攻击者构造的恶意数据存储在数据库后,恶意数据被读取并进入到SQL查询语句所导致的注入。防御者可能在用户输入恶意数据时对其中的特殊字符进行了转义处理,但在恶意数据插入到数据库时被处理的数据又被还原并存储在数据库中,当web程序调用存储在数据库中恶意数据并执行SQL查询时,就发生了SQL二次注入。 堆叠注入:多条sql语句一起执行。在MySQL中,每一条语句结尾加;表示语句结束,结尾加上;可以多条语句一起执行。比如用户输入:1; DELETE FROM products服务器端生成的sql语句为:(因未对输入的参数进行过滤)Select * from products where productid=1;DELETE FROM products当执行查询后,第一条显示查询信息,第二条则将整个表进行删除。 实验目的 了解sql的二次注入 了解sql的堆叠注入 实验环境 Windows10,phpstudy(php5,mysql5.7,apache2.4),sqli-labs 推荐课时数 推荐课时数:2课时 实验步骤 工业控制系统一般会用到MySQL、Oracl
2022-06-25 09:00:17 2.84MB 工业互联网
施耐德NOE771固件逆向分析 实验原理 固件逆向分析方法是在不对嵌入式系统进行实际运行的情况下,通过对固件文件进行逆向解析,分析固件中各代码模块的调用关系及代码内容,从而发现嵌入式系统中可能存在的漏洞及后门的一种技术手段。 实验目的 掌握使用binwalk、ida pro软件使用方法,对固件逆向分析。 实验环境 Windows10,kali-Linux计算机,binwalk、ida pro6.8 推荐课时数 推荐课时数:2课时 实验步骤 本实验用到的固件时施耐德的NOE77101_Exec_V64.bin,可在以下网站下载。 140NOE77111 Firmware For Unity and Non Unity Users 固件 | Schneider Electric () 步骤一:固件的识别和解压 (1)使用Binwalk来确认NOE77101_Exec_V64.bin的压缩类型,发现385的压缩类型是为zlib类型如图。 (2)使用Binwalk提取zlib压缩的文件,解压时会在同一目录下新建文件夹_NOE77101—_Exec_V64.bin.extracted。解压后的文
2022-06-25 09:00:17 658KB 工业互联网
施耐德NOE771后门账号分析 实验原理 对施耐德NOE77101_Exec_V64.bin固件逆向分析完毕后,可以通过查看固件的服务加载过程,来查看初始化时所添加的账号等信息。 实验目的 掌握使用ida pro软件使用方法。 实验环境 Windows10,ida pro6.8 推荐课时数 推荐课时数:2课时 实验步骤 在NOE77101_Exec_V64.bin固件逆向分析完毕后,分析固件中的汇编函数调用关系如下: 图1 函数调用关系 老版本固件中usrNetworkInit->userNetAppInit函数默认调用telnetInit来开启telnet服务的问题已经在新版本固件中修复,同时usrToolsInit中默认调用usrWdbInit开启wdb服务的问题也解决了,但我们来看usrAppInit,固件后门账户还是存在。 图2 后门账号 查看VxWorksk开发手册,其中对于loginUserAdd函数的描述: 图3 loginUserAdd函数 其中Password提交的参数为经过vxencrypt加密后的值,符合逆向发现的固件的密码。Rapid7 研究员HD Moore曾
2022-06-25 09:00:16 583KB 工业互联网
预览TXT DNP3协议测试实验文档 实验原理 DNP3协议是一种应用层协议,本文将采用SSL协议对DNP3协议提供安全传输机制,其总体设计如下图所示。本文设计的DNP3安全传输机制主要分为SSL握手和数据加密两个功能模块。 SSL握手模块:SSL握手是实现安全传输的前提,主要实现签名验证和密钥交换,生成的共享密钥用于数据加密。数据加密模块:基于对数据安全的考虑,对DNP3协议数据进行加密,并以密文的形式传输,确保了数据的安全。 这种安全传输机制没有改变DNP3协议,而是试图将DNP3协议包裹在SSL协议中,确保 DNP3主站设备和 DNP3从站设备之间在TCP/IP上的传输安全。 实验目的 创建服务端和仿真端,通过DNP3协议抓取流量包进行重放攻击。 实验环境 Windows 10操作系统 DNPClientSim软件1套 DNPServerSim软件1套 ComMax软件1套 Wireshark软件1套 推荐课时数:2课时 实验步骤 配置DNPServerSim软件 打开DNPServerSim软件,点击Add Server,添加DNP3服务端,如下图所示: 图1 DNPServ
2022-06-25 09:00:15 2.43MB 工业互联网
Modbus协议测试实验文档 实验原理 利用arpspoof以及ettercap嗅探工具截取modbus协议通讯数据,编写脚本将截取到的modbus协议通讯数据段中的”\x00\x00”替换成”\x00\x01”。被篡改的modbus协议通讯数据是异常数据,SCADA系统采集到模拟PLC的异常数据流量之后,将发生异常,停止工作。 实验目的 通过Modsim32以及Modscan32的使用,模拟Modbus协议的主从站的通信模式,对Modbus协议进行测试。 实验工具 Modsim32软件 1套 Modscan32软件 1套 SCADA软件 1套 Kali Linux操作系统 推荐课时数:2课时 实验步骤 步骤1:模拟通信环境 1、打开modbus仿真软件modsim32。这个软件是一个模拟modbus协议的仿真软件。 图1 Modbus仿真软件 配置modbus仿真软件的寄存器地址、长度、设备地址、命令类型后开启仿真软件的连接设置,选择连接设置—连接—Modbus/TCP服务器,选择功能后开启modbus仿真的502端口。 图2开启连接 开启modsim32软件的协议端口后,准备利用m
2022-06-25 09:00:14 4.76MB 工业互联网
协议Fuzzing实验文档 实验原理 Peach文件Fuzz流程图如下: 一个基于网络协议的 Fuzz 测试的实现过程如下: 1 获得待测协议的正常数据包 2 用变异数据替换该数据包中的某些部分 3 用发包器向目标应用发包 4 观察目标应用的反应 通常情况下,通过抓包器捕获客户端与被测设备正常交互的数据包作为测试的正常数据包样本。通过任意方式改变随机数据。例如,可以打乱整个数据包,也可以把数据包中的某 个部分替换。不管采用什么方法变异数据,关键是在数据包中放入大量随机数据,然后将该数据包发送到目标应用并观察目标应用的行为能力。 Peach模糊测试工具是一个开源的模糊测试框架,包括数据模型(数据类型、变异器接口等)、状态模型(数据模型接口、状态、动作—输入输出等)、代理器(包括本地调试器如WindowsDebugger和网络监视器如PcapMonitor等)、测试引擎(代理器接口、状态模型接口、发布器、日志记录器等) 实验目的 利用模糊测试攻击对MODBUS仿真设备进行写入设备的攻击 实验环境 Windows 10操作系统 Pench框架软件1套 MODBUS SimuSoftware软
2022-06-25 09:00:14 1.04MB 工业互联网
Siemens S7协议渗透测试实验文档 实验原理 利用ISF框架的的相应模块,对S7协议PLC模拟器进行渗透,实现暂定以及开启PLC模拟器的功能。 实验目的 熟悉西门子PLC系列S7-300的攻击过程与思路,了解并学习一些常用的用作工控安全协议测试的框架与工具 实验工具 S7-300模拟器 1套 Isf框架软件 1套 Kali linux2017版本系统 实验步骤 1.环境描述 网上找了一个好用的S7模拟器,压缩包打开如下: 图1软件包 我们需要用到的是serverdemo.exe也就是我们平时的PLC设备,我将构造代码和它进行连接并执行一些类似停启的操作。但是用它的clientdemo.exe也能相互连接,看一下连接图: 图2 Client端设置 1、172.18.2.92为本机ip,用ipconfig查看填写(serverdemo.exe) 2、先点击start启动server(serverdemo.exe) 3、这是查看下面日志就显示serverstarted(serverdemo.exe) 4、client上填写连接server的ip172.18.2.92(clientdem
2022-06-25 09:00:13 2.25MB 工业互联网
Zigbee协议测试实验文档 实验原理 协议数据包抓取软件模拟Zigbee设备的入网过程,构造相关的数据包与终端进行通信,实现抓取数据包或者控制Zigbee设备的目的。 实验目的 利用Ubiqua软件以及相关的Zigbee硬件模块,抓取Zigbee协议数据包并进行恶意流量分析。 实验环境 Ubiqua软件一套 Zigbee硬件模块 1套 Ubuntu20.04操作系统 推荐课时数:2课时 实验步骤 Zigbee设备接入Ubiqua软件 打开Ubiqua软件,界面如下图所示: 图1 Uniqua软件界面 打开配置菜单 Tools->Options,选择 Security ,添加key,如下图所示: 图2 添加key 添加设备,具体设置如下图所示: 图3 添加设备 选择Zigbee协议,如下图所示: 图4 选择Zigbee协议 选择信道,具体设置如下图所示: 图5 选择信道 打开设备,如下图所示: 图6 打开设备 Ubiqua中的常用工具 常用工具 在抓包器中一有些常用的工具,如下图所示: 图7 常用工具 保存当前数据 滚动显示 单包分解窗显示最新包 清空所有 当前过滤器 启用与关闭过滤器
2022-06-25 09:00:13 1.08MB 工业互联网
系统1系统测试实验文档 实验原理 MS08-067漏洞是通过 MSRPC over SMB 通道调用 Server 服务程序中的 NetPathCanonicalize 函数时触发的,而 NetPathCanonicalize 函数在远程访问其他主机时,会调用 NetpwPathCanonicalize 函数,对远程访问的路径进行规范化,而在 NetpwPathCanonicalize 函数中存在的逻辑错误,造成栈缓冲区可被溢出,而获得远程代码执行(Remote Code Execution)。 实验目的 利用MS08-067漏洞对Windows XP系统执行远程执行攻击,获得控制台权限。 实验环境 Windows xp系统 Kali Linux 系统 Windows 7系统 推荐课时数:2课时 实验步骤 任务一:环境准备以及渗透测试 获取目标主机的ip地址,命令以及结果如下图所示: 图1目标主机ip查询 利用kali当中的nmap检测目标主机的端口开放情况,命令以及相应结果如下图所示: 图2 nmap检测 从检测结果可以看出本实验所利用的端口445是开放的。 利用nmap漏洞检测脚本
2022-06-25 09:00:12 1.49MB 工业互联网