Xcode的登录安全问题

问题描述:

我想实现下面的代码:Xcode的登录安全问题

NSURL *url = [NSURL URLWithString:@"https://login.XXX.com/security/xxxforms// 
logonchalnp.fcc?TYPE=33554433&REALMOID=06-95b0f0c8-198a-1039-b583 
83b02659fd47&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=owa5&TARGET=-SM- 
HTTPS%3a%2f%2fowa%2exxx%2ecom%2f"]; 

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
[request setDelegate:self]; 
[request setPostValue:@"XXX" forKey:@"USER"]; 
[request setPostValue:@"XXX" forKey:@"PASSWORD"]; 
[request startSynchronous]; 

NSURLResponse *response; 
NSError *error; 
NSData *urlData = [NSURLConnection sendSynchronousRequest:request 
             returningResponse:&response 
                error:&error]; 
NSString *str=[[NSString alloc]initWithData:urlData encoding:NSUTF8StringEncoding]; 
NSLog(@"Login response: is %@", str); 

该网站的相关内容有:

<form NAME="Login" METHOD="POST" action="/forms/logonchal_l10question.jsp"> 
<INPUT TYPE=HIDDEN NAME="SMENC" VALUE="ISO-8859-1"> 
<INPUT type=HIDDEN name="SMLOCALE" value="US-EN"> 
<center> 

<!-- outer table with border --> 
<table width="50%" border="1" cellpadding="0" cellspacing="0" align=center> 
<tr> 
<td>  
<!-- Login table -->   
<table WIDTH="100%" HEIGHT=200 class="platportletLightBg" border=0 cellpadding=0 
cellspacing=0 > 

<tr HEIGHT="30" class="platportletHeaderBg"> 
<td valign=center height=40 align=center colspan=4 > 
     <b class="d_banHeader">Please Login</b> 
     </td> 
    </tr> 

    <tr> <td colspan=4 height=20> <font size=1> &nbsp; </font> </td> </tr> 

    <tr align="center"> 
     <td WIDTH=20 >&nbsp;</td> 
     <td ALIGN="LEFT" > 
      <b class="customappSubhead"> Username: </b> 
     </td> 
     <td align=center > 
      <input type="text" name="USER" size="30" AUTOCOMPLETE=OFF> 
      </td> 
     <td WIDTH=20 >&nbsp;</td> 
    </tr> 

    <tr> <td colspan=4 height=5> <font size=1> &nbsp; </font> </td> </tr> 

    <tr align="center" > 
     <td WIDTH=20 >&nbsp;</td> 
     <td align=left> 
      <b class="customappSubhead"> Password: </b> 
     </td> 
     <td> 
     <input type="password" name="PASSWORD" size="30"> 
     </td> 
     <td WIDTH=20 >&nbsp;</td> 
    </tr> 

    <tr> <td colspan=4 height=20> <font size=1> &nbsp; </font> </td> </tr> 

    <tr> 
     <td colspan=4 NOWRAP WIDTH="50%" HEIGHT="25" align="CENTER"> 
      <input type=hidden name=target value="HTTPS://owa.xxx.com/"> 
      <input type=hidden name=smquerydata value=""> 
      <input type=hidden name=smauthreason value="0"> 
      <input type=hidden name=smagentname value="owa5"> 
      <input type=hidden name=postpreservationdata value=""> 
      <input type="button" value="Login" onClick="submitForm();"> 
     </td> 
    </tr> 

预期的响应:当从手动和直接登录浏览器使用适当的用户名/密码,网页将重定向到安全问题页面。如果问题被成功解答,它将进入基于网络的应用程序的另一个登录页面。

如代码所示,它成功登录到初始页面,但绕过安全问题页面并直接进入辅助登录页面。从那里,基于Web的应用程序登录将会(显然)失败。我知道它至少取得了初始的USER和PASSWORD,因为如果输入了错误的值,它会失败(错误的凭证通知)。如果输入了正确的值,UIWebView还将准确显示辅助登录页面。备注:当URL直接输入浏览器时,此辅助登录页面不可访问。

问题:请求知道是否有我在这里失踪的任何重定向?我如何触发action =“/ forms/logonchal_l10question.jsp”,这是我相信登录问题被生成和呈现的地方?

任何帮助,非常感谢。

可否请你让我知道在哪里可以找到在哪里

以下NSURL * URL配置

NSURL *url = [NSURL URLWithString:@"https://login.XXX.com/security/xxxforms// 
logonchalnp.fcc?TYPE=33554433&REALMOID=06-95b0f0c8-198a-1039-b583 
83b02659fd47&GUID=&SMAUTHREASON=0&METHOD=GET&SMAGENTNAME=owa5& 
TARGET=-SM-HTTPS%3a%2f%2fowa%2exxx%2ecom%2f"]; 

我们使用的是Sun的一个Web服务器的文件。

您能否给我文件的位置和名称以便我可以找到该文件。我不知道他们正在使用哪个操作系统(Solaris/Unix)。