Prime_Series_Level-1
0x01 先收集靶机端口,目录信息
1)nmap扫描端口
开启了ssh服务和apache服务,搜索相关漏洞
只有一个ssh用户名枚举,先放着
2)dirb爆破目录
dirb http://192.168.0.102
发现两个可以目录
/dev目录内容:意思让我们更深层次的挖掘目录信息
/wordpress 可知这是一个wp博客
还有管理员登陆页面,但不知道账号密码
0X02 按照以上信息和提示操作
1) dirb爆破
dirb http://192.168.0.102 -X .txt,.html,.php
得到一个secret文件
2) wpscan 扫描wordpress
找到16个疑似注入点,在这里都没什么用
0X03 查看secret文件
让我们Fuzz出正确的参数,查看location.txt文件
0X04 Fuzz参数
使用wfuzz模糊查找参数 (不会wfuzz -h)
wfuzz -c -w /usr/share/wordlists/wfuzz/general/common.txt --hc 404 http://192.168.0.102/index.php?FUZZ=qwer
发现word等于12的很多,过滤 --hw 12
wfuzz -c -w /usr/share/wordlists/wfuzz/general/common.txt --hc 404 --hw 12 http://192.168.0.102/index.php?FUZZ=qwer
得到正确参数file,加载location.txt
得到提示在别的php页面上使用secrettier360参数,之前还爆出来一个image.php页面
成功加载出passwd文件,CTRL+u 查看内容
根据上图得到的信息
浏览http://192.168.0.102/image.php?secrettier360=/home/saket/password.txt
得到密码
follow_the_ippsec
0X04 整理信息
两个账号:saket victor
一个密码:follow_the_ippsec
可能是ssh或者wordpress的
两个账号连接ssh失败,成功使用victor登陆进wordpress管理界面
0X05 通过wordpress获得webshell
查看wordpress编辑器
各样式和插件的编辑器里查找有写入更新权限的文件,只有样式编辑器里secret.php文件可以保存,思路就是编写恶意php代码,使用msf生成恶意php代码
将恶意代码写入secret.php保存,启动msf监听,访问 http://192.168.0.107/wordpress/wp-content/themes/twentynineteen/secret.php
可以看到shell上线
查看版本信息为 4.15.0-76
谷歌搜索 4.15.0-76 kernel exploit
内核提权
随机推荐
- Golang - 指针与引用
Golang有指针 , 那么一切数据都是值传递吗 ? 都需要用户进行指针传递吗, 其实不然, 对于Go语言, 虽然有指针, 但是其也有引用传递. 是不是很绕, 因为引用传递就是指针传递哇 . 我们 ...
- try catch finally的理解
定义以及用法: try/catch/finally 语句用于处理代码中可能出现的错误信息. 错误可能是语法错误,通常是程序员造成的编码错误或错别字.也可能是拼写错误或语言中缺少的功能(可能由于浏览器差 ...
- 脚本在Shell可以执行成功,放到crontab里执行失败
一.背景 自己写了个监控MGR状态的脚本,直接在Linux的Shell环境下可以执行成功,但是只要放到crontab里执行,就失败,脚本内容如下 #!/bin/bash MAIL_ADDR=`cat ...
- JWT | io.jsonwebtoken.security.WeakKeyException: The signing key's size is 1024 bits which is not se
背景 今天集成JWT的时候,选用了PS256算法,在用使用PGP KEY作为私钥JWT进行签名的时候,报了如下错误: "C:\Program Files\Java\jdk1.8.0_161\ ...
- 分享数百个 HT 工业互联网 2D 3D 可视化应用案例之 2019 篇
继<分享数百个 HT 工业互联网 2D 3D 可视化应用案例>2018 篇,图扑软件定义 2018 为国内工业互联网可视化的元年后,2019 年里我们与各行业客户进行了更深度合作,拓展了H ...
- js中 call() 和 apply() 方法的区别和用法详解
1.定义 每个函数都包含俩个非继承而来的方法:call() 和 apply() call 和 apply 可以用来重新定义函数的的执行环境,也就是 this 的指向:call 和 apply 都是 ...
- RestTemplate远程调用方法
概述: spring框架提供的RestTemplate类可用于在应用中调用rest服务,它简化了与http服务的通信方式,统一了RESTful的标准,封装了http链接, 我们只需要传入url及返回值 ...
- 深入理解windows 消息机制
深入理解Windows消息机制 今天我们来学一学Windows消息机制,我们知道在传统的C语音程序中,当我们需要打开一个文件时,我们可以调用fopen()函数,这个函数最后又会调用操作系统提供的函数以 ...
- sql中常量和变量的引用
String name =jtf.getText().trim(); String sql="select * from stu where stuname=' "+name+& ...
- 深入分析Java反射(三)-泛型
前提 Java反射的API在JavaSE1.7的时候已经基本完善,但是本文编写的时候使用的是Oracle JDK11,因为JDK11对于sun包下的源码也上传了,可以直接通过IDE查看对应的源码和进行 ...