nmap
nmap -p- -A -sS -T4 192.168.239.177
Starting Nmap 7.95 ( https://nmap.org ) at 2025-01-15 03:39 UTC
Nmap scan report for 192.168.239.177
Host is up (0.071s latency).
Not shown: 65533 filtered tcp ports (no-response)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH for_Windows_7.7 (protocol 2.0)
| ssh-hostkey:
| 2048 3e:40:e2:ef:21:ea:c1:77:b6:14:a3:f7:04:59:45:28 (RSA)
| 256 f8:fb:e3:c6:16:3a:e2:62:d0:e2:ae:d4:f2:9e:6f:6d (ECDSA)
|_ 256 94:5e:97:ad:f9:0f:81:b6:6b:3b:bd:98:43:c0:0d:6a (ED25519)
80/tcp open http Apache httpd 2.4.48 ((Win64) OpenSSL/1.1.1k PHP/8.0.7)
|_http-title: WebPage to PDF
| http-methods:
|_ Potentially risky methods: TRACE
|_http-server-header: Apache/2.4.48 (Win64) OpenSSL/1.1.1k PHP/8.0.7
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running (JUST GUESSING): Microsoft Windows 2019|10 (92%)
OS CPE: cpe:/o:microsoft:windows_server_2019 cpe:/o:microsoft:windows_10
Aggressive OS guesses: Windows Server 2019 (92%), Microsoft Windows 10 1903 - 21H1 (85%), Microsoft Windows 10 1607 (85%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 4 hops TRACEROUTE (using port 22/tcp)
HOP RTT ADDRESS
1 70.41 ms 192.168.45.1
2 70.39 ms 192.168.45.254
3 72.03 ms 192.168.251.1
4 72.05 ms 192.168.239.177 OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 108.27 seconds

只有80 和 22
那么突破口就是80了
这个网站是用来将web界面转化成pdf的

发现存在命令执行漏洞



但是发现除了curl好像其他执行不了

转化完pdf后自动跳转到生成的pdf文件那里

然后发现有个pdfs目录

里面有个私钥



那么我要要找用户是啥



在首页有这么一句话 那么猜测用户是p4yl0ad

果不其然ssh登录成功



ok

我认为下面这个方法才是正常的解法 上面那个方法应该是出题人忘记删了id_rsa 的pdf

这题还有另一种做法就是利用302跳转 做任意文件读取漏洞



我让他去读取我这个hearder的php文件他会跳转到etc/hosts 的文件夹 进行 文件读取

我们尝试一下这个方法

发现成功了!!!

然后利用这个方法读取用户的id_rsa

可以看到 这样也是成功的读取到了 用户的ssh 秘钥

进入提权环节

我信息收集了半天

发现有个 backup目录

同时backup目录下面有一个脚本

脚本的内容是循化备份



当我看到这个内容的时候第一个想到的就是环境变量劫持 或者直接写入提权命令 在这个脚本里面 提权 因为 linux靶机就经常出这种

但是我发现这两个方案好像不太行

然后就无从下手了

不知道要怎么提权了

然后我又发现在历史命令里面有一个比较有意思的命令



CreateSymlink.exe "C:\xampp\htdocs\logs\request.log" "C:\Users\Administrator\.ssh\id_rsa" 这个命令的意思类似于linux 的ln

就是将C:\xampp\htdocs\logs\request.log" 链接到 "C:\Users\Administrator.ssh\id_rsa

那如果这个能执行成功的话

那我们的备份文件将会看到Administrator 的ssh 私钥了

我们找找这个文件在哪里

找不到

直接下载一个

wget https://github.com/googleprojectzero/symboliclink-testing-tools/releases/download/v1.0/Release.7z

7za e Release.7z

然后上传到靶机上

然后执行.\CreateSymlink.exe "C:\xampp\htdocs\logs\request.log" "C:\Users\Administrator\.ssh\id_rsa"等待定时任务触发 应该就能够读取到ssh 的私钥了 但是 他靶场应该出了点问题导致 我执行的时候报错

靶场出问题了,思路懂了就行

Symbolic pg walkthrough Intermediate window 利用302进行文件csrf的更多相关文章

  1. Java 利用SWFUpload多文件上传 session 为空失效,不能验证的问题 swfUpload多文件上传

    Java 利用SWFUpload多文件上传 session 为空失效,不能验证的问题(转) 我们都知道普通的文件上传是通过表单进行文件上传的,还不能达到异步上传的目的.通过使用某些技术手段,比如jqu ...

  2. 利用其它带文件防护功能的软件防止*.asp;*.jpg写入文件。

    此木马是一个.NET程序制作,如果你的服务器支持.NET那就要注意了,,进入木马有个功能叫:IIS Spy,点击以后可以看到所有站点所在的物理路径.以前有很多人提出过,但一直没有人给解决的答案.. 防 ...

  3. 【转载】 Pyqt 利用QDataStream对文件进行存取

    # -*- coding: utf-8 -*- from PyQt4.QtGui import * from PyQt4.QtCore import * import sys QTextCodec.s ...

  4. Android利用Http下载文件

    Android利用Http下载文件 一.场景 下载存文本文件和下载如mp3等大容量的文件 界面 二.代码编写 1.AndroidMainfest.xml中配置 主要是解决网络权限和写SDCard的权限 ...

  5. EasyUI 关于IE使用window组件上传文件

    有时候IE会对使用window组件上传文件(第二次)不生效,解决方案是: 将该window每次打开的时候,使用: $('#adUploadWindow').window('refresh', 'pan ...

  6. 利用putty实现文件在linux上传和下载

    利用putty实现文件上传和下载:1.打开windows命令提示符窗口d:(putty在d盘下)cd putty(pscp.exe所在目录)2:上传(主要利用pscp程序)pscp d:/jdk-8u ...

  7. Java利用内存映射文件实现按行读取文件

    我们知道内存映射文件读取是各种读取方式中速度最快的,但是内存映射文件读取的API里没有提供按行读取的方法,需要自己实现.下面就是我利用内存映射文件实现按行读取文件的方法,如有错误之处请指出,或者有更好 ...

  8. window响应拖拽文件操作

    window响应拖拽文件操作 1.首先调用DragAcceptFiles,让控件或者窗体支持文件拖动操作函数功能:用来为拖放文件作初始化.函数原型: void DragAcceptFiles( HWN ...

  9. [转]利用ssh传输文件

    利用ssh传输文件 http://www.cnblogs.com/jiangyao/archive/2011/01/26/1945570.html 在linux下一般用scp这个命令来通过ssh传输文 ...

  10. .net上传文件,利用npoi读取文件信息到datatable里

    整理代码,.net上传文件,利用npoi读取文件到datatable里,使用了FileUpload控件,代码如下: protected void Button1_Click(object sender ...

随机推荐

  1. rabbitmq消息中间件的初步探索

    在上次学xattr的时候用它简单实现一个中间件,我去了解了一下rabbitmq这个消息中间件,感觉理论上还是挺好用的,给一般并发量的系统用足够了. 首先安装这个服务. sudo apt search ...

  2. ArcGIS遥感影像重采样操作及不同算法对比

      本文介绍在ArcMap软件中,实现栅格图像重采样的具体操作,以及不同重采样方法的选择依据.   在之前的博客中,我们介绍了基于Python中Arcpy模块对栅格图像加以批量重采样的方法:而在Arc ...

  3. Tornado框架之模板(三)

    知识点 静态文件配置 static_path StaticFileHandler 模板使用 变量与表达式 控制语句 函数 块 目录: 静态文件 static_path 对于静态文件目录的命名,为了便于 ...

  4. CTF中RSA相关题型总结(持续更新)

    e很小时: import gmpy2 from functools import reduce from Crypto.Util.number import long_to_bytes def CRT ...

  5. vscode代码注释插件koroFileHeader配置(自用)

    前言 一直以来写注释都是让人头疼的问题,力求保持注释风格统一也很麻烦,偶然间发现的这款vscode中的注释插件koroFileHeader,配置好后可以大大提高写注释的效率与积极性♪(∇*) 安装插件 ...

  6. javac 无效的目标发行版: 11

    maven编译出错. JAVA_HOME 设置成了 jdk8,此时 runner 选 11 也是没用的,务必再覆盖掉 JAVA_HOME.

  7. 【Python】【Matplotlib】词云图

    关于从网页获取文本 import requests from bs4 import BeautifulSoup code = requests.request("post",&qu ...

  8. sed 删除 替换 文件内容

      sed添加一行内容 使用sed命令添加一行内容有多种实现方法,下面是几种不同的实现方法: 方法一:使用sed命令在指定行前添加一行内容     sed '2i This is a new line ...

  9. 离线yum安装k8s(直接yum安装k8s)快速部署

    问题:如何在没有离线环境上服务器yum安装k8s环境? 环境:准备一台互联网的服务器+离线的服务器 写的比较简便........ 1.互联网服务操作添加阿里云YUM的软件源 cat > /etc ...

  10. 组件漏洞测试工具---Dependency-Check

    目录 文章综述 Dependency-Check简介 工作原理 常用命令 报告解读 使用场景 缺点 文章综述 本文主要介绍Dependency-Check工具的工作原理和使用方法,并提供一个开源方案帮 ...