kartikdedhia / Riches

0 stars 2 forks source link

CX SQL_Injection @ riches/WEB-INF/src/java/com/checkmarx/samples/riches/restful/AccountResources.java [master] #16

Open kartikdedhia opened 5 years ago

kartikdedhia commented 5 years ago

SQL_Injection issue exists @ riches/WEB-INF/src/java/com/checkmarx/samples/riches/restful/AccountResources.java in branch master

The application's IsProfileExist method executes an SQL query with find, at line 241 of riches\WEB-INF\src\java\com\checkmarx\samples\riches\model\ProfileService.java. The application constructs this SQL query by embedding an untrusted string into the query without proper sanitization. The concatenated string is submitted to the database, where it is parsed and executed accordingly. The attacker would be able to inject arbitrary data into the SQL query, by simply altering the user input username, which is read by the GetAccountsByName method at line 62 of riches\WEB-INF\src\java\com\checkmarx\samples\riches\restful\AccountResources.java. This input then flows through the code to the database server, without sanitization. This may enable an SQL Injection attack.

Severity: High CWE:89 Checkmarx Lines: 82 102 141 62


Code (Line #82):

    public String GetAccountsByName_JSON(@PathParam("username") String username) {

Code (Line #102):

    public String AddAccount(String representation) {

Code (Line #141):

    public String DeleteAccount(@PathParam("acctno") String acctno) {

Code (Line #62):

    public String GetAccountsByName(@PathParam("username") String username) {

kartikdedhia commented 4 years ago

Issue still exists.

kartikdedhia commented 4 years ago

Issue still exists.