《CTF特训营》web部分读书笔记(五)代码审计

前言

继续阅读《CTF特训营》web部分
本节是代码审计

1、源码泄露

备份文件

文本备份,以index.php为例

  • .index.php.swp
  • .index.php.swo
  • index.php~
  • index.php.bak
  • index.php.txt
  • index.php.old

整站源码备份
常见文件名

  • www
  • wwwdata
  • wwwroot
  • web
  • webroot
  • backup
  • dist

再加上各种压缩文件后缀名

git泄露

一种是某个网站存在明显特征字符串
可能通过github的搜索获取源码
例子:NJCTF2017的一道题目

通过githack工具可能可以获取源码
然后寻找对应commit的hash

svn泄露

类似git
工具推荐svn-extractor

利用漏洞泄露

主要是任意文件包含漏洞或任意文件存在下载漏洞

  • http://xxx.com/download.php?file=a.pdf
  • http://xxx.com/show_image.php?file=1.jpg
  • http://xxx.com/read.aspx?file=./upload/1.txt

将file参数修改为../index.php即可利用漏洞下载源码

2、代码审计的技巧

小型代码

审计步骤

  • 找到各个输入点
  • 找到针对输入的过滤并尝试绕过
  • 找到处理输入的函数查看有误漏洞
  • 找到漏洞进行利用

大型代码

审计步骤

  • 找到危险函数
  • 回溯寻找可用输入点
  • 尝试绕过针对输入点的过滤
  • 寻找出发漏洞的方法

审计工具

推荐免费的seay源代码审计系统和收费的RIPS

结语

主要是些代码审计的技巧和要点
还是要多做题练习

你可能感兴趣的:(ctf)