java - 如何防止Android中的SQL注入?
问题描述
安全警报
您的应用程序包含 SQL 注入漏洞。有关详细信息,请参阅此 Google 帮助中心文章。
弱势阶层:
提供者/FormsProvider;->查询
影响 APK 版本 6。
public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
String sortOrder) {
SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
qb.setTables(FORMS_TABLE_NAME);
switch (sUriMatcher.match(uri)) {
case FORMS:
qb.setProjectionMap(sFormsProjectionMap);
break;
case FORM_ID:
qb.setProjectionMap(sFormsProjectionMap);
qb.appendWhere(FormsColumns._ID + "=" + uri.getPathSegments().get(1));
break;
default:
throw new IllegalArgumentException("Unknown URI " + uri);
}
// Get the database and run the query
SQLiteDatabase db = mDbHelper.getReadableDatabase();
Cursor c = qb.query(db, projection, selection, selectionArgs, null, null, sortOrder);
// Tell the cursor what uri to watch, so it knows when its source data changes
c.setNotificationUri(getContext().getContentResolver(), uri);
return c;
}
请帮我。如何防止来自 Google Play 控制台的 SQL 注入安全警报。
解决方案
推荐阅读
- spring-boot - 使用 id 生成器向数据库插入记录时,哪种方式更好?
- react-redux - 如何递归调用 redux saga watcher
- java - 如何将 Dialogflow V2 集成到我的应用程序中?
- java - 异常在 Websphere 8.5.5.x 上部署 spring 5 应用程序
- mongodb - 子文档上的猫鼬查询使用投影返回其他子文档的数组
- c - 这个包含模数的代码有什么问题?
- android - 如何在相机应用中应用实时照片滤镜
- ios - 如何为 React Native 组件编写 IOS 框架
- python - 区分圆上的矩形(python-openCV)
- html - HTML/CSS 段落中断,保留
完全有或没有浮动图像