下载WebGoat
git clone --branch v8.0.0 https://github.com/WebGoat/WebGoat.git
或者
git clone https://github.com/WebGoat/WebGoat.git
git checkout tags/v8.0.0
创建数据库(需要已经安装Maven)
codeql database create webgoat-ql -l java
在使用如上命令创建数据库时,会自动编译如下命令进行编译,如果使用上面命令创建数据库失败时,可以执行如下命令进行排错
mvn clean package -f "pom.xml" -B -V -e -Dfindbugs.skip -Dcheckstyle.skip -Dpmd.skip=true -Denforcer.skip -Dmaven.javadoc.skip -DskipTests -Dmaven.test.skip.exec -Dlicense.skip=true
将CodeQL标准库添加到工作区
git clone https://github.com/github/codeql.git
然后将clone的这个codeql文件夹添加到VSCode的工作区中
创建编写ql的文件夹,例如example-ql,在里面创建qlpack.yml文件,
name: exmaple-ql
version: 0.0.0
libraryPathDependencies: codeql-java
然后再创建exmaple.ql编写ql文件
命令行分析
codeql database analyze webgoat-test qllib/java/ql/src/Security/test/test.qls --format=csv --output=java-results.csv