IP网络对讲广播系统审计

前言

这个系统是前两年在一个内网遇到的,当时顺手试了一个admin登陆之后再没有然后了,最近发现有大佬分享关于这个系统的漏洞,于是就把自己当初看的几个漏洞分享一下,系统比较简单,漏洞点很多,不要做坏事哦。

审计过程

先找系统指纹,到底是海康威视的还是SPON世邦的傻傻分不清楚,不管怎样先梭哈再说。

网上随便找了个安装包,安装过后界面如下

程序的目录差不多是这个样子的,我们想要的Web服务就在Wnmp目录下

安装过后的Web页面差不多就是这个样子,PHP写的

弱口令

系统安装过后,会有一个admin/admin的默认密码

源码拿到本地搜了一下admin关键字发现js里面留了一个后门的账号administrator/800823

任意文件读取

搜了一下fopen函数,找到php/exportrecord.php找到一处任意文件读取,且downname参数没有任何过滤

命令执行

同样搜索exec关键字,找到ping.php文件中有一处执行命令的地方。

ping.php页面接受的参数同样没有过滤,且是直接拼接执行的,用|拼接一下就可以了

文件上传点1

找一下关于获取文件信息的接口,搜一下$_FILES,定位到addmediadata.php文件

代码如下:

这里可以手动指定上传路径,并且可以构造目录传越

只要我们上传的文件小于500m就可以正常上传,后面也没有对文件做任何的过滤

文件上传点2

同理找文件上传的方式,定位到my_parser.php文件比较简单,没有任何过滤。

文件上传点3

addmediadatapath.php文件同理上前面的几个差不多,也是没有过滤直接拼接的路径导致路径穿越

文件上传点4

addscenedata.php也是将../images/scene/和文件名拼接了

文件上传点5

busyscreenshotpush.php这个就和之前有点不一样。

文件落地位置在file_put_contents($imagefile, base64_decode($content))这里base64解密的内容来自我们传入的imagecontent

其中落地文件名由这几个参数控制的

最后imagename需要满足这个条件1_2_3.php

文件上传点6

uploadjson.php接口,接收了两个参数分别是文件内容和文件名,文件名可以拼接路径穿越。

声明:该漏洞已通报给相关单位修复,本文章仅供代码审计学习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/800122.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大商创多用户商城系统 多处SQL注入漏洞复现

0x01 产品简介 大商创多用户商城系统是一个功能强大、灵活多变的新零售电商系统服务商。该系统支持平台自营和商家入驻,实现多元化经营模式,能够全面整合供应商、生产商、经销商和消费者等产业链资源,提高产品多样性,加快资金流动速度,并有助于减少不必要的成本输出。 0…

SAP ABAP CDS-01 ABAP CDS概述

ABAP CDS概述 ABAP核心数据服务(ABAP CDS)是AS ABAP(Application Server ABAP 的缩写,即 ABAP 应用服务器)通用CDS概念的平台独立实现。ABAP CDS使得在标准AS ABAP数据库上定义语义数据模型成为可能。与特定于SAP HANA的变体HANA CDS不同,ABAP CDS独立于数据…

【二分查找】Leetcode 山脉数组的峰顶索引

题目解析 852. 山脉数组的峰顶索引 这到题使用暴力枚举的查找方法发现这段数组是有二段性的&#xff0c;峰顶左边的一段区间是一段递增区间&#xff0c;右边的一段区间是一段递减区间 算法讲解 class Solution { public:int peakIndexInMountainArray(vector<int>&am…

循序表实战——基于循序表的通讯录

前言&#xff1a;本篇文章主要是利用顺序表作为底层&#xff0c; 实现一个通讯录。偏向于应用&#xff0c; 对于已经学习过c的友友们可能没有难度了已经。没有学习过c的友友&#xff0c; 如果顺序表不会写&#xff0c; 或者说没有自己实现过&#xff0c; 请移步学习顺序表相关内…

多线程重点知识(个人整理笔记)

目录 1. java 多线程 1.1. 什么是进程?什么是线程? 1.1.1. 进程 1.1.2. 线程 1.1.3. 多线程 2. 并行和并发有什么区别&#xff1f; 3. 守护线程是什么&#xff1f; 4. 创建线程有哪几种方式&#xff1f; 4.1. 线程的常见成员方法 5. 线程安全问题 5.1. synchronize…

深度探索Sketch:功能、历程、替代软件及技巧一览

Sketch 它是一个适合所有设计师的矢量绘图应用程序。矢量绘图也是设计网页、图标和界面的最佳方式。但除了矢量编辑的功能外&#xff0c;我们还增加了一些基本的位图工具&#xff0c;如模糊和颜色校正。 为什么选择Sketch Sketch 它是为图标设计和界面设计而生的。它是一个优…

LangChain - 文档转换

文章目录 一、文档转换器 & 文本拆分器文本拆分器 二、开始使用文本拆分器三、按字符进行拆分四、代码分割 (Split code)1、PythonTextSplitter2、JS3、Markdown4、Latex5、HTML6、Solidity 五、MarkdownHeaderTextSplitter1、动机2、Use case 六、递归按字符分割七、按tok…

