Metasploitable2 虚拟系统是一个特别制作的 Ubuntu 操作系统,其设计的目的是作为一种网络安全测试演练的工具。Metasploitable2 开放的服务和常见洞如图。
弱密码漏洞 | Root 用户弱密码漏洞 |
---|---|
Samba ms -rpc shell命令注人漏洞 | Distcc后门漏洞 |
VSFTPD源码包后门洞 | Samba sysmlink默认配置目录遍历漏洞 |
Unrealircd后门漏洞 | Php cgi 参数注入漏洞 |
LinuxNFS共享目录配置漏洞 | Druby 远程代码执行漏洞 |
Java rmi server 命令执行漏洞 | Ingrelock 后门漏洞 |
Tomcat管理配置漏洞 |
1.root 用户查询IP地址:ifconfig
2.显示当前目录:pwd
3查询CPU内存:top -n 10
4.显示文件内容:more
、cat
5修改时间日期:date -s
6.创建文件夹:mkdir
7,使环境变量生效:source.bash_profile
8.编辑:输人“vi”后,按a键进行修改
9.删除:mm
10.复制:cp
cp -r risk/home/trade
aa.bmp
,命令为 mv aa.jpg aabmpo
#cat /proc/cpuinfo | grep " physical id" sort unig l wc -l
查看逻辑 CPU的个数:
#cat /proc/cpuinfo I grep "processor" I wc -l
查看CPU是儿核:
#cat /proc/cpuinfo grep "cores" uniq
查看CPU的主频
#cat /proc/cpuinfo l grep MHz l uniq
13.Oracle 启动和停止
(1)0racle启动
(2) 0racle停止
14.查看文件大小、文件和文件夹属性
#du - sh filename
#ls -1 filename
#ls -ld foldername
15.查看 Linux系统多少位:uname -a
64 位的显示:
Linux ps4 2.6.16.46 -0.12 -smp #1 SMP Thu May 17 14: 00: 09 UTC 2007 x86 64 x8664
x86_64 GNU/Linux
后面显示有 x86_64。
32位的显示:
Linux fc6 2.6.18 -1.2798. fc6 #1 SMP Mon 0ct 16.14: 54: 20 EDT 2006 686 i686 i386GNU/Linux
前面的课程介绍了常见的服务和它们对应端口,这些服务在 Linux 中都对应着不同的配置文件(不同 Linux 版本配置文件位置略有不同);
标准: /etc/服务名称/服务名称。conf
网卡主配置文件:/etc/sysconfig/network -scripts/ifcfg -ens33
SSHD 服务主配置文件:/etc/ssh/sshd_config
YUM 仓库: /etc/yum.repos.d/xx,repo
HTTPD 服务主配置文件: /etc/httpd/conf/httpd.conf
VSFTPD 服务主配置文件:/etc/sftpd/vsftpd.conf
TFTP 服务主配置文件:/etc/xinetd.d/tftp
Bind 服务主配置文件:/etc/named.conf
Samba服务主配置文件:/etc/samba/smb.conf
NFS 主配置文件:/etc/exports
(是空的,需要自已去添加)
Autofs 主配置文件:/etc/auto.master
DHCP 主配置文件:/etc/dhcp/dhcp.conf
Postfix主配置文件:/etc/postfix/main.c
Dovecot 主配置文件:/etc/dovecot/dovecot.conf
用Kali Linux 对 Metasploitable2 进行端口服务的扫描,如图5-1-11所示,可以发现HTTP 服务及80 端口是开放的,于是在 Metasploitable2 建立网页。
使用用户名,msfadmin,密码msfadmin登录。
输人id,查看msfadmin 的权限,如图示,会发现 sfadmin 的权限很低,这样的权限不能对系统配置进行修改。
输入“sudo passwdroot”,如图5-1-7 所示,发现sfadmin 用户居然能设置 root 密码密码设置之后,切换到 root 用户。
为了弄清楚 msfadmin为什么能为 root 设置密码,在root 中建立一个用户abc 并切换到abc 用户下,尝试修改 root 密码,如图5-1-9 所示,显示bc 用户不在 sudoers 文件中。
找到/etc/soduers 文件查看内容,发现 admin 组里的用户有着和root 用户一样权限,于是搜一下admin 组中的用户,发现里面有 msadmin 用户,建立普通用户 harker,并把 harke加人admin 组中,于是 harker 和 msfadmin 用户一样有权设置 root 密码了。
用Kali Linux 对 Metasploitable2 进行端口服务的扫描,如图所示,可以发现HTTP 服务及80 端口是开放的,于是在 Metasploitable2 建立网页。
在Metasploitable2 发布网页的本地目录:
在/var/www/目录下新建一个目录abc,在abc 目录下建立文件index.html,输入“china skill”,最后用浏览器访问这个网页:
进人Metasploitable2/etc/init.d 目录,查看Metasploitable2 漏洞机的各种服务程序。输入“/etc/apache2 stop”,停止网站服务,这时网页就不能被访问了。
同样地,输人“/etc/xinetd.d stop”“/etc/postfix stop”“/etc/proftp stop”“/etc/ssh stop等,对应的服务端口在 Kali Linux 中也扫描不到了。
Telnet 和 SSH 是用于远程访问服务器的两大常用协议,如图所。利用它们可以管理并监控生产服务器和企业服务器,更新服务器内核,安装最新的软件包和补丁,能够远程登录服务器,开展软件开发、测试运行、更改代码和重新部署等工作。
Telnet 取名自 Telecommunications 和 Networks 的联合缩写,这是一种在 UNIX平台上最为人所熟知的网络协议。
Telnet 中没有使用任何验证策略及数据加密方法,因而带来了巨大的安全威胁,这就是Telnet 不再用于通过公共网络访问网络设备和服务器的原因。
SSH 取名自安全外壳 (Secure Shell),它现在是通过互联网访问网络设备和服务器的主要协议。
协议对比:
虽然出于安全的原因,Telnet 基本上已经被SSH 完全代替,但是在一些测试的、无密的场合,由于自身的简单性和普及性,Telnet 依然被经常使用。
VNC (Virtual Network Console)是虚拟网络控制台的缩写。VNC是基于UNIX 和Linux 操作系统的开源软件,远程控制能力强大,高效实用,其性能可以和 Windows及MAC中的任何远程控制软件相媲美。在 Linux 中,VNC 包括以下四个命令:ncserver.vncviewer、vncpasswd和ncconnect。大多数情况下,用户只需要其中的两个命令:vncserver利利 vncviewer。
Hydra 和 Medusa 是目前应用较广的密码破解工具,它们支持大规模并行化、模块化支持大部分的允许远程登录的服务。Medusa 比 Hydra 应用稳定,代码结构二次开发简单速度上有一定的优势。
在Kali Linux 的终端中执行“hydra -h”:
常用参数如下:
server,目标DNS、IP地址或一个网段。
service,要破解的服务名。
OPT,一些服务模块的可选参数。
Hydra 的使用方法如下:
hydra[[[ -ILOGINI-L FILE][ -p PASSI-P FILE]]I[ -C FILE]][ -e nsr][ -oFILE][ -tTASKS]
[ -M FILE[-TTASKS11 -W TIME][ - W TIME][ -f][ -S PORT][-x MIN:MAX:CHARSET]
[ - TIME][ -SOuvVd46] [ service://server[ ;PORT][/OPT]]
在Kali Linux 的终端中执行 medusa -h
:
其中:
Medusa 的使用方法如下:
medusa [ - h hostl - H file][ - u useramel - U file][ - p passwordl - P file][ - C file] -M module[ OPT]
Hydra 和 Medusa 支持的协议有 adam6500 asterisk,cisco cisco - enable cvs firebird、ftpftps ,http[ s] - | headl getlpost , http[ s] - getlpost - form ,http - proxy ,http - proxy - urlenum.icq ,imap[ s] ,irc ,ldap2[ s] ,ldap3[ - cram l digest md5 ][ s ] ,mssql ,mysql,nntp ,oracle - listener ,oracle - sid,pcanywhere ,penfs , pop3[ s ] ,postgres ,radmin2 ,rdp ,redis ,rexec ,rlogin ,rpcap rshrtsp,s7 - 300,sip ,smb ,smtp s] ,smtp - enum , snmp socks5 ,ssh ,sshkey ,svn,teamspeak telnet[ s ]vmauthdvnc xmpp
MySOL 是一个关系型数据库管理系统,由瑞典 MySOLAB 公司开发,目前属于 Oracle 公司。MySOL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
Linux 系统中MySQL的安装详细见MySQL安装
PostgreSOL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS)。
PostgreSOL的主要优点如下:
本案例是利用 Kali Linux 中的三种工具结合自身的字典,对 Metasploitable2 网络靶机的SSH 服务登录密码进行破解。图5-2-10所是利用Kali Linux 中的 Medusa 具对 SSH服务登录密码进行破解;图5-2-11 所是用Hdra 工具对 SSH 服务登录密码进行利用MSF中的 ssh_login 模块对SSH 服务登录密码进行破解。
破解成功与否与字典有关,Kali Linux 自带了一些密码字典,它们都存放在特定目录下/usr/share/wordlists。
使用MSF进行破解:
在Kali Liunx 中输入“vncviewer 192.168.244.135”,密码为 password (默认密码),进入Metasploitable2 网络靶机的图形管理界面:
(1)FTP服务的含义
FTP是TCP/IP 协议组中的协议之一。FTP 协议包括两个组成部分:其一为FTP 服务器其二为FTP客户端。其中FTP 服务器用来存储文件,用户可以使用FTP 客户端通过FTP协议访问位于FTP 服务器上的资源。在开发网站的时候,通常利用FTP 协议把网页或程序传到Web 服务器上。此外,由于FTP 传输效率非常高,在网络上传输大的文件时,一般也采
用该协议。
默认情况下,FTP协议使用TCP 端口中的20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是 20;如果采用被动模式,则具体最终使用哪个端口,由服务器端和客户端协商决定。
(2)FTP的安装
一般 Linux服务安装有两种方式:网络安装和本地安装,网络安装只要直接输入“yum或“apt -get”+服务名即可,本地安装则首先要挂载系统光盘再对etc/yum. repo.d 文件夹里的内容进行修改,删除网络 YUM 源的文件等。利用yum install vsftp*-y”安装FTP服务之后,对FTP服务进行验证。
(1) Samba 服务的含义
Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端序构成。SMB(Server Messages Block,信息服务块) 是一种在局域网上共享文件和打印机的通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。
(2)Samba 服务的安装
Samba 服务安装类似于FTP 服务,如图5-3-3所在Samba 服务选择共享文件夹时,需要配置smb.conf。
后门程序一般是指那些绕过安全性控制而获取对程序或系统访问权的程序方法。在软件的开发阶段,程序员常常会在软件内创建后门程序,以便修改程序设计中的缺陷。但是,如果这些后门被其他人知道,或是在发布软件之前没有删除,那么它就成了安全风险,容易被黑客当成漏洞进行攻击。
后门程序,与通常所说的“木马”有联系,也有区别。联系在于:都是隐藏在用户系统中向外发送信息,并且本身具有一定权限,以便远程机器对本机的控制。区别在于: 木马是一个完整的软件,而后门则体积较小,并且功能都很单一。
后门程序和电脑病毒最大的差别,在于后门程序不一定有自我复制的动作,也就是后门程序不一定会“感染”其他电脑。
后门是一种登录系统的方法,它不仅能绕过系统已有的安全设置,还能挫败系统上各种增强的安全设置。
最著名的后门程序是微软的 Windows Update。Windows Update 的运行流程为:开机时自动连上微软的网站,将电脑的现况报告给网站,以进行处理,网站通过Windows Update 程序通知使用者是否有必须更新的文件,以及如何更新。
本项目任务一中列举了 Metasploitable2 靶机中开放的所有端口,其中有些是预留的后门端口。
一些服务往往包含了命令执行漏洞。