通过帖子登录Zoho报告

时间:2014-10-14 15:17:09

标签: javascript jquery html security

我们已经能够使用以下代码自动将用户登录到Zoho,直到最近。看起来他们现在需要一个看起来像这样的新参数:

iamcsrcoo = 1c25c9851ea8a8344c61f8173ae2804fff39610fbddac4cbf2ad69295d6fdb0bc0fa6ee7669afc1ad9fcb4df47463043d92bf8b33dd374f7d18efc17521023dc

如果我手动打开浏览器并将此变量的值剪切并粘贴到提交例程中,它将在我抓取它的浏览器中工作。但是,如果我尝试使用其他浏览器登录,则无法使用。由于跨站点脚本安全性,我无法确定它是什么,或者能够在提交for之前获取值。

关于如何使用客户端或服务器端脚本执行此操作的任何想法?

<!DOCTYPE html>
<html>
<head>
    <title></title>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
    <script>

    $(document).ready(function() {
        $('#login').trigger("click"); 
    });

    </script>
</head>

<body>
    <p></p>
    <form action="https://accounts.zoho.com/login" method="post">

    <input id="LOGIN_ID" name="LOGIN_ID" value="xxx@yahoo.com">
    <input id="PASSWORD" name="PASSWORD" value="passwordgoeshere">
    <input id="servicename" name="servicename" value="ZohoReports">
    <input id="serviceurl" name="serviceurl" value="https://reports.zoho.com">  
    <input id="login" type="submit" >

    </form>
</body>

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,以下是我获得该变量的方法:

#Get Cookie
wget --delete-after --keep-session-cookies --save-cookies=login.dat --header="User-Agent: Mozilla/5.0 (Windows NT 6.1;WOW64; rv:29.0) Gecko/20100101 Firefox/29.0" https://accounts.zoho.com/login?servicename=ZohoCRM

#Save The 'iamcsr' Cookie
THE_COOKIE="$(cut -f 6-7 login.dat | grep iamcsr | cut -f 2)"

#Get the desired page
wget -O 'login.txt' --load-cookies login.dat --header="Content-Type: application/x-www-form-urlencoded;charset=UTF-8" --post-data "LOGIN_ID={my@email.com}&PASSWORD={myPassword}&IS_AJAX=true&iamcsrcoo=$THE_COOKIE" https://accounts.zoho.com/login?servicename=ZohoCRM