Libinjection is a SQL / SQLI tokenizer parser analyzer. For
Simple example
#include
#include
#include
#include “libinjection.h”
#include “libinjection_sqli.h”
int main(int argc, const char* argv[])
{
struct libinjection_sqli_state state;
int issqli;
const char* input = argv[1];
size_t slen = strlen(input);
/* in real-world, you would url-decode the input, etc */
libinjection_sqli_init(&state, input, slen, FLAG_NONE);
issqli = libinjection_is_sqli(&state);
if (issqli) {
fprintf(stderr, “sqli detected with fingerprint of ‘%s’\n”, state.fingerprint);
}
return issqli;
}
$ gcc -Wall -Wextra examples.c libinjection_sqli.c
$ ./a.out “-1′ and 1=1 union/* foo */select load_file(‘/etc/passwd’)–“
sqli detected with fingerprint of ‘s&1UE’
More advanced samples:
VERSION INFORMATION
Versions are listed as “major.minor.point”
Major are significant changes to the API and/or fingerprint format. Applications will need recompiling and/or refactoring.
Minor are C code changes. These may include
Point releases are purely data changes. These may be safely applied.
QUALITY AND DIAGNOSITICS
The continuous integration results at https://travis-ci.org/client9/libinjection tests the following:
garak checks if an LLM can be made to fail in a way we don't…
Vermilion is a simple and lightweight CLI tool designed for rapid collection, and optional exfiltration…
ADCFFS is a PowerShell script that can be used to exploit the AD CS container…
Tartufo will, by default, scan the entire history of a git repository for any text…
Loco is strongly inspired by Rails. If you know Rails and Rust, you'll feel at…
A data hoarder’s dream come true: bundle any web page into a single HTML file.…