AWD比赛笔记

一.防御策略

  1. 命令注入漏洞

a)       例 str1 = $_POST[‘cmd’],在str1 前连接 字符”#”注释字符,str1 = “#”. $_POST[‘cmd’]

b)        

  1. 上传文件漏洞

a)       注释上传写入代码.

b)        

  1. 文件包含漏洞

a)       修改php.ini文件

allow_url_fopen    on

allow_url_include   on

                  修改为

allow_url_fopen    off

allow_url_include   off

b)        

  1. 远程代码执行漏洞

a)       注释危险函数:system() exec_shell() eval() assert() create_function() preg_replace() file_put_contents()

b)        

  1. 缓冲区溢出漏洞

a)       目前参考”7.Linux权限漏洞”,进行防御.

b)        

  1. 系统后门漏洞

a)       直接删除后门程序

b)       “Ps –ef|grep bash”命令查看是否有bash后门程序

c)        “ss -ltnp”命令查看,是否有后门程序监听端口

d)       从上两个步骤找到该程序pid,用”kill pid”命令结束后门bash程序

e)       在web网站目录下,查看文件内容找到webshell或一句话木马,进行删除文件或注释代码

f)         

  1. Linux权限漏洞

a)       “PS –ef|grep httpd”命令查看 Apache服务是否是root执行该服务,若是修改/etc/httpd/httpd.conf 文件找到”user” “group”字段后加上apache apache,重启httpd服务。使Apache服务是apache用户执行该服务.

b)       修改/bin/cat /bin/echo等关键命令二进制文件,改成其名称,让其攻击者无法利用bash读取flag文件内容.

c)       修改/root/flagxxxxx.txt文件的权限,

                                     i.        chmod 000 /root/flagxxxxx.txt

                                    ii.        chown apache:apache /root/flagxxxxx.txt

d)        

   1.防XSS

作为body文本输出,作为html标签的属性输出:

比如:<span>${username}</span>, <p><c:out value="${username}"></c:out></p>

<input type="text" value="${username}" />

此时的转义规则如下:

< 转成 &lt;

> 转成 &gt;

& 转成 &amp;

" 转成 &quot;

' 转成 &#39

javascript事件

<input type="button" οnclick='go_to_url("${myUrl}");' />

除了上面的那些转义之外,还要附加上下面的转义:

\ 转成 \\

/ 转成 \/

; 转成 ;(全角;)

e) URL属性

如果 <script>, <style>, <imt> 等标签的 src 和 href 属性值为动态内容,那么要确保这些url没有执行恶意连接。

确保:href 和 src 的值必须以 http://开头,白名单方式;不能有10进制和16进制编码字符。

?:传参参数,代表是动态的

Title:传参函数名

:传参内容的值(这就是url编码解码后变成“个人简介”,一般反射型XSS的注入点)

 

f)上传waf

如果是框架写出的web就很好部署了,直接require在重写文件或者数据库文件中,如果是零散的php文件,那也有办法,如果是fastcgi(nginx,IIS比较常见)运行的php就在.user.ini加一句,具体百度一下.user.ini的后门,原理一样。其他情况也可以写个脚本强行在每个PHP前面加一句,脚本代码的样例也会放出来。(当然apache也可以.htaccess强行重写到waf再转回原页面,但是万一没重写环境呢)

 

1.将waf.php传到要包含的文件的目录

2.在页面中加入防护,有两种做法,根据情况二选一即可:

a).在所需要防护的页面加入代码

require_once ( 'waf.php' );

就可以做到页面防注入、跨站

如果想整站防注,就在网站的一个公用文件中,如数据库链接文件config.inc.php中!

添加require_once('waf.php');来调用本代码

常用php系统添加文件

PHPCMS V9 \phpcms\base.php
PHPWIND8.7 \data\sql_config.php
DEDECMS5.7 \data\common.inc.php
DiscuzX2   \config\config_global.php
Wordpress   \wp-config.php
Metinfo   \include\head.php

b).在每个文件最前加上代码

在php.ini中找到:

Automatically add files before or after any PHP document.

auto_prepend_file = waf.php路径;

 

 

二.夺旗战术

  1. 防止网络卡顿延迟等待,采用从靠后的IP往前进行批量测试,例192.168.1.x,测试顺序192.168.1.254, 192.168.1.253, 192.168.1.252……192.168.1.3, 192.168.1.2, 192.168.1.1
  2. 写脚本批量测试顺序:远程代码执行漏洞 文件包含漏洞,能够直接读取flag的漏洞先考虑,然后考虑手动测试 远程溢出漏洞
  3. 在远程执行命令获取flag之后,修改其对手管理员密码,删除flag文件,并重启该系统,让其他队伍服务继续二次得分。
  4. 批量脚本代码框架准备(其中执行命令参考3战术,攻击者环境Kali,python2)

  a)       批量利用远程代码执行漏洞,进行获取flag

   b)       利用文件包含执行php函数 system()

  c)        利用弱口令,准备bash shell脚本 批量连接ssh

  d)       批量连接nc执行命令脚本

  e)        

 

转载于:https://www.cnblogs.com/WhiteHatKevil/p/10063963.html

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AWD(Attack With Defense)比赛是一种以攻击与防守相结合的网络安全竞赛。比赛中使用的后门通用脚本是指用于在攻击者控制的主机上安装和管理后门,以达到控制目标系统的目的。通常,这样的脚本具有以下特点: 1. 后门安装:该脚本能够在目标主机上安装后门程序,通常是通过利用已知或未知的漏洞来获取系统访问权限。安装后门的方式可以有多种,如利用弱口令、利用系统漏洞等。 2. 远程管理:脚本提供了远程管理后门的功能,攻击者可以通过指定的命令或入口来访问、控制后门。这样,攻击者可以执行各种操作,包括文件上传、文件下载、命令执行等。 3. 隐藏性:为了避免被目标系统的安全工具检测到,后门通用脚本通常会具有一定的隐藏性。例如,可以隐藏在系统可执行文件、服务、注册表等位置,通过修改文件属性或命令行参数等方式来掩盖自身的存在。 4. 持久性:为了实现长期控制目标系统的目的,后门通用脚本会在系统启动时自动运行,并在后台持续执行。同时,它还会添加自启动项或修改系统配置文件,以保证后门的持久性。 5. 兼容性:通用脚本要具备较好的兼容性,能够适应不同操作系统、不同版本的环境。因此,脚本会进行环境检测,根据目标系统的特征自动选择合适的攻击方式和后门类型。 需要注意的是,使用后门通用脚本进行攻击是非法和道德上不可接受的行为。这种行为侵犯了他人的隐私和安全,在现实生活中是严重被打击的。在网络安全领域,应当强调合法、合规的操作和防御手段,遵循法律法规和道德规范。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值