This project vendors and adapts CodeQL queries from several open-source projects. Original authors and licenses are listed below.
- Source: https://github.com/google/security-research/tree/master/analysis/kernel/heap-exploitation
- License: Apache-2.0
- Author: Google Security Research team
- Queries adapted:
queries/heap/interesting_objects.ql— fromInterestingObjects.qlqueries/lib/KernelAlloc.qll—KmallocCallandFlexibleArrayMemberclasses
- Source: https://github.com/mebeim/linux-kernel-experiments/tree/master/codeql
- License: MIT
- Author: Marco Bonelli (mebeim)
- Queries adapted:
queries/heap/kmallocd_structs.ql— fromkmallocd_structs.qlqueries/heap/kfreed_structs.ql— fromkfreed_structs.qlqueries/heap/kfreed_structs_with_func_ptrs.ql— fromkfreed_structs_with_func_ptrs.qlqueries/init/bad_init_calls.ql— frombad_init_calls.qlqueries/lib/KernelSlab.qll—kmallocSlab()predicate fromutils.qllqueries/lib/KernelFunc.qll—KernelFuncclass fromutils.qll
- Source: https://github.com/flounderK/linux-kernel-codeql
- License: Unlicensed (public repository)
- Author: flounderK
- Queries adapted:
queries/structures/all_struct_sizes.ql— fromall_nonzero_struct_sizes.qlqueries/structures/all_struct_fields.ql— fromall_struct_fields.ql
queries/structures/ifdef_config.ql— original to this projectqueries/taint/size_t_to_int.ql— original, inspired by Sequoia CVE-2021-33909 variant analysis
- UACatcher (https://github.com/AntonioBlanworkedoA/UACatcher) — requires custom CodeQL engine patches; not compatible with standard CodeQL CLI. Revisit if upstream CodeQL adds the required extension points.