56 lines
4.0 KiB
Properties
56 lines
4.0 KiB
Properties
#StringSqlInjection.java
|
|
StringSqlInjectionSecondStage=Now that you have successfully performed an SQL injection, try the same type of attack on a parameterized query. Restart the lesson if you wish to return to the injectable query.
|
|
EnterLastName=Enter your last name:
|
|
|
|
sql.injection.title=SQL Injection (introduction)
|
|
sql.mitigation.title=SQL Injection (mitigation)
|
|
sql.advanced.title=SQL Injection (advanced)
|
|
|
|
SqlInjectionChallenge1=Look at the different response you receive from the server
|
|
SqlInjectionChallenge2=The vulnerability is on the register form
|
|
SqlInjectionChallenge3=Use tooling to automate this attack
|
|
|
|
NoResultsMatched=No results matched. Try Again.
|
|
SqlStringInjectionHint6=Try Appending a new SQL Statement to the Query.
|
|
SqlStringInjectionHint7=The new SQL Statement can be really simple like: SELECT ... FROM ...
|
|
SqlStringInjectionHint8=Your new SQL Query should start, with a " ; " and end with " -- "
|
|
SqlStringInjectionHint9=Try sorting and look at the request
|
|
SqlStringInjectionHint10=Intercept the request and try to specify a different order by
|
|
SqlStringInjectionHint10a1=First establish a connection, after that you can create a statement.
|
|
SqlStringInjectionHint10a2=For every datatype there is a method to insert values into a wildcard symbol in a statement.
|
|
SqlStringInjectionHint10b1=A database connection has to be surrounded by a try-catch block to handle the very common case of an error while establishing the connection!
|
|
SqlStringInjectionHint10b2=Remember to use the right kind of statement, so your code is no longer vulnerable for SQL-Injections!
|
|
SqlStringInjectionHint10b3=The wildcard-symbol '?' in a prepared statement can be filled with the right kind of method. There exists one for every datatype!
|
|
SqlStringInjectionHint11=Use for example "(case when (true) then hostname else id end)" in the order by and see what happens
|
|
SqlStringInjectionHint12=Use for example "(case when (true) then hostname else id end)" in the order by and see what happens
|
|
|
|
sql-injection.5a.success=You have succeeded: {0}
|
|
sql-injection.5a.no.results=No results matched. Try Again.
|
|
|
|
sql-injection.5b.success=You have succeeded: {0}
|
|
sql-injection.5b.no.results=No results matched. Try Again.
|
|
|
|
sql-injection.6a.success=You have succeeded: {0}
|
|
sql-injection.6a.no.results=No results matched. Try Again.
|
|
|
|
sql-injection.6b.success=You have succeeded: {0}
|
|
sql-injection.6b.no.results=No results matched. Try Again.
|
|
|
|
sql-injection.8.success=You have succeeded! You successfully compromised the confidentiality of data by viewing internal information that you should not have access to. Well done! {0}
|
|
sql-injection.8.no.results=No employee found with matching lastname. Or maybe your authentication TAN is incorrect?
|
|
|
|
SqlStringInjectionHint8-1=The application is taking your input and inserting the values into the variables 'name' and 'auth_tan' of the pre-formed SQL command.
|
|
SqlStringInjectionHint8-2=Compound SQL statements can be made by expanding the WHERE clause of the statement with keywords like AND and OR.
|
|
SqlStringInjectionHint8-3=Try appending a SQL statement that always resolves to true.
|
|
SqlStringInjectionHint8-4=Make sure all quotes (" ' ") are opened and closed properly so the resulting SQL query is syntactically correct.
|
|
SqlStringInjectionHint8-5=Try extending the WHERE clause of the statement by adding something like: ' OR '1' = '1.
|
|
|
|
sql-injection.9.success=Well done! Now you're earning the most money. And at the same time you successfully compromised the integrity of data by changing the salary. {0}
|
|
|
|
SqlStringInjectionHint9-1=Try to find a way, to chain another query to the end of the existing one.
|
|
SqlStringInjectionHint9-2=Use the ; metacharacter to do so.
|
|
SqlStringInjectionHint9-3=Make use of DML to change your salary.
|
|
SqlStringInjectionHint9-4=Make sure that the resulting query is syntactically correct.
|
|
SqlStringInjectionHint9-5=How about something like '; UPDATE employees....
|
|
|
|
sql-injection.10.success=Success! You successfully deleted the access_log table and that way compromised the availability of the data. |