我有一段这样的代码:
db = pgdb.connect(
database=connection['database'],
user=connection['user'],
host=connection['host'])
cursor = db.cursor()
# ask database
query = '''
SELECT a, b, c
FROM table
WHERE a ILIKE %s;'''
try:
cursor.execute(query, userInput)
except pgdb.Error, error:
error = str(error)
print json.dumps({
'errorMessage': 'ERROR: %s' % error
})
我在另一个论坛上读到,像 MySQLdb 这样的 python 模块会进行转义以防止注入攻击。我还查看了pgdb 上的文档,但它很薄。最后,我尝试使用自己的测试数据库进行自己的注入攻击,但我不确定我的测试是否足够。什么是测试这个的好方法?