QueryParam Scanner * Version: 0.8 * License: LGPLv3 * Homepage: https://www.sorcerersisle.com/software/qpscanner * Documentation: https://docs.sorcerersisle.com/qpscanner * Repository: https://code.sorcerersisle.com/qpscanner.git * Issues: https://codeberg.org/boughtonp/qpscanner/issues Description ----------- QueryParam Scanner (qpScanner) is a tool designed to identify possible SQL injection risks in CFML queries, by highlighting instances of unparameterised variables. Known Issues ------------ QueryParam Scanner does not work with script/function based queries, and - due to the dynamic nature of CFML - would require a significant overhaul to have any chance of producing useful output. Instead, a security tool configured to scan for SQL injection attacks should be used to protect such software, e.g. OWASP ZAP (https://www.zaproxy.org). Requirements ------------ qpScanner can scan code written for any CFML engine, but itself requires at least ColdFusion 9 or Railo 3.x to run. To run qpScanner on older CFML engines, try v0.7.3 instead - this is available on branch 0.7.3 or for download from https://code.sorcerersisle.com/qpscanner/tags Getting Started --------------- Extract all files to a directory in your webroot, then access that directory in a browser. Everything required is contained within the zip file; no mappings nor datasources need to be setup. Upon accessing qpScanner you will see a simple form: Directory The location of the code you wish to scan. This can be either an absolute path or a mapping. Recurse? Select yes if you want qpScanner to look inside sub-directories, or no to only scan the files directly in the specified directory. Once these are set as appropriate, press Scan and qpScanner will get to work. It will look for queries with CF variables (ie: `#values_in_hashes#`) that are not inside a cfqueryparam tag, and - once complete - will list how many were found out of how many total queries, and provide a list of files and queries. NOTE: QueryParam Scanner should be used *only* in your development environment, not on a live/public box. In addition to the security risks, it might have an adverse affect on performance. Licensing & Credits ------------------- This project is available under the terms of the GPLv3 license. See license.txt to understand your rights and obligations. QueryParam Scanner was created by Peter Boughton and gratefully makes use of the third-party software detailed below, each available individually under their respective licenses. jQuery v1.2.6 (http://jquery.com) * Source: https://github.com/jquery/jquery * License: GPLv2 or MIT (See http://jquery.org/license) * Files: resources/scripts/jquery-1.2.6.min.js Framework One v2.2 (http://fw1.riaforge.org) * Source: http://github.com/seancorfield/fw1/ * License: Apache v2.0 (http://www.apache.org/licenses/LICENSE-2.0) * Files: framework.cfc /eof