AWD认识和赛前准备

AWD介绍

AWD: Attack With Defence, 北赛中每个队伍维护多台服务器,服务器中存在多个漏洞,利
用漏洞攻击其他队伍可以进行得分,修复漏洞可以避免被其他队伍攻击失分。
一般分配Web服务器,服务器(多数为Linux)某处存在flag(一般在根目录下);
可能会提供一台流量分析虚拟机,可以下载流量文件进行数据分析;

flag在主办方的设定下每隔一定时间刷新一轮;
各队一般都有自己的初始分数
flag一旦被其他队伍拿走,该队扣除一定积分扣除的积分由获取flag的队五均分;
主办方会对每个队伍的服务进行check,服务启机扣除本轮flag分数,扣除的分值由服务check正常的队伍均分;
一般每个队伍会给一个低权限用户,非root权限

 网络环境

网络环境
比赛中获取flag一般有两种模式:
(1)flag在根目录下,读取ag内容,提交即可得分
(2)拿到其他队伍sheil后,执行指定命令(curl 10.0.0.2),即可从上图中flag机获取flag内容;
比赛可能会告诉你其他队伍的IP,也可能不会告诉你,一般在同一个C段或者B段,因此首先可以利用nmap等扫描工具发现其他队伍的IP:
nmap -sn 192.168.71.0/24
或者用https://github.com/zeroh/httpscan 的脚本进行扫描

 系统、服务日志分析

为什么需要日志分析?

日志分析最直主要的两个目的:

  • 网站安全自检查,了解服务器上正在发生的安全事件
  • 作为网站管理运维等人员必须实时的了解服务器的安全状况,避免造成不必要的损失。
  • 应急事件中的分析取证。
  • 当已经因为黑客攻击造成损失时,可以通过日志分析等各种应急措施尽量挽回损失如何进行日志分析 日志分析工具,记录log脚本。感知可能正在发生的攻击,从而规避存在的安全风险

 如何进行日志分析

日志分析工具,记录log脚本。感知可能正在发生的攻击,从而规避存在的安全风险

 脚本:

<?php
date_default_timezone_set('Asia/Shanghai);	
$ip =$_SERVER["REMOTE_ADDR"];//记录访问者ip
$filename=$_SERVER['PHP_SELF'];//访问者要访问的文件名
$parameter=$_SERVER["QUERY_STRING"];//访问者要请求的参数
$time=date('Y-m-d H:i:s',time());//访问时间
$logadd='来访时间:'.$time.'-->'.'访问链接:'.'http://'.$ip.$filename.'?'.$parameter."\r\n";

//log记录
$fh=fopen("log.txt","a");
fwrite($fh,$logadd);
fclose($fh);
?>

 工具:

 web日志取证分析工具 - 实验室 - 腾讯安全应急响应中心

日志分析中存在的难题

对于日志的安全分析, 可能会有如下几个问题:

  • 日志中POST数据是不记录的
  • 状态码虽然表示了响应状态,但是存在多种不可信情况,如服务器配置自定义状态码。
  • 攻击者可能使用多个代理IP
  • 无恶意webshell访问记录
  • 攻击者避开了关键字检索
  • APT攻击
  • 日志数据噪声

常用套路

比赛开始

  1. ssh连接上去,备份代码
  2. d盾查代码webshell,有shell就删除,然后快速利用
  3. 上log与waf,看情况是否上通防,如果check太严考虑是被别人攻击失分多还是宕机扣分多
  4. 上文件监控
  5. 有必要就数据库备份,数据库降权

比赛中期

  1. 自己的防护措施搞定后就不停地挖洞,要相信cs框架地洞是挖不完的
  2. 被打就看log,考虑上通防
  3. 中不死马就killall apache、ps aux|grep-v grep|grep-vPID|cut-c9-|5|   xargs kill -9

 准备的工具

  • ssh客户端(Xshell)、sftp|scp客户端
  • 攻击框架(批量打全场)(不死马,软连接马等也可以提前准备)
  • log与waf
  • 文件监控
  • d盾
  • cshell

waf参考:CTF——AWD模式小总结_awd网络安全-CSDN博客

 

  • 23
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在运行Python脚本时,我们可以使用AWD(也称为Auto Web Discovery)来轻松地启动和管理Python的Web应用程序。 首先,确保已经安装了Python解释器。在命令行窗口中,可以输入"python --version"来检查Python版本。如果未安装Python,则需要先下载并安装。 接下来,我们需要安装AWD库。可以使用pip命令来安装。在命令行窗口中输入"pip install awd",等待安装完成。 安装完成后,可以通过在命令行窗口中输入"awd init"来初始化AWD。这将在当前目录下创建一个awd.ini文件,其中包含必要的配置信息。 然后,可以创建一个Python脚本,用以编写我们的Web应用程序。例如,可以使用Flask框架来创建一个简单的Web应用程序。在脚本中,我们需要导入Flask库,并定义一个应用对象。可以指定路由和处理函数来处理不同的URL请求。 完成脚本编写后,可以使用"awd run"命令来运行我们的Web应用程序。这将自动启动一个本地服务器,并将Web应用程序绑定到指定的主机和端口上。 在浏览器中输入指定的主机和端口,就可以访问我们的Web应用程序了。例如,如果我们将应用绑定到localhost和5000端口上,可以在浏览器中输入"http://localhost:5000"来访问。 同时,AWD还提供了其他功能,例如自动重新加载和处理静态文件等。这些功能可以在awd.ini文件中进行配置。 总的来说,AWD可以帮助我们更方便地运行和管理Python的Web应用程序,使得开发过程更加高效和便捷。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值