学习
实践
活动
专区
工具
TVP
写文章

Gafgyt重用Mirai代码分析

重用Mirai代码 近期,几个Gafgyt的变种重用了Mirai的一些代码模块: HTTP 洪水 UDP 洪水 TCP 洪水 STD 模块 Telnet 爆破 分析的样本是 4b94d1855b55fb26fc88c150217dc16a Gafgyt 使用了 Mirai 泄露的代码,下图显示了这种区别: ? 左侧是 Gafgyt 反编译的代码,右侧是 Mirai 的源码。 Gafgyt 重用 Mirai 泄露的代码实现了 UDP 洪水的功能: ? TCP 洪水 Gafgyt 执行所有类型的 TCP 洪水攻击,如 SYN、PSH、FIN 等。 左侧为 Gafgyt 的 TCP 洪水模块,右侧是 Mirai 的类似代码。 STD 模块 Gafgyt 包含将随机字符串(硬编码的字符串数组)发送到特定的 IP 地址,Mirai 也有类似的功能。 总结 恶意软件开发者不能总是开发全新的代码,研究人员发现恶意软件开发者会经常重用恶意软件泄露的源代码

52030
  • 广告
    关闭

    新年·上云精选

    热卖云产品年终特惠,2核2G轻量应用服务器7.33元/月起,更多上云必备产品助力您轻松上云

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

    代码质量第 2 层 - 可重用代码

    3金伟强---(+云荐大咖).jpg可重用代码指:在相似业务场景下,用的是同一份代码。 可重用代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成可重用代码。 开发新功能时,重用代码可减少重复劳动。 可重用代码可以减少因需求变动,导致多次改动和漏改的情况。 如果做成可重用的,则只需改动一处。 如何写出可重用代码代码块的职责越多,越难被复用。写出可重用代码就是:识别,分离出可复用的部分。 总结 要写出可重用代码,本质就是识别和分离出可复用的部分。前端可以从 UI 展示,接口调用,业务流程,数据,工具函数 中找出可复用的部分。 代码质量的下一层次就是:可重构的代码。 3金伟强-(+云荐大咖).jpg 金伟强老师往期精彩文章推荐: 聊聊代码质量 - 《学得会,抄得走的提升前端代码质量方法》前言 代码质量第五层 - 只是实现了功能 代码质量第四层 - 健壮的代码 代码质量第三层

    1.5K102

    代码质量第 2 层 - 可重用代码

    重用代码指:在相似业务场景下,用的是同一份代码。 可重用代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成可重用代码。开发新功能时,重用代码可减少重复劳动。 可重用代码可以减少因需求变动,导致多次改动和漏改的情况。试想,要修改全站提交按钮的颜色,如果全站有100个包含提交按钮的页面,每个页面的按钮的样式都没复用,这改动量和漏改的风险都很大。 如果做成可重用的,则只需改动一处。 如何写出可重用代码 代码块的职责越多,越难被复用。写出可重用代码就是:识别,分离出可复用的部分。 考虑这样的场景:代码块A 的功能是获取接口数据,并渲染 UI。 代码块B 的 UI 和 A 一样,但获取的接口数据不一样。代码块C 获取的数据和 A 一样,但 UI 和 A 不一样。A,B,C 之间的代码都不能被复用。 [grhqxhup1n.jpg? 总结 要写出可重用代码,本质就是识别和分离出可复用的部分。前端可以从 UI 展示,接口调用,业务流程,数据,工具函数 中找出可复用的部分。 代码质量的下一层次就是:可重构的代码

    27820

    “前.NET Core时代”如何实现跨平台代码重用 ——程序集重用

    除了在源代码层面实现共享(“前.NET Core时代”如何实现跨平台代码重用 ——源文件重用)之外,我们还可以跨平台共享同一个程序集,这种独立于具体平台的“中性”程序集通过创建一种名为“可移植类库(PCL 我们采用C#、VB.NET这样的编程语言编写的源文件经过编译会生成有IL代码和元数据构成的托管模块,一个或者多个托管模块合并生成一个程序集。 如下面代码片断所示,我们在控制台上输出了三个基本类型(Int32、XmlDocument和DataSet)所在程序集的全名。 如下图所示,如果我们编写的代码需要分别对Windows Desktop/Phone、Windows Phone/Store和Windows Store/Desktop平台提供支持,那么这样的代码依赖的部分仅限于两两的交集 [1] 当我们执行C#编译器(csc.exe)以命令行的形式编译C#源代码时,引用的程序集通过“/reference”开关指定。

    31980

    ASP.NET重用代码技术 – 代码绑定技术

    本文将会为您展示如何利用代码绑定技术来实现Web页面表示层和商业逻辑代码的分离,并建议您使用代码绑定技术实现代码的可重用。 在接下来的另外一篇文章当中,我们会给出另外的一种实现代码重用的实现技术。   当然,通过一定的工作,代码绑定技术可以用在多种需要可重用代码的环境当中。每一个ASPX文件有他们自己的代码绑定文件,并且多个功能类似的ASPX文件可以共享一个公共的代码绑定文件。 本文会展示如何实现你的ASPX文件的最基本代码绑定技术,并且会详细讨论代码绑定技术如何被应用于代码重用方面。 代码绑定技术对于组织程序代码来讲是一项卓越的技术,但是它或许仅仅对那些在某些环境下的代码重用有帮助作用,主要是这个技术非常适合于在需要建立两个为了相同或相似目的页面的时候使用,这时候起到了很好的代码重用的作用

    22841

    “前.NET Core时代”如何实现跨平台代码重用 ——源文件重用

    Library)来说,虽然在API定义层面上存在一些共同之处,但是由于它们定义在不同的程序集之中,所以在PCL(Portal Class Library)推出之前,针对程序集的共享是不可能实现的,我们只能在源代码层面实现共享 源代码的共享通过在不同项目(针对不同.NET Framework平台)之间共享源文件的方式来实现,至于具体采用的方式,我们有三种不同的方案供你选择。 一、源文件共享 对于一个能够多个针对不同.NET Framework平台的项目共享的源文件,定义其中的代码也有不少是针对具体某个.NET Framework平台的。 对于这种代码,我们需要按照如下的方式进行编写,相应的项目以添加编译的方式选择与自身平台相匹配的代码编译道生成的程序集中。 对于上面我们介绍的两种源代码的共享方式来说,它们都是针对某个单一文件的共享,而Shared Project则可以对多个源文件进行打包以实现批量共享。

    39260

    代码质量第2层-可重用代码

    重用代码指:在相似业务场景下,用的是同一份代码。 可重用代码可以减少重复劳动。一个软件中,会有很多类似的业务场景。将这些场景抽象成可重用代码。开发新功能时,重用代码可减少重复劳动。 可重用代码可以减少因需求变动,导致多次改动和漏改的情况。试想,要修改全站提交按钮的颜色,如果全站有100个包含提交按钮的页面,每个页面的按钮的样式都没复用,这改动量和漏改的风险都很大。 如果做成可重用的,则只需改动一处。 一、如何写出可重用代码 代码块的职责越多,越难被复用。写出可重用代码就是:识别,分离出可复用的部分。 二、总结 要写出可重用代码,本质就是识别和分离出可复用的部分。前端可以从UI展示,接口调用,业务流程,数据,工具函数中找出可复用的部分。 代码质量的下一层次就是:可重构的代码。 推荐阅读 代码质量第3层-可读的代码代码质量第4层——健壮的代码

    13520

    通过代码重用攻击绕过现代XSS防御

    我们将在代码重用攻击领域探索一种相对较新的技术。Web的代码重用攻击于2017年首次描述,可用于绕过大多数现代浏览器保护,包括:HTML sanitizers,WAF和CSP。 您可以将数学函数视为一些未真正使用的旧代码。 作为攻击者,我们可以滥用数学计算器代码来评估并执行JavaScript,而不会违反CSP。我们不需要注入JavaScript。 让我们首先考虑以下html

    此HTML将触发jQuery Mobile的Popup Widget中的代码。 jQuery中负责此工作的代码如下所示: ? 这是一个代码小工具,我们可以滥用它来运行JavaScript。我们只需要绕过注释,然后我们就可以做我们想做的任何事情。 最后的话 这是对Web上的代码重用攻击的介绍,我们已经看到了jQuery Mobile中的真实脚本小工具的示例。

    55510

    把 WebAssembly 用于提升速度和代码重用

    但是这种低级角色鼓励优化:浏览器虚拟机的即时(JIT)编译器可以将可移植的 WebAssembly 代码转换为快速的、特定于平台的机器代码。 这是 JIT 编译器的工作,它将 WebAssembly 虚拟栈机器代码转换为实际机器代码。 WebAssembly 解决了计算中的另一个传统目标:有意义的代码重用。 因此 WebAssembly 是重用遗留代码和扩展新代码使用的一种诱人方式。例如最初作为桌面应用的用于图像处理的高性能程序在 Web 应用中也可能是有用的。 然后 WebAssembly 成为重用的有吸引力的途径。(对于计算限制的新 Web 模块,WebAssembly 是一个合理的选择。)我的预感是 WebAssembly 将在重用和性能方面茁壮成长。

    38140

    ASP.NET重用代码技术 – 用户控件技术

    作者: 苏红超      使用ASP.NET中的代码绑定技术来使得代码重用变得简单可行。 我们发现,利用代码绑定技术我们可以容易的将我们的代码和内容分离开来,利用它可以建立可重用代码,只是这种技术本身也存在着一些局限性。 在以前的ASP当中,可重用的技术实现选择是相当受限制的。许多的开发者一般都是借助将公共的常用的子过程放到那些包含文件当中的做法来实现一定的所谓代码重用的。 有了ASP.NET,我们拥有了一个新的简单的工具来编写可重用代码—用户控件。 对这个页面来讲,我们只需要很少的代码,这要好好谢谢用户控件带来的代码重用了。

    16220

    为什么我们无法写出真正可重用代码

    为什么可重用性的承诺总是无法兑现?为什么我们无法写出真正可重用代码? 这些都是很好的例子,Friedrichsen 很好地解释了为什么实现可重用性是如此困难。 在 C# 代码里,我没有创建节点,而是通过结构来组织代码。在 OOP 中,每一样东西都有它们特定的位置,什么时候该放在哪里都有可遵循的规则。 因此,从表面上看,C# 代码更适合用来创建可重用的组件。 但说到可重用性时,比如在微服务中的可重用性,这两种范式会得出截然不同的答案。纯 FP 范式将创建可重用代码,但在大型的应用程序中,调用方的复杂性会增加。OO 范式将创建不可重用代码。 为了重用 C# 代码,以便能够把它部署到新容器里,代码需要进行大量的调整。 大多数情况下,OO 就是要在写代码之前先理清楚需求。 好的 FP 项目创建可重用的组件,在一开始只需要几行代码。不管代码库有多大,好的 OO 项目可以创建易理解的代码结构。

    14510

    hadoop重用机制

    hadoop重用机制 Hadoop1.0JVM重用及调优 什么是HadoopJVM重用 ? Hadoop里每个task任务的执行都会启动JVM进程来运行。 但是jvm的重用也会造成在同一个jvm中的碎片增加,导致jvm的性能变差。 但是这一负面影响不是很大,总的来说,jvm重用还是值得使用的,尽管相对于那些长时间且task数少的job来说,jvm重用几乎没有什么性能提升。 在这种情况下,可以看出每一个JVM仅会执行一Task, JVM并未被重用。 用户可以通过启用uber组件来允许JVM重用——即在同一个container里面依次执行多个task。 这样Application Master便不用再为每一个task向Resource Manager去申请一个单独的container,最终达到了 JVM重用(资源重用)的目的。

    63610

    重用Session提高https性能

    TLS有几个特征可以用来消除额外的来回,比如重用一个会话session,两个标准会话重用机制是 session IDs (RFC 5246) 和 session tickets (RFC 5077),使用其中一个技术 ,一个客户端可以重用之前创建的会话,这个会话是之前和服务器进行握手成功的,这样可以减少一次来回过程。    Session ID重用   重用一个加密的会话是很容易,前提是客户端和服务器端都保存了会话key,通过每个连接给出的唯一标识,服务器知道一个进来的连接是否已经在之前创建过,如果服务器在会话中也已经有会话 key,它就能重用。    ticket到客户端,存储到客户端本地,当重用会话时,客户端发送会话ticket到服务器,服务器解密然后重用会话。

    86520

    Django下重用自己写的app

    重用很重要 设计、构建、测试和维护一个网页应用有许多工作要做。许多Python 和 Django 项目都有常见的共同问题。可重用将会节省这些重复性工作。 可重用性在Python 中是一种常见的方式。 查阅一下Django Packages中已经存在的可重用的应用,你可以结合它们到你的项目。Django 自身也只是一个Python 包。 Python 包 按照简单重用的方式,将具有相关性的Python代码归为一组。一个包包含一个或多个Python文件(也叫做“模块”)。 如何选择License超出本教程的范围,但值得一说的是, 公开发布的代码如果没有License是毫无用处的。 只需知道你所选择的License,将决定谁能使用你的代码. 下一步我们将创建一个setup.py 文件,它提供如何构建和安装该应用的详细信息。

    47630

    关注

    腾讯云开发者公众号
    10元无门槛代金券
    洞察腾讯核心技术
    剖析业界实践案例
    腾讯云开发者公众号二维码

    相关产品

    • 腾讯云微搭低代码

      腾讯云微搭低代码

      腾讯云微搭低代码 WeDa 是高效、高性能的拖拽式低代码开发平台,向上连接前端的行业业务,向下连接云计算的海量能力,助力企业垂直上云。微搭将繁琐的底层架构和基础设施抽象化为图形界面,通过行业化模板、拖放式组件和可视化配置快速构建小程序、H5应用、Web应用等多端应用,免去了代码编写工作,让您能够完全专注于业务场景。

    相关资讯

    热门标签

    活动推荐

    扫码关注腾讯云开发者

    领取腾讯云代金券