04 2022 档案
摘要:创建路径查询 官方文档:Creating path queries — CodeQL (github.com) 概览 安全研究人员对程序中信息流动的方式特别感兴趣。许多漏洞是由看似良性的数据流向意外位置并被恶意使用而引起的。使用 CodeQL 编写的路径查询对于分析数据流特别有用,因为它们可用于跟踪
阅读全文
摘要:CodeQL CLI — CodeQL (github.com) 创建CodeQL数据库 https://codeql.github.com/docs/codeql-cli/creating-codeql-databases/ codeql database create <database> --
阅读全文
摘要:注解(Annotations) 注释是一个字符串,可以直接放在 QL 实体或名称的声明之前。 例如,要将模块 m 声明为私有,可以使用: private module M { ... } 注意,有些注释作用于实体本身,而其他注释作用于特定的实体 实体: 按照一个 实体: abstract, cach
阅读全文
摘要:公式Formulas 官方文档 https://codeql.github.com/docs/ql-language-reference/formulas/ 比较 <expression> <operator> <expression> 顺序运算符 \>, >=, <, <= 相等运算符 =, !=
阅读全文
摘要:变量(Variables) QL 中的变量的使用方式与代数或逻辑中的变量相似。它们表示一组值,这些值通常受到公式的限制。 这与其他一些编程语言中的变量不同,在这些语言中,变量表示可能包含数据的内存位置。这些数据也会随着时间的推移而改变。 例如,在 QL 中,n = n + 1是一个等式,只有当 n
阅读全文
摘要:表达式(Expressions) Expressions — CodeQL (github.com) 表达式计算为一组值,并具有类型。 例如,表达式1 + 2计算为整数3,表达式“ QL”计算为字符串“ QL”。1 + 2类型为 int,“ QL”类型为 string。 变量引用(Variable
阅读全文
摘要:别名(Aliases) 别名是现有 QL 实体的替代名称。 定义了别名之后,可以使用该新名称引用当前模块命名空间中的实体。 定义别名 您可以在任何模块的主体中定义别名。为此,您应该指定: 关键字module、class或predicate分别为module、type或非成员谓词non-member
阅读全文
摘要:模块(Modules) 模块通过将相关类型、谓词和其他模块组合在一起,提供了一种组织 QL 代码的方法。 定义模块 定义模块的方法有很多种ーー这里有一个最简单的例子,声明一个名为 Example 的显式模块,其中包含一个类 OneTwoThree: module Example { class On
阅读全文
摘要:查询(Queries) 官方文档 https://codeql.github.com/docs/ql-language-reference/queries/ 查询是 QL 程序的输出,它们计算成组的结果。 有两种查询方式: 使用select字句进行查询。如果存在select模块,在该模块中定义。 使
阅读全文
摘要:类型(Types) QL 是一种静态类型的语言,因此每个变量都必须有一个声明的类型。 类型是一组值。例如,int 类型是一组整数。注意,一个值可以属于这些集合中的多个,这意味着它可以有多个类型。 QL 中的类型有基本类型、类、字符类型、类域类型、代数数据类型、类型联合和数据库类型。primitive
阅读全文
摘要:关键词 关于 QL 语言:QL 是 CodeQL 的强大查询语言,用于分析代码。 谓词:谓词用于描述构成 QL 程序的逻辑关系。 查询:查询是 QL 程序的输出。他们评估结果集。 类型:QL 是一种静态类型语言,因此每个变量都必须有一个声明的类型。 模块:模块提供了一种通过将相关类型、谓词和其他模块
阅读全文
摘要:上传Markdown文件内的本地图片至博客园 作者: 贺墨于 出处: https://www.cnblogs.com/hemou/p/12332551.html 因为习惯使用Markdown格式做笔记,有时希望将它放到网上方便在任何有网络的地方查找。开始是放到Github中的,但是有时访问的速度太慢
阅读全文
摘要:Druid及未授权访问漏洞简介: 1、Druid是阿里巴巴数据库事业部出品,为监控而生的数据库连接池。 2、Druid提供的监控功能,监控SQL的执行时间、监控Web URI的请求、Session监控。 3、当开发者配置不当时就可能造成未授权访问漏洞。 漏洞特征: http://www.xxxx.c
阅读全文
摘要:一、常见漏洞类型 1. SQL注入 📌漏洞成因 直接使用SQL语句拼接,将用户传入的参数通过字符串拼接的方式传入查询语句。 示例:String sql = "select * from test where id = " + id; 预编译使用有误,没有调用 set 方法将变量与占位符进行对应。
阅读全文