首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >什么使Android应用程序易受SQL注入的影响?

什么使Android应用程序易受SQL注入的影响?
EN

Stack Overflow用户
提问于 2015-05-22 17:12:30
回答 4查看 2.8K关注 0票数 5

注入的定义

SQL注入是一种代码注入技术,用于攻击数据驱动的应用程序,其中恶意SQL语句被插入入口字段以执行(例如将数据库内容转储给攻击者)。

SQL注入如何影响AndroidO.S

安卓应用程序中使用的SQLite是功能齐全的数据库,因此就像Server或MySQL框一样,它们也容易受到SQL注入的影响。SQL注入通常通过将数据添加到查询字符串或在表单字段中添加数据来工作;允许黑客访问数据库或未经授权的登录。SQL注入通常用于攻击Web视图或web服务,但也可用于攻击活动。

SQL注入漏洞的根本原因是使用动态或连接SQL查询。如果SQL查询是通过连接用户提供的输入来构造的,则用户可以提供SQL攻击向量而不是有效的输入,并操作后端SQL查询。

注入过程的工作方式是过早终止文本字符串并追加一个新命令。因为插入的命令在执行之前可能会附加额外的字符串,所以注入的字符串以注释标记“-”结束。后续文本在执行时被忽略。

我的问题

虽然我了解什么是SQL注入,以及SQL注入是如何发生的。我不知道是什么因素使所选的Android代码容易受到这样的攻击。

EN

回答 4

Stack Overflow用户

发布于 2015-05-22 17:18:29

SQL注入不是特定于Android的。

无论如何,答案都很简单:如果将SQL命令字符串与用户数据输入结合起来(通过GUI、网络、.)应用程序可能容易受到sql注入攻击的错误方式。

简单的解决方法是结合使用PreparedStatement,只使用静态的SQL命令字符串。所有用户数据和其他参数都是在编译后在PreparedStatement上设置的。

票数 5
EN

Stack Overflow用户

发布于 2015-05-22 17:17:25

那么,如果您的代码使用诸如用户名和密码之类的变量,并且您的应用程序进行sql查询,将这些变量放入sql字符串中,而不首先清理字符串,用户可能会注入错误的代码,结果可能会很糟糕。因此,就像任何应用程序一样,用户输入是攻击失败与否的关键。

票数 3
EN

Stack Overflow用户

发布于 2018-02-02 14:20:20

我想说的是,使Android应用程序易受SQL注入影响的是Android中内容提供者的错误使用或配置。

最近我写了一篇博客,解释了在Android内容提供商中注入SQL以获取数据的例子,以及如何防止这种攻击,请看一看:链接

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30402376

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档