2010-07-09 68 views
1

我使用名为DotNetPanel(DNP)的软件,我正在修改PHProxy以自动登录到管理面板。我已经为其他几种类型的软件(如cPanel)完成了这项工作 - 使用身份验证头或POST变量就可以了,但DNP使用了我不熟悉的东西--ViewState。使用PHP以编程方式登录到DotNetPanel

  1. 当我POST用户/传递数据时,页面刷新甚至没有发生任何事情。
  2. 当我POST用户/ pass/__ VIEWSTATE数据页面产生一个http://support.microsoft.com/default.aspx?scid=kb;EN-US;323744错误。

任何想法?

有趣的是,如果我编写一个JavaScript函数来填写相同的信息和页面,并模拟登录按钮上的“点击”,它就可以工作。

回答

1

尝试并正确地了解当您正常登录时(即发布内容,正在设置的cookie,身份验证方法等)发生了什么,并使用PHProxy或其他方法进行重现。要查看这些信息,请尝试使用LiveHTTPHeaders之类的工具。

+0

我实际上正在使用LiveHTTPHeaders,并且正在发送与发送完全一样的POST变量和路径。我也用wireshark来踢腿。 – sholsapp 2010-07-09 01:20:27

+0

@gnucom由于您使用wireshark,您能否告诉您浏览器发送的内容与脚本发送的内容是否有区别? – quantumSoup 2010-07-09 02:59:15

+0

您是否尝试了解ViewState的工作原理?这里有一些文档:http://msdn.microsoft.com/en-us/library/ms972976.aspx – quantumSoup 2010-07-09 15:28:01