Using Hibernate to execute a dynamic SQL statement
with built-in user-controlled input can allow an attacker to
modify the statement's meaning or to execute arbitrary SQL commands.
stonesoup.jtree.Main
$SS_TC_ROOT/$SS_TC_INSTALL:$SS_TC_ROOT/$SS_TC_INSTALL/lib/*:$SS_TC_ROOT/$SS_TC_INSTALL/lib/opt/*:$SS_TC_DEPS/java/stonesoup/hibernate/mysql/*:$SS_TC_DEPS/java/stonesoup/lttng/lttng-stonesoup-0.1.jar
UNSPECIFIED
UNSPECIFIED
java $SS_JAVA_OPTS -Djava.library.path=$SS_TC_DEPS/lib64/ -cp "$SS_JAVA_CLASSPATH" stonesoup.jtree.Main
env ANT_HOME=$SS_TC_DEPS/ant ant $SS_ANT_OPTS -Dstonesoup.database.postgres.required=no -Dstonesoup.hibernate.postgres.required=no -Dstonesoup.hibernate.mysql.required=yes -Dstonesoup.database.mysql.required=no -Dstonesoup.socket.required=no -lib $SS_TC_DEPS/java/stonesoup/lttng/lttng-stonesoup-0.1.jar -Dstonesoup.socket.lib.dir="$SS_TC_DEPS/java/stonesoup/socket" -Dstonesoup.hibernate.mysql.lib.dir="$SS_TC_DEPS/java/stonesoup/hibernate/mysql" -Dstonesoup.hibernate.postgres.lib.dir="$SS_TC_DEPS/java/stonesoup/hibernate/postgres" -Dstonesoup.database.mysql.lib.dir="$SS_TC_DEPS/java/stonesoup/database/mysql" -Dstonesoup.database.postgres.lib.dir="$SS_TC_DEPS/java/stonesoup/database/postgres" -Dstonesoup.lttng.lib.dir="$SS_TC_DEPS/java/stonesoup/lttng" -Dstonesoup.lttng.dummy.lib.dir="$SS_TC_DEPS/java/stonesoup/lttng-dummy" -Ddir.dist=$SS_TC_ROOT/$SS_TC_INSTALL build
cp -r lib $SS_TC_ROOT/$SS_TC_INSTALL
Environment variable defining test value.
NONE
USA
/opt/stonesoup/workspace/scripts/northwind_create_northwind_tfmyyffokzfakejn.sql
northwind_tfmyyffokzfakejn
$SS_TC_ROOT/logs/execute/lttng
$SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so
input/good-01
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
STDOUT-01 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT
good-01/output.txt
DOES_NOT_RETURN
CONTROLLED_EXIT
Environment variable defining test value.
NONE
Germany
/opt/stonesoup/workspace/scripts/northwind_create_northwind_xhbbaoexccozauwu.sql
northwind_xhbbaoexccozauwu
$SS_TC_ROOT/logs/execute/lttng
$SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so
-l 1 input/good-02/
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
STDOUT-02 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT
good-02/output.txt
DOES_NOT_RETURN
CONTROLLED_EXIT
Environment variable defining test value.
NONE
Finland
/opt/stonesoup/workspace/scripts/northwind_create_northwind_gkqsmqgufxmjqqpb.sql
northwind_gkqsmqgufxmjqqpb
$SS_TC_ROOT/logs/execute/lttng
$SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so
input/good-03/jtree-good-03.tar.gz
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
STDOUT-03 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT
good-03/output.txt
DOES_NOT_RETURN
CONTROLLED_EXIT
Environment variable defining test value.
NONE
USA
/opt/stonesoup/workspace/scripts/northwind_create_northwind_pknyaxbnrgywshsn.sql
northwind_pknyaxbnrgywshsn
$SS_TC_ROOT/logs/execute/lttng
$SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so
-l 2 input/good-04/jtree-good-04.tar.gz
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
STDOUT-04 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT
good-04/output.txt
DOES_NOT_RETURN
CONTROLLED_EXIT
Environment variable defining test value.
NONE
Germany
/opt/stonesoup/workspace/scripts/northwind_create_northwind_sbepnpybfvcowwzy.sql
northwind_sbepnpybfvcowwzy
$SS_TC_ROOT/logs/execute/lttng
$SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so
input/good-01/ input/good-02/ input/good-03/jtree-good-03.tar.gz input/good-04/jtree-good-04.tar.gz
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
STDOUT-05-01 AND STDOUT-05-02 AND STDOUT-05-03 AND STDOUT-05-04 AND NOT TIMEOUT AND NOT CONTROLLED_EXIT
good-05/output1.txt
good-05/output2.txt
good-05/output3.txt
good-05/output4.txt
DOES_NOT_RETURN
CONTROLLED_EXIT
Environment variable defining test value.
EXECUTE_UNAUTHORIZED_CODE
x' or 'x'='x
/opt/stonesoup/workspace/scripts/northwind_create_northwind_fgdyhqhjjoppsxct.sql
northwind_fgdyhqhjjoppsxct
$SS_TC_ROOT/logs/execute/lttng
$SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so
-l 1 input/good-02/
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
weakness_started_MCjBXgCq5EW3gyPMTNu5 AND ((NOT PERFORMER AND (hibernate_sql_output_c4D0lJ1y1G OR hibernate_sql_output_EyL38vM9zr) AND NOT timeout_pCjAgIWqal) or (PERFORMER AND NOT ((hibernate_sql_output_c4D0lJ1y1G OR hibernate_sql_output_EyL38vM9zr) OR timeout_pCjAgIWqal)))
(NOT PERFORMER AND (hibernate_sql_output_c4D0lJ1y1G OR hibernate_sql_output_EyL38vM9zr) AND NOT timeout_pCjAgIWqal) or (PERFORMER AND NOT ((hibernate_sql_output_c4D0lJ1y1G OR hibernate_sql_output_EyL38vM9zr) OR timeout_pCjAgIWqal))
DOES_NOT_RETURN
CONTROLLED_EXIT
CONTINUED_EXECUTION
logfile.txt
Zbyszek Piestrzeniewicz
logfile.txt
South House 300 Queensbridge
None
stonesoup_trace:weakness_start
Environment variable defining test value.
EXECUTE_UNAUTHORIZED_CODE
x' or city='London
/opt/stonesoup/workspace/scripts/northwind_create_northwind_ywxmjhhjmglwjogl.sql
northwind_ywxmjhhjmglwjogl
$SS_TC_ROOT/logs/execute/lttng
$SS_TC_DEPS/lib64/liblttng-stonesoup-java.so:$SS_TC_DEPS/lib64/liblttng-ust-fork.so
-l 1 input/good-02/
DROP DATABASE IF EXISTS $SS_DBMYSQLDATABASE;
weakness_started_N4SpBpVYerR8etm4kXp0 AND ((NOT PERFORMER AND (hibernate_sql_output_CTg8JrPIkf OR hibernate_sql_output_3vjLHb5MB5) AND NOT timeout_BVQxxi1lUJ) or (PERFORMER AND NOT ((hibernate_sql_output_CTg8JrPIkf OR hibernate_sql_output_3vjLHb5MB5) OR timeout_BVQxxi1lUJ)))
(NOT PERFORMER AND (hibernate_sql_output_CTg8JrPIkf OR hibernate_sql_output_3vjLHb5MB5) AND NOT timeout_BVQxxi1lUJ) or (PERFORMER AND NOT ((hibernate_sql_output_CTg8JrPIkf OR hibernate_sql_output_3vjLHb5MB5) OR timeout_BVQxxi1lUJ))
DOES_NOT_RETURN
CONTROLLED_EXIT
CONTINUED_EXECUTION
logfile.txt
Zbyszek Piestrzeniewicz
logfile.txt
South House 300 Queensbridge
None
stonesoup_trace:weakness_start