红队笔记10:pWnOS2.0打靶流程-whatweb指纹识别-searchsploit搜索漏洞利用getshell(vulnhub)

目录

开头:

1.主机发现和端口扫描

2.80端口- whatweb指纹识别-searchsploit搜索漏洞并利用

whatweb指纹识别:

searchsploit搜索历史漏洞:

什么是perl?

Simple PHP blog登录成功-图片上传getshell

3.提权-敏感文件泄露密码泄露尝试登录

 4.总结:


开头:

学习的视频是哔哩哔哩红队笔记:

「红队笔记」靶机精讲:pWnOS2.0 - 简洁明快的攻击链,php+mysql架构cms渗透的样本。_哔哩哔哩_bilibili

打靶时参考文章和本文借鉴文章:

红队打靶:pWnOS2.0打靶思路详解(vulnhub)-CSDN博客

靶机下载链接见:

http://pwnos.com/files/pWnOS_v2.0.7z

1.主机发现和端口扫描

参考链接nmap主机发现和端口扫描:渗透测试:主机发现和端口扫描的方法总结(nmap+arp-scan+ping命令+nc.traditional+伪设备连接)-CSDN博客

Sudo nmap -sn 10.10.10.128
sudo nmap -min-rate 10000 -p- 10.10.10.100
sudo nmap -sT -sV -O -p22,80 10.10.10.100
sudo nmap -sU -min-rate 10000 -p- 10.10.10.100
sudo nmap --script=vuln -p22,80 10.10.10.100  

nmap搜索的信息:

1.开发端口:22,80,80端口存在更大的攻击面,优先对80端口探针

2.nmap脚本扫描发现80端口泄露了一些目录 ,其中/blog ,/includes我们比较在意

2.80端口- whatweb指纹识别-searchsploit搜索漏洞并利用

80端口打开可以先对其分析,是不是内容管理系统。

这样一个页面,看起不来并不像CMS,在源代码中也没有发现,CMS的名字。

目录扫描:

​
Dirb http://10.10.10.100/

可以看到目录扫描也发现/blog

http://10.10.10.100/
http://10.10.10.100/blog/
有这两个主要的资产

 

在这个页面可以看到存在登录注册的功能,尝试注册一个账号登录

 看见登录窗口,就尝试是否存在sql注入,‘

报错说明存在sql注入,尝试sql注入万能密码

 or 1=1 #

第一张可以看到使用万能密码登录的用户,可能是管理员用户,第二张是我自己注册的账号登录的,两个账号登录都卡住在logging in 中,都无法登录进去。(其实到这里我们应该觉得这一块走不通的,登录不进去的,这块可能是作者设置的兔子洞,应该换资产进行测试了

因为登录窗口存在sql注入,sqlmap直接梭哈

发现了账号密码,并对密码进行破解,获得了admin@isints.com :killerbeesareflying 

WAF:检测到 SQL 注入攻击。详细信息已记录。拒绝会话。再见!

开来sql注入获取的用户不能登录啊,不让我们用这种方式通关

http://10.10.10.100/blog/

 

在blog目录下存在这样一个页面,第一步也是分析是否是内容管理系统,这样的页面看起来很像是CMS,查看源码:

因为源代码没有自动换行,观察起来很麻烦,可以点左上角的换行,方便观察

找到一个类似cms名字的东西,有版本号,上网搜搜

分析web是什么cms,还可以利用工具whatweb。

whatweb指纹识别:

指纹识别工具WhatWeb使用教程,图文教程(超详细)-CSDN博客

whatweb http://10.10.10.100/blog/

 知道网站是一个内容管理系统后,就可以使用searchsploit搜索该内容管理系统出现过的历史漏洞

searchsploit搜索历史漏洞:

Searchsploit  Simple PHP Blog 0.4.0

 筛选可利用漏洞,最后一个代码执行漏洞,但是是msf exp,所以我们不使用,尝试利用倒数第二个,

将利用文件镜像下载下来,查看使用方法:

给出了一些利用参数:

该利用文件后缀为pl,是perl语言写的脚本文件,既然是脚本文件,运行其文件就需要解析器,perl就是pl文件的解析器

什么是perl?

Perl被称为"骆驼"语言。发明perl的Larry Wall就说过:“Perl可能不好看或者不好闻,但是它能完成任务”。
Perl是文本处理语言,它最初就是为了这个目的设计的。
Perl是网络编程语言,它内置了socket/client-server协议。
Perl是系统管理语言,全球网络很多服务器上就运行着它的脚本。很多时候是单行的脚本。
Perl是Web脚本编写语言。至今它仍然是最流行的几种web脚本编写语言之一。

 依次尝试参数

perl 1191.pl -h http://10.10.10.100/blog -e 1

 貌似把用户名和密码改成a :a了尝试登录

Simple PHP blog登录成功-图片上传getshell

登录成功新增加了很多功能,其中我们最感兴趣的就是上传图片

上传payload,上传成功

 发现了一个路径,目录扫描也有images目录,打开看看

发现payload,该目录下还有其他php文件,使用该目录能够php解析 

获得初步立柱点

3.提权-敏感文件泄露密码泄露尝试登录

 确定获得目录主机ip地址,获得 www-data 用户的shell,是一个功能型用户,权限较低,linux kernel 版本 2.6.38 

Sudo -l 

需要密码才能查看用户权限。

cat /etc/passwd

 

cat /etc/shadow

没权限查看;定时任务中也没有可以利用的点,内核提权?不先去看看有没有存放敏感文件,因为是一套内容管理系统,一定存在链接数据库的配置文件。

发现数据库配置文件,找到root 的密码goodday,尝试mysql登录结果,密码不正确,这就需要一个思路,这是一个还能正常运行的web,数据库配置文件的数据库密码都是错误了,这怎么可能,只有一个原因,有了新的数据库配置文件,新的数据库密码,原来的文件没有使用了。

find / -name ‘mysqli_connect.php’

发现第二个root密码

root@ISIntS

获得了数据库root权限的密码,可以先去尝试,该密码是否是该靶机root用户的密码,因为很多管理者,都为了方便,将不同设备的密码设置为一样的(运维人员和后台管理员完全有可能为了图方便而将数据库与ssh的密码设置为相同,警醒我们要有安全意识,不要多个账号都设置相同的密码

ssh登录成功,root权限(如果不成功还有goodday或者登录数据库获取信息等利用点

 4.总结:

本篇靶场在权限提升的地方存在了巧合,数据库root密码和操作系统root用户密码相同,在真实环境中这样的可能性可能不高,但是也不是完全没有可能,我们做渗透测试就是要把所有的可能性都去尝试。靶场思路总结:

1.主机发现和端口扫描:开放了22和80端口,我们从80为web攻击面广。

2.80端口CMS漏洞利用:发现/blog目录下的web是CMS,搜索历史漏洞并利用,进入后台图片上传getshell

3.数据库敏感信息提权:可知web端部署了CMS,存在对数据库的操作,寻找数据库配置文件获得root密码,尝试ssh登录。

4.提权:数据库密码登录 root ssh成功

工具上的学习:

whatweb:指纹识别工具
perl语言;

思路上的学习:

运维人员和后台管理员完全有可能为了图方便而将数据库与ssh的密码设置为相同,获得比较重要的密码,都可以互相尝试

 

  • 26
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值