标签搜索

CTF竞赛学习(入门)

Augenstern
2024-10-17 / 0 评论 / 1 阅读 / 正在检测是否收录...

起因

本来凑数参加江苏金融监管局的金融业网络安全竞赛,但莫名其妙就进了决赛,可我们三个人纯门外汉,啥也不懂,公司领导为了不让决赛成绩太难看,请到了外面的某安全公司给我们培训CTF,当然一天速成,学到的东西估计也很入门偏概念,这里简单做个记录。

CTF竞赛指南

CTF简介

CTF(Capture The Flag,夺旗赛)是一种流行于网络安全技术人员之间的一种信息安全技术竞赛。其前身是传统黑客之间网络技术比拼的游戏,以代替之前黑客们通过互相发起真实攻击进行技术比拼的方式。起源于1996年第四届DEFCON。现在已成为全球范围网络安全圈流行的竞赛形式。

通常CTF分为三种赛制:解题赛(Jeopardy)攻防赛(Attack-Defence)混合赛

竞赛模式基本分为解题模式、攻防模式和混合模式。大多题目的内容基本包括web安全,密码学、逆向、二进制安全编程类题目等国内外有很
多CTF比赛。

解题赛是线上赛通常采取的赛制,题目通常分为多个类型,如Web,Forensic(取证),Crypto(密码学),Binary(二进制)等。团队或个人可以通过解题获得一串具有一定格式的字符串,也就是flag。将flag提交到竞赛平台可以获得积分。题目的难度越大,分值就越高。当比赛结束后,得分最高者胜出。

攻防赛是另一种有趣的赛制,常见于线下决赛。攻防赛中,每个队伍都会被分配一台主机或虚拟机,称为gamebox,队员可以通过网络连接到gamebox。而所有队伍的gamebox通过内网连接在一起。每个队伍的gamebox上都运行着多个相同的服务。参赛队伍需要挖掘服务的漏洞,然后攻击其他队伍的服务来获取flag,并提交给计分服务器来获取积分。与此同时,参赛队伍还需要修补自身服务中的漏洞来防止丢分。攻防赛不仅考验了参赛选手的技术水平,还考验了参赛者的体力,因为通常参赛者需要连续混合赛可能采取解题赛和攻防赛的混合模式,也可能是其他形式。

Web

OWASP

基于web渗透测试选用到的手段,OWASP(开放式Web应用程序安全项目)所给出的web危险Top10基本上涵盖 了大部分,其中包含注入漏洞、中断身份认证、敏感数据泄露、xxe、中断访问控制、安全配置错误、xss、反 序列化、使用含有已知漏洞的组件、不足的记录和监控漏洞。

  • 注入漏洞
  • 失效的身份认证
  • 敏感数据泄露
  • XXE
  • 失效的访问控制
  • 安全配置错误
  • XXS
  • 不安全的反序列化
  • 使用含有已知漏洞的组件
  • 不足的日志记录和监控
CSRF

CSRF(Cross Site Request Forgery) 是指跨站请求伪造,是一种挟制终端用户在当前已登录的Web应用程 序上执行非本意的操作的攻击方法。攻击者只要借助少许的社会工程诡计,例如通过电子邮件或者是聊天软件发送的链接,受害者一旦点击链接,攻击者就能迫使受害者的浏览器在已经登录过的网站上去执行特定操作。

CSRF攻击原理

  1. 用户C打开浏览器,访问受信任网站A,输入用户名和密码请求登录网站A;

2.在用户信息通过验证后,网站A产生Cookie信息并返回给浏览器,此时用户登录
网站A成功,可以正常发 送请求到网站A;

  1. 用户未退出网站A之前,在同一浏览器中,打开一个TAB页访问网站B;
  2. 网站B接收到用户请求后,返回一些攻击性代码,并发出一个请求要求访问第三方站点A;
  3. 浏览器在接收到这些攻击性代码后,根据网站B的请求,在用户不知情的情况下携带Cookie信息,

向网站 A发出请求。网站A并不知道该请求其实是由B发起的,所以会根据用户C的Cookie信息以C的
权限处理该请 求,导致来自网站B的恶意代码被执行。

SSRF
SSRF(Server-Side Request Forgery: 服务器端请求伪造):是一种由攻击者构造形成由服务端发起请求的一个安全漏洞。一般情况下,SSRF攻击的目标是外网无法访问的内部系统。正是因为它是由服务端发起的,所以它能够请求与它相连而与外网隔离的内部系统。

危险函数:

  • fsockopen()
  • file_get_contents()
  • curl_exec()
信息泄露

信息泄露漏洞是由于web服务器没有正确处理一些特殊请求或者系统管理员对于应用设置及操作不规范,泄露服务器或者应用的敏感信息,如用户名,密码、源代码、服务器信息、配置信息、物理路径信息利用等。 该类信息的泄露容易造成恶意人员的利用,为达到进一步的攻击系统打下基础。

目录遍历