2024年C语言最新经典面试题汇总(21-30)

C语言文章更新目录 C语言学习资源汇总&#xff0c;史上最全面总结&#xff0c;没有之一 C/C学习资源&#xff08;百度云盘链接&#xff09; 计算机二级资料&#xff08;过级专用&#xff09; C语言学习路线&#xff08;从入门到实战&#xff09; 编写C语言程序的7个步骤和编程…

Navicat中导出导入txt结合sql语句实现sqlserver转到Postgis空间数据库中

效果 1、sqlserver数据库中导出 sqlserver数据库字段 2、postgis中导入

C++ //练习 11.20 重写11.1节练习(第376页)的单词计数程序,使用insert代替下标操作。你认为哪个程序更容易编写和阅读?解释原因。

C Primer&#xff08;第5版&#xff09; 练习 11.20 练习 11.20 重写11.1节练习&#xff08;第376页&#xff09;的单词计数程序&#xff0c;使用insert代替下标操作。你认为哪个程序更容易编写和阅读&#xff1f;解释原因。 环境&#xff1a;Linux Ubuntu&#xff08;云服务…

Golang | Leetcode Golang题解之第9题回文数

题目&#xff1a; 题解&#xff1a; func isPalindrome(x int) bool {// 特殊情况&#xff1a;// 如上所述&#xff0c;当 x < 0 时&#xff0c;x 不是回文数。// 同样地&#xff0c;如果数字的最后一位是 0&#xff0c;为了使该数字为回文&#xff0c;// 则其第一位数字也…

antd vue table控件的使用(二)

今天就讲讲Ant Design Vue下的控件 ---- table表格&#xff08;选择和操作&#xff09; 结合项目中的需求&#xff0c;看看如何配置table控件&#xff0c;需求&#xff1a; &#xff08;1&#xff09;根据列表中的选项&#xff0c;单选&#xff1b; &#xff08;2&#xff0…

京东API接口采集商品详情数据(测试入口如下)

京东API接口采集商品详情数据 请求示例&#xff0c;API接口接入Anzexi58 在当今数字化时代&#xff0c;电商平台的API接口成为了获取商品详情数据的重要途径之一。作为中国最大的自营式电商企业&#xff0c;京东提供了丰富的API接口供开发者使用&#xff0c;以便获取京东平台上…

【C++】每日一题 58 最后一个单词的长度

给你一个字符串 s&#xff0c;由若干单词组成&#xff0c;单词前后用一些空格字符隔开。返回字符串中 最后一个 单词的长度。 单词 是指仅由字母组成、不包含任何空格字符的最大 子字符串 #include <iostream> #include <string>int lengthOfLastWord(std::strin…

计算机网络——38报文完整性

报文完整性 数字签名 数字签名类比于手写签名 发送方数字签署了文件&#xff0c;前提是他是文件的拥有者/创建者可验证性&#xff0c;不可伪造性&#xff0c;不可抵赖性 谁签署&#xff0c;接收方可以向他人证明是他&#xff0c;而不是其他人签署了这个文件签署了什么&#…

day02php环境和编译器—我耀学IT

一、环境介绍 1、web 环境 使用 PHP 需要先安装环境&#xff0c;安装环境比较麻烦&#xff0c;需要安装Web服务、PHP应用服务器、MySQL管理系统。 Web服务&#xff1a;apache 和 nginx PHP&#xff1a;多版本 MySQL&#xff1a;多版本 2、环境集成包 因为多环境、多版本、多系…

Java学习笔记23(面向对象三大特征)

1.5 多态 ​ *多态(polymorphic) ​ *方法或对象具有多种形态&#xff0c;是面向对象的第三大特征&#xff0c;多态是建立在封装和继承基础之上的 1.多态的具体体现 1.方法的多态 &#xff08;重写和重载体现了多态&#xff09; 2.对象的多态 ​ 1.一个对象的编译类型和…

三国游戏(贪心 排序)

三国游戏 利用贪心、排序、前缀和的计算方法&#xff0c;特别注意不要数据溢出了&#xff0c;sum 加long long s[i] x[i]-y[i]-z[i]输入: 3 1 2 2 2 3 2 1 0 7输出: 2#include <bits/stdc.h> using namespace std;const int N 1e5100;typedef long long ll;bool cm…

容器和K8s常见概念

【容器】 1、Open Container Initiative&#xff08;OCI&#xff09;&#xff1a;制定和推动容器格式和运行时的开放标准。容器运行时需要遵循此标准。主要的产出物包括&#xff1a; OCI Image Specification: 定义容器镜像格式的规范&#xff0c;统一描述容器镜像的内容和结…

ubuntu 22.04安装Anaconda3步骤

系统&#xff1a;Ubuntu 22.04 目标&#xff1a;安装Anaconda3 步骤&#xff1a; 1.在Anaconda官网 link下载xx.sh文件 2.进入Download文件夹&#xff0c;添加文件执行权限 chmod x Anaconda_xxx.sh 3.运行 ./Anaconda_xxx.sh 4.确定当前安装路径,一般为如下形式 /home/usr-nam…