【问题标题】:Howto Reverse-Engineer a REST-Webservice如何对 REST-Web 服务进行逆向工程
【发布时间】:2017-01-25 13:42:06
【问题描述】:

我目前正在尝试对缺少文档的私有 REST-Web 服务进行逆向工程。我唯一知道的是,它是用 PHP 编写的,使用 ZendFramework。有什么简单的方法可以查明哪些操作是允许的,以及我必须提供哪些参数才能使服务正常工作?

您好, 抢

【问题讨论】:

  • 您是否有权访问 Web 服务器的日志文件?
  • 这个问题没有详细说明您是否可以访问 REST API/Web 服务的已知工作客户端。

标签: php rest reverse-engineering


【解决方案1】:

您可以使用 WIRESHARK 等网络分析工具来捕获网络上发送的数据 在wireshark site 上阅读更多相关信息

例如我点击登录网络服务 由wireshark捕获的数据如下:

在上图中,您可以看到通过 HTTP 协议发送的数据

1.) 方法 POST

2。)在 MIME 信息下 例如

内容配置:表单数据; name="phoneNumber"\r\n\r\n

参数名称是phoneNumber

===========更新==============

在这里你可以看到 fiddle 捕获的数据:

1.) 点击 GO bottun,然后开始捕获请求

【讨论】:

  • 我们可以使用 chrome 开发者工具监控 http 请求和响应,还是需要 fiddler/wireshark/charles 代理?
  • 你可以,但是使用wireshark,你可以监控在你被授权扫描的网络上运行的任何应用程序的请求和响应。
【解决方案2】:

如果您有使用该服务的现有客户端(网页、移动应用等),您可以使用代理记录和观察使用该服务的现有客户端发送/接收的流量。 FiddlerCharles 将完成工作。

【讨论】:

  • Chesles,您能告诉我们更多关于如何使用 Fiddler/Charles 对任何 REST 服务进行逆向工程吗?一个非常小的例子会很棒。顺便说一句,在这种情况下,查尔斯还是提琴手哪个更好?谢谢!!!
【解决方案3】:

你可以使用

谷歌浏览器中检查元素选项下的网络分析器选项卡

您可以在其中查看为该网页加载的所有数据和脚本, 例如查看此屏幕截图,我试图查看哪个 google api 用于查找给定地址的坐标。 在此您将获得所需的所有信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-22
    • 1970-01-01
    • 2014-02-22
    • 2011-05-09
    • 2016-04-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-30
    相关资源
    最近更新 更多