目录遍历漏洞是攻击者向web服务器发送请求,通过在url中或者在有特殊意义的目录中附加”../“、或者附 加”../“的一些变形(如“..”或“..//”甚至其编码),或类似的跨父目录字符串,完成目录跳转,读取操 作系统各个目录下的敏感文件。导致攻击者能够访问未授权的目录,以及能够在未授权的web服务器的根目录外执行命令

文件上传

文件上传漏洞是指网络攻击者上传了一个可执行的文件到服务器并执行。这里上传的文件可以是木马,病毒, 恶意脚本或者WebShell等。这种攻击方式是最为直接和有效的,部分文件上传漏洞的利用技术门槛非常的低,对于攻击者来说很容易实施。

任意文件查看与下载

一些网站由于业务需求,往往需要提供文件查看或文件下载功能,但若对用户查看或下载的文件不做限制, 则恶意用户就能够查看或下载任意敏感文件,这就是文件查看与下载漏洞。

越权访问

顾名思义,这类漏洞是指应用在检查授权(Authorization)时存在纰漏,使得攻击者可以利用一些方式绕 过权限检查,访问或者操作到原本无权访问的代码或内容。

  • 水平越权:获取水平层级的权限,比如其他用户的权限信息
  • 垂直越权:获取垂直层级的权限,比如说普通用户获取admin权限
命令执行

没有针对代码中可执行的特殊函数入口做过滤,导致客户端可以提交恶意构造语句提交,并交由服务器端执 行。命令注入攻击中WEB服务器没有过滤类似system(),eval(),exec()等函数是该漏洞攻击成功的最主要原因。

Crypto

之前的密码学笔记

CTF-Crypto

Misc

信息隐写

信息隐写技术(隐写术),也称为信息伪装技术,是一门近年来蓬勃发展,已逐渐的在信息安全领域受到关注的学科。它是将某一机密信息秘密隐藏于另一公开的信息(载体)中,然后通过公开信道传输来传递机密信息。第三方难以从公开信息中判断机密信息是否存在,实现隐秘通信或隐蔽标识,保证机密信息的安全与唯一。

文件隐写

格式类型文件头标识文件尾标识
jpeg/jpgFFD8FFD9
gif47 49 46 38 39(37) 61
png89 50 4E 47 0D 0A 1A 0A00 00 00 00 49 45 4E 44 AE 42 60 82
bmp42 4D(B M)
tiff4D 4D 00 2A / 49 49 2A 00
压缩包破解
  • zip/rar爆破

Windows下的神器 ARCHPR:暴力枚举,跑字典,明文攻击

明文攻击是一种较为高效的攻击手段,大致原理是当你不知道一个zip的密码,但是你有zip中的一个已知文件(文件大小要大于12Byte)或者已经通过其他手段知道zip加密文件中的某些内容时,因为同一个zip压缩包里的所有文件都是使用同一个加密密钥来加密的,所以可以用已知文件来找加密密钥,利用密钥来解锁其他加密文件。

CRC32碰撞CRC 本身是「冗余校验码」的意思,CRC32则表示会产生一个32bit(8位十六进制数)的校验值。由于CRC32产生校验值时源数据块的每一个 bit (位)有一位发生了变化,也会得到不同的CRC32值。CRC32校验码出现在很多文件中比如png文件,同样zip中也有CRC32 校验码。值得注意的是zip中的CRC32是未加密文件的校验值。这也就导致了基于CRC32的攻击手法。文件内内容很少(一般比赛中大多为4字节左右)加密的密码很长我们不去爆破压缩包的密码,而是直接去直接爆破源文件的内容(一般都是可见的字符串),从而获取有效信息

  • zip伪加密

其实不是真的加密,只是修改了加密位

数据包分析

数据包分析,通常也被称为数据包嗅探或协议分析,指的是捕获和解析网络上在线传输数据的过程。数据包分析过程通常由数据包嗅探器来执行。而数据包嗅探器则是一种用来在网络媒介上捕获原始传输数据的工具。目前市面上有着多种类型的数据包嗅探器,包括免费的和商业的。每个软件的设计目标都会有一些差异。流行的数据包

分析软件包括tcpdump、Wireshark等。

Reverse

逆向分析主要是将二进制机器码进行反汇编得到汇编代码,在汇编代码的基础上,进行功能分析。经过反编译生成的汇编代码中缺失了源代码中的符号、数据结构等信息,因此需要尽可能地通过逆向分析还原以上信息,以便分析程序原有逻辑和功能。逆向分析主要包括静态和动态分析。

Pwn

利用程序中的漏洞改变程序本来的执行流程

Pwn在黑客俚语中代表着攻破,获得权限,由"own"这个词引申而来。在CTF比赛中它代表着溢出类的题目,常见的类型有整数溢出、栈溢出、堆溢出等。主要考察参赛选手对漏洞的利用能力。所需知识:C、OD+IDA、数据结构、操作系统。

AWD

对抗模式:AWD(attack with defence)攻防兼备模式,AWD模式是一个非常有意思的模式,你需要在一场比赛里扮演攻击方和防守方,攻击成功得分,失守也会扣除相应的分数。在比赛中,评分的关键点是flag,通过漏洞攻击敌方得到flag,可以获取相应的分数;反之,失守flag会被扣除相应的分数。从而模拟现实的网络攻击防御,以此提高选手的网络攻防能力。

常见加固方法

  • 信息收集
  • 密码修改
  • 网站备份
  • 数据库备份
  • 后门查杀
  • 可疑服务和端口关闭
  • 源码审计
  • 漏洞验证
  • 漏洞修复
  • 文件监控
  • WAF部署
0

评论 (0)

取消