-
UID:17777
-
- 注册时间2007-05-02
- 最后登录2025-05-04
- 在线时间18637小时
-
- 发帖786346
- 搜Ta的帖子
- 精华0
- 飞翔币211574
- 威望215717
- 飞扬币2615712
- 信誉值8
-
访问TA的空间加好友用道具
- 发帖
- 786346
- 飞翔币
- 211574
- 威望
- 215717
- 飞扬币
- 2615712
- 信誉值
- 8
|
上周收到一个SSHD后门,正好在学习逆向,就像分析一下,这个后门是一个linux下64位的ELF文件,我没用过IDA,于是边学边做。在网上搜索了很长时间,没有找到关于SSHD后门的分析文章,其实过程非常简单,发出来分享一下。分析过程很简单,把二进制文件直接拖入IDA中,没用过IDA,中间很多学习的过程就不说了,直接说步骤:IDA有一个窗口是查看文件中的字符串,一般来讲后门肯定是有一个万能密码的,所以先打开字符串窗口,发现很多字符串,直接搜索password,发现一个非常可疑的字符串:+user:%s+password:%sn; 这个很明显是c语言格式化输出用户名和密码,直接双击点进去查看汇编,找到了反汇编之后的字符串: 双击data后面IDA解析的内容,查看汇编,找到了输出的位置: 大佬可以直接分析汇编,但是IDA还有两个个功能:一个是切换流程图视图,一个是F5大法转化为伪C语言,先按空格转化为流程图: 直接就发现,右边有一个名字是backdoor_active的函数,往上翻到调用这个函数的地方,即auth_password函数开始,发现程序会把密码和一串字符对比,如果相同,就会直接调用backdoor函数,绕过验证,直接登陆: 这个就是后门文件的万能密码。反过来在看左边,如果密码不是万能密码的话会一步一步验证,到+user:%s+password:%sn;字符创的位置会打开一个文件,并将这部分打印到这个文件中,这样就记录了所有登陆过的用户名和密码: 最后再看一下F5的伪C语言代码,流程比较清晰,这个后门放用户名和密码的文件伪装性还不错: 附件是后门样本 sshd后门.7z (290.46 KB, 下载次数: 12)
|