0717-7821348
欢乐彩开奖

欢乐彩开奖

您现在的位置: 首页 > 欢乐彩开奖
怎么PWN掉西门子工控设备
2019-10-08 22:08:14

在对船只控制系统进行测验时,咱们注意到控制系统对西门子Scalance工业以太网交换机的严峻依靠,因而为对其进行了深入研讨。经过逆向发现可运用静态密钥对办理暗码进行可逆加密,并运用不同的密钥对用户暗码进行可逆加密。

以下是咱们找到静态密钥的办法。

研讨开始于配置文件,暗码看起来很不寻常,好像不是单向哈希。 已有缝隙可用于康复配置文件和固件,这意味着攻怎么PWN掉西门子工控设备击者能够拜访此信息:

暗码很矮小,长度取决于暗码巨细,并会被填充至8个字符。 这意味着运用的是分组暗码进行加密。

怎么PWN掉西门子工控设备

其间用于测验的64位巨细的暗码标明运用DES或Blowfish作为加密算法。 别的值得注意的是,办理员帐户有两个暗码。

固件逆向

固件文件为ARM ELF文件,在ELF文件上运转“binwalk”指令,找到“VxWorks”实时操作系统和LZMA紧缩数据的版别字符串。

lzma紧缩文件是设备的首要固件,对它进行解紧缩标明它是一个二进制文件,没有可辨认的文件签名。hexdump解压后的二进制文件标明它是arm固件。

因为固件已被辨认而且格局可读,因而能够将其作为ARM Little-波轮洗衣机endian二进制文件加载到IDA中。

对固件有用负载履行静态剖析,而且没有关于设备内部的已知信息。 因而,固件的进口点尚不清楚。

发作这种状况时,能够运用默许地址000000000作为进口点。 可是,对函数和数据的引证将不精确。

查找进口点十分重要,因为它能够更容易地辨认正在运用的代码引证和盯梢函数。有许多技能能够运用,因为固件运用VxWorks实时操作系统,因而存在快捷方式。

VxWorks符号表供给与字符串引证匹配的函数引证,答应固件中的每个函数都有一个界说其函数的称号。经过标识固件启动时运用“sysInit”函数找到该函数的进口点。

ram能够经过在代码中设置的值来辨认,还能够凭借ida剖析固件的其余部分。

暗码加密剖析

咱们能够找到单词“password”的函数引证或找到任何相似加密的函数调用,要点放在blowfish或des加密上。在调用参数之前盯梢加载到参数中的值,关于arm,这些值将在寄存器r0、r1、r2等中设置。

在“clieditpas怎么PWN掉西门子工控设备swordset”函数中标识了blowfish函数调用,证明运用了可逆加密。blowfish测验函数是运用特定的常数来辨认的,这些常数能够在网上查找到,这样就能够辨认所运用的切当blowfish库,该库能够从github下载。

能够经过标识传递给寄存器r1的值来盯梢用于blowfish的加密密钥。寄存器r0将包括“ctx”变量,r1将包括密钥,r2将包括密钥的长度。

剖析标明,用于办理员暗码的加密密钥是“els_key”,可是测验运用此字符串解密用户暗码失利。进一步剖析标明,加密运用了第二个密钥,但无法静怎么PWN掉西门子工控设备态辨认。

当处理相对简略的软件时,或许有许多时刻盯梢每个函数调用时,静态剖析十分有用。在这种状况下,咱们无法经过静态剖析来辨认用户暗码的加密办怎么PWN掉西门子工控设备法。

咱们购买了scalance交换机,在主板上辨认出jtag,将头部焊接上,并将其连接到segger j-link jtag调试器。

运用segger gdb能够增加断点并逐渐遍历固件的每个元素。由此,能够经过在调用函数时查看寄存器设置来标识加密所运用的切当变量。

确认了以下暗码加密办法:

1、办理员暗码运用静态密钥“els_key”加密

2、第二个办理员暗码是一个静态字符串“elsdebug”,它运用明文办理员暗码进行加密,用于保证办理员暗码与用户暗码运用的加密相对应

3、一切其他用户暗码也用明文办理员暗码加密

1、办理员暗码运用静态密钥“els_key”加密

2、第二个办理员暗码是一个静态字符串“elsdebug”,它运用明文办理员暗码进行加密,用于保证办理员暗码与用户暗码运用的加密相对应

3、一切其他用户暗码也用明文办理员暗码加密

西门子对发表的信息反响敏捷。西门子查询并确认,该问题影响了整个scalance交换机产品线,

*参阅来历:pentestpartners,由Kriston编译,转载请注明来自FreeBuf.COM

怎么PWN掉西门子工控设备