Articles of 安全

从Android读取计算机的RSA密钥指纹

我想读一下电脑的指纹。 第一次将其与计算机连接时,会显示该指纹。 我google了很多,但我没有发现任何相关内容。 你有想法或有用的资源吗?

任何人都可以解释OAuth吗?

我在http://oauth.net/上读过一些关于它的内容,显然是“发布受保护数据和与受保护数据交互的一种简单方法”。 我认为这正是我需要通过REST Web服务提供从android / iphone应用程序访问数据的安全方式,但我无法确切地知道它是什么。 所以,简单地说,它究竟做了什么,是否有任何(真的)简单的例子,我可以遵循它,最好在c#中实现可以从智能手机应用程序访问的东西?

Android SuperUser应用如何检测应用是否请求root?

我正在编写一个应用程序,它将使用su在linux内核中执行一些命令。 我想知道SuperUser如何确定应用程序是否要求root权限? 此外,是否有任何已知的方法(通过混淆)可以绕过此检查? 换句话说:Android /(超级用户)如何知道应用程序需要root权限,尽管在android清单文件中没有明确请求的权限。 我从安全的角度问这个问题。 我想了解其工作原理的详细信息,以确保恶意应用程序无法绕过SuperUser。

InApp计费安全和远程方法调用

我在应用程序中实现了应用程序计费,现在我想要更多地保护它。 阅读开发者材料,它说: 除了运行模糊处理程序外,我们还建议您使用以下技术来混淆应用内的结算代码。 内联方法转换为其他方法。 动态构造字符串而不是将它们定义为常量。 使用Javareflection来调用方法。 http://developer.android.com/guide/market/billing/billing_best_practices.html 混淆 – 很好我能做到这一点= proguard 内联方法转换为其他方法 – 这就是说,一旦我的代码完成,尽可能地删除大量OO并将所有代码放在尽可能多的行中(对于我的应用程序的计费部分)在一个方法中? 这包括内联类吗? 在android示例中,他们有一个常量类,我会内联所有这些吗? 动态构造字符串 – 是的,所以将所有类常量variables排成一行 – 精细程序应该涵盖这一点 使用Javareflection – 这是我的主要问题。 我应该调用我的所有方法而不是调用它们吗? 为了节省自己,我可以这样做: private static Object invokeMethod(String name, Class[] params, Object[] args){ try { return MySpecificClass.class.getMethod(name, params).invoke(null, args); } catch (IllegalArgumentException e) { // Should never happen in my code, ignore and […]

如何在我自己的私有应用程序中使用Android的Face Unlock?

我想使用Face Unlock作为我的应用程序的第二个因素,因为我的大多数用户都不会使用密码锁定他们的手机。 是否有Android API可以在Android应用中集成Face Unlock? 有用于照片识别的人脸检测API,但我找不到可用于离线场景的API,特别是应用程序中的其他因素。 如果你需要一个真实世界的例子,假设这是一个密码管理器,或者电话将借给孩子……并且所有者永远不会锁定电话。 面部解锁将确保他们需要私密的东西。

Android绑定安全性

Binder在Android中提供的进程间通信是否在中间攻击中受到保护? 有没有提供此信息的文档?

DevicePolicyManager wipeData没有消除电子邮件设置

我有一个使用DevicePolicyManager方法的设备管理应用程序。 在特定的触发器上,我使用flag = 0(它的2.2 HTC令人难以置信)调用了wipeData方法。 设备重新启动并擦除所有设备数据(不是SD卡)以及任何已配置的Google帐户(在“设置” – >“帐户和同步”下列出)。 但是,我很惊讶地发现我仍然可以从电子邮件应用程序接收/发送我公司的电子邮件。 我不得不手动转到电子邮件应用程序点击设置并删除我的帐户。 任何想法,如果有任何问题。 我虽然能够wipeData是企业的安全措施之一。 如果仍然可以在远程擦除后访问企业电子邮件,那么它变得毫无意义! 我绝对惊呆了。 只是为了确定,在发布之前,我重新运行了整个过程。 配置了我的Exchange ActiveSync帐户,安装了我的设备管理应用程序并触发了wipeDatafunction。 在重新启动和“数据擦除”时,我发现配置的帐户没有显示在帐户和同步中,但在电子邮件应用程序中它仍然配置,我能够发送接收消息。 再次,这发生在我的HTC Droid Incredible(Verizon)上。 我还没有在任何其他设备上测试它。 如果我接受测试更改,我会更新。 编辑:我在Droid Pro以及HTC Evo上进行了测试。 两者都干净利落地擦拭干净。 所以看来这个问题是HTC Incredible特有的。 我的运行Android 2.2和HTC内核版本是:2.6.32.15-g5e1ad8b htc-kernel @ and18-2#1

validationAndroid apk没有重新包装?

希望改进我的Android应用程序的安全性,以标记.apk是否已被提取,修改,重新打包和重新签名。 这是来自Zdnet的文章,注意到问题link1 。 令人担忧的是,如果应用程序被黑客攻击,他们可能会添加恶意代码并上传到备用应用程序商店并欺骗用户下载它。 所以我在想代码validationapk或签名证书的校验和? 我很欣赏应用程序代码可以重新打包并删除任何安全代码,但它确实增加了重新打包的难度,也许足以让他们尝试另一个应用程序。 [更新]我知道Google Play商店许可模块提供类似的东西,但我正在寻找非付费应用和其他/非市场的东西。

我为什么要在发布前签署我的应用程序APK

任何人都可以告知在发布之前签署APK的确切重要性。

如何validationWeb服务调用的来源

假设您有一个移动应用程序(Windows Phone或Android),它使用SOAP连接您的后端。 为了方便起见,我们假设我们有一个用C#实现的Web服务。 服务器公开以下方法: [WebMethod] public string SayHallo() { return “Hallo Client”; } 从服务器的角度来看,您无法判断调用者是您的移动应用程序还是尝试调试Web服务的开发人员或试图对您的后端进行反向工程/利用的黑客。 如何识别Web服务调用的来源是应用程序? 任何拥有WSDL的人都可以调用WS。 我知道我可以对Web服务实施一些标准的安全措施,例如: 在服务器上实施HTTPS,使邮件加密,减少窃听的危险。 使用摘要/散列算法在客户端对请求进行签名,validation服务器中的签名并拒绝未正确签名的消息。 在HTTP请求中编写自定义标头。 无论如何都可以模拟标题。 但是,任何经验丰富的黑客或知道签名算法的开发人员仍然可以生成签名良好,格式正确的消息。 或者一个非常好的黑客可以反汇编应用程序并访问我的“绝密”通信协议的隐藏技术。 任何想法如何使SayHallo()方法只回答我的移动应用程序的请求? 我们在移动应用程序的环境中运行,通过硬件访问,可以利用硬件function完成某些任务。 如果有人想知道,我正在考虑如何使移动应用程序足够安全,以便敏感的应用程序,如银行业务。 谢谢你的想法。