Skip to content

BadshahA1/SQLInjection

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

To prevent SQL injection attacks, it is crucial to never directly include user input in SQL statements. Instead, we can use parameterized queries (also known as prepared statements) which ensure that user input is treated as data and not as part of the SQL command. Python’s sqlite3 library supports parameterized queries and using MySQLi extenstion with PHP important for webdevelopment

General Tips for SQL Injection Prevention:

  • Use Parameterized Queries: As shown in the examples above, these are crucial for preventing SQL injection.
  • Use ORM Libraries: Object-Relational Mapping (ORM) libraries can abstract database interactions and inherently prevent SQL injections in many cases.
  • Input Validation: Validate user inputs to ensure they conform to expected formats (e.g., using regex for email).
  • Escaping All User-Supplied Input: If parameterized queries are not an option, data must be properly escaped. Most modern database access libraries have built-in methods to escape inputs safely.
  • Least Privilege: Limit the database permissions of the application account to only what is necessary (e.g., no DROP TABLE permission).

About

This is an example of how to prevent SQL injection with parameterized queries.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors