Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何对kik';来自android模拟器的服务器API?_Android_Reverse Engineering_Kik - Fatal编程技术网

如何对kik';来自android模拟器的服务器API?

如何对kik';来自android模拟器的服务器API?,android,reverse-engineering,kik,Android,Reverse Engineering,Kik,我有一个群组聊天,已经有超过50个成员。我需要自动化一些事情,比如基于参与度的声誉积分,以及踢在XXX天内不发布任何内容的非活跃成员。我已经看过了,似乎在群组中与机器人互动的唯一方式是使用@indications。这意味着我们不能将他们添加到组中,他们也不能监视组对话。我也遇到过这样的情况,但似乎没有什么帮助 当前的kik bot API提供的权限非常有限,不允许监视组消息,因此我一直在考虑并创建一个普通的帐户,作为一个bot并与此API交互。我已经设法改变了交通路线,但我不确定从那里去哪里 所

我有一个群组聊天,已经有超过50个成员。我需要自动化一些事情,比如基于参与度的声誉积分,以及踢在XXX天内不发布任何内容的非活跃成员。我已经看过了,似乎在群组中与机器人互动的唯一方式是使用@indications。这意味着我们不能将他们添加到组中,他们也不能监视组对话。我也遇到过这样的情况,但似乎没有什么帮助

当前的kik bot API提供的权限非常有限,不允许监视组消息,因此我一直在考虑并创建一个普通的帐户,作为一个bot并与此API交互。我已经设法改变了交通路线,但我不确定从那里去哪里

所以问题是:对运行在android仿真器上的应用程序的API进行反向工程需要遵循什么工作流程


提前感谢

这是检查网络流量以及如何调试与API交互的一般说明。仅在允许的设备/API中使用它们。了解可能的法律影响,并事先征求法律意见。例如,在你的国家,逆向工程可能是违法的

准备工作:

  • 使用类似于的工具在计算机上设置代理
  • 配置代理以拦截和解密SSL连接。在此过程中,您必须生成SSL根证书(和),并将其安装在手机/仿真器上,以使它们接受代理生成的任何证书
  • 在手机的网络设置中配置代理
  • 如果应用程序/设备不支持代理,请在计算机上启动一个特设WiFi网络,将设备连接到该网络,然后使用()捕获整个流量

    看来你已经这么做了。现在是时候在手机上执行任何你想检查/拦截的动作,并观察/记录它们触发的请求了。这可能是这样的:

  • 发送消息
  • 识别触发的请求,并将其与其他应用程序引起的噪音分开,例如通过查看请求URL或目标IP
  • 保存触发的请求以供将来参考,并查看可能感兴趣的详细信息,如用户ID、会话令牌、URL和请求参数。如果您不确定什么是固定的,什么是可变的,请多次重复该操作(即发送消息),并相互比较请求

  • 如果您认为您找到了您想要的内容,请尝试使用类似的工具重新创建会话,并检查结果是否符合您的期望。如果没有,请继续收集数据并重试。编写一些自动化测试,以便将来能够验证该行为。

    您是否尝试过反编译该应用程序?Android应用程序主要是Java,因此任何Java反编译器都应该可以工作。如果应用程序被混淆了,你将不得不采取一些额外的步骤来查看源代码。如果没有,请在跟踪流时查看通过调试器发出的请求。谢谢!我也要试试看@Miiinimallothanks!你有关于在包级别监控流量和用cURL或puthon之类的语言再现请求的教程吗?我不确定这是否存在,但对于一个不太熟悉网络和数据包的初学者来说……如果您不熟悉较低的网络层,我建议使用Fiddler/mitmproxy,因为它们只显示HTTP。关于curl,本文很好地概述了如何创建各种HTTP请求。很适合测试。