SQLite
 sql >> база данни >  >> RDS >> SQLite

Неправилна неутрализация на специални елементи, използвани в SQL команда

Стойности в selectionArgs параметрите не трябва да се екранират и те не трябва да бъде екраниран, защото escape знаците ще се озоват в базата данни.

Има три различни случая на SQL код, видян от Veracode:

  • стойности, които не могат да бъдат въвеждане от потребителя (като низови литерали в изходния код);
  • стойности, които са въвеждане от потребителя (защото идва директно от, например, някакво поле за редактиране);
  • стойности, които може да бъдат въвеждане от потребителя, тъй като инструментът не може да определи източника.

По маркетингови причини, платените инструменти са склонни да надуват числата на проблемите, доколкото е възможно. Така Veracode отчита всички случаи на третия случай като проблеми.

В този случай Veracode не знае къде е selection идва от, така че се оплаква. Ако тази стойност е конструирана от вашата програма и никога не съдържа потребителски вход (т.е. всички стойности, въведени от потребителя, се преместват в ? параметри), то това е фалшиво положително и трябва да кажете на Veracode да млъкне.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Android ListView:как да избегнем заявка към база данни в bindView()? Трябва да се извлекат един към много данни за връзката

  2. Актуализация на SQLite

  3. Грешка в SQLiteDatabase, неполезен дневник

  4. Как да изтеглите данни от базата данни и да ги видите като ListView

  5. SQLiteException:неизвестна база данни