跟踪用户输入数据和敏感函数参数回溯

跟踪用户的输入数据,判断数据进入的每一个代码逻辑是否有可利用的点,此处的代码逻辑 可以是一个函数,或者是条小小的条件判断语句。

敏感函数参数回溯,根据敏感函数,逆向追踪参数传递的过程。这个方法是最 高效,最常用 的方法。大多数漏洞的产生是因为函数的使用不当导致的,只要找到这些函数,就能够快速 挖掘想要的漏洞。

以下是基于关键词审计技巧总结:

在搜索时要注意是否为整个单词,以及小写敏感这些设置

漏洞名称 关键词
密码硬编码、密码明文存储 password
pass
jdbc
XSS getParamter
<%=
param
SQL 注入 Select
Dao
from
delete
update
insert
任意文件下载 download
fileName
filePath
write
getFile
getWriter
任意文件删除 Delete
deleteFile
fileName
filePath
文件上传 Upload
write
fileName
filePath
命令注入 getRuntime
exec
cmd
shell
缓冲区溢出 strcpy
strcat
scanf
memcpy
memmove
memeccpyGetc()
fgetc()
getchar
read
printf
XML 注入 DocumentBuilder
XMLStreamReader
SAXBuilder
SAXParser SAXReader
XMLReaderSAXSource
TransformerFactory
SAXTransformerFactory
SchemaFactory
反序列化漏洞 ObjectInputStream.readObject
ObjectInputStream.readUnshared
XMLDecoder.readObject Yaml.load
XStream.fromXML
ObjectMapper.readValue
JSON.parseObject
url 跳转 sendRedirect
setHeader
forward
不安全组件暴露 activity
Broadcast Receiver
Content Provider
Service
inter-filter
日志记录敏感信息 log log.info
logger.info
代码执行 eval
system
exec