DC-1靶机渗透全流程详细

渗透环境:

攻击机Kali(Linux) IP:192.168.211.1

靶机:DC-1.ovk(Linux)  IP:未知

首先导入DC-1靶机到VM中,并且开启靶机

将靶机与攻击机设置在同一网段下,这样靶机才能被攻击机扫描到,可以同时设置为桥接或者NAT模式。

一、检测同一网段下的IP

使用工具arp-scan

扫描当前网段所有IP:

arp-scan -l

 可以看到扫出来三个,如果不确定靶机IP是哪一个可以看看它的MAC地址

由此可以确定靶机IP为:192.168.211.131

扫描IP也可以用其他的

使用工具Nmap扫描

Nmap命令:

nmap -sP 192.168.211.0/24

 Netdiscover:  命令:Netdiscover

二、端口及服务扫描

确定IP之后就是扫描哪些端口开放了,确定其服务

Nmap端口扫描:

使用命令:nmap -sV -p- 192.168.211.131

也可以:nmap -sS 192.168.211.131

-sV  扫描目标主机端口上运行的软件信息

-p-  扫描全部端口0-65535

-sS   半扫描(建议):nmap -sS ip -p-

结果:

发现了22和80端口,80端口是http协议端口,可以被访问,22端口是ssh远程登录端口,只要知道账号和口令密码就能远程登录

现在我们去访问一下80端口

用Wappalyzer指纹识别,看看能不能找出来是什么CMS框架

也可以用kali自带的工具whatweb

whatweb扫描

也能扫出来

寻找CMS框架漏洞

找到CMS是drupal,版本是7,那么就可以用工具找这个框架的漏洞了

用metaspolit找这个CMS框架的漏洞

也可以用Searchsploit

用metaspolit找到漏洞如下

采用编号为1的漏洞,直接getshell

使用漏洞1,查看有哪些选项

在第三步位置上设置好目标机的IP

接下来就可以开始攻击了

看到这样的就是连接成功可以shell了

这样的页面有些不方便,使用python实现交互shell

语句:python -c 'import pty; pty.spawn("/bin/bash")'(需对方主机安装有python)

看看是在哪个用户下

不是root,但是先看看有哪些文件吧

Flag1文件提示我们注意配置文件,去网上搜索drupal的配置文件是在settings.php里面,查找这个文件

查找并打开命令:

cat `find / -name settings.php`

打开之后发现flag2在这个配置文件里面

 也发现了关于数据库的配置

三、登入数据库

登录 mysql -udbuser -pR0ck3t 成功进入

使用数据库drupaldb,看看能不能找到账号密码,去登录之前使用80端口访问的页面

它的密码是经过加密了的

这个时候有两种办法,一是找到密码的加密规则,修改admin或Fred账户的密码,二是再增加一个admin用户。

修改密码

先找到drupal的加密文件

用这个加密文件搞一个密码出来,生成666666的加密形式

然后回到数据库修改admin的密码

可以看到已经更改成功了

网页登录

登录成功,找到flag3

提示passwd和shadow

/etc/passwd

该文件存储了系统用户的基本信息,所有用户都可以对其进行文件操作读

/etc/shadow

该文件存储了系统用户的密码等信息,只有root权限用户才能读取

现在我们的权限只能看/etc/passwd的。

命令:

cat  /etc/passwd

 

有flag4用户

我们有两个方法拿到这个用户的密码,一个是爆破,另一个就是提权打开shadow文件查看密码

爆破:

通过前面的信息收集,知道了该靶机开启了22端口,也就是ssh可远程登录服务

关于ssh

安装ssh:

sudo apt-get install openssh-client 
sudo apt-get install openssh-server 

查看本机ssh服务情况:

dpkg -l | grep ssh 

首先确认ssh-server是否已经启动了:

ps -e | grep ssh 

开启ssh服务命令: 

sudo /etc/init.d/ssh start 

停止和重启ssh服务的命令如下:

sudo /etc/init.d/ssh stop  #server停止ssh服务

sudo /etc/init.d/ssh restart  #server重启ssh服务

登录:

ssh 客户端用户名@服务器ip地址  eg:

ssh ldz@192.168.0.1

ssh登录有两种方法,一种是通过账号和口令登录,还有一种是验证公钥

现在我们有了账号,只要爆破出密码,就能远程登录该账户

使用Kali工具Hydra爆破flag4的密码

命令:

hydra -l flag4 -P /usr/share/wordlists/rockyou.txt.gz ssh://192.168.211.131

 

密码是orange

现在账号密码都有了,开启ssh服务登录

首先确认ssh-server是否已经启动了:

ps -e | grep ssh

这个标志是已启动,如果没有就开启,开启命令:sudo /etc/init.d/ssh start

登录账户

Flag4提示root,看来还是要提权到root账户

四、提权

SUID提权

简述就是一些进程拥有root权限,在使用这些进程的时候是root用户的权限,据此用来提升权限。

利用find命令,找查具有SUID权限的可执行二进制文件

找到find命令拥有suid权限

然后使用这个命令提权,查找一个存在的文件,后面加上-exec "/bin/sh" \;

这个时候发现已经是root了

 现在可以查看/etc/shadow文件了

 

 

哈哈哈哈哈它把密码加密了

ls找到最后一个flag

 若有错处,欢迎指正

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值