精华内容
下载资源
问答
  • 为了研究代码混淆技术的安全性,利用AOP提供的连接点模型和字节码操作机制,提出了一种新的针对混淆代码攻击方法,其操作均在字节码级别上完成。实验证明,该方法不需要获取目标程序的源代码,从而使代码混淆失去意义;...
  • 恶意代码攻击原理

    千次阅读 2019-04-19 16:44:36
    @TOC关于恶意代码攻击原理 恶意代码实现入侵的相关技术 (1) 渗透技术: 渗透的方式感染可执行程序、分区表和数据文件; 通过移动介质; 通过人、社会工程方式; 借助于系统和软件漏洞; 通过电子邮件Web...

    @TOC关于恶意代码攻击原理

    恶意代码实现入侵的相关技术

    (1) 渗透技术:

    渗透的方式感染可执行程序、分区表和数据文件;

    通过移动介质;

    通过人、社会工程方式;

    借助于系统和软件漏洞;

    通过电子邮件Web网站和网页;

    P2P文件共享;

    即时通信工具和ARP欺骗方式;

    (2) 自启动技术:(目的是保证恶意代码在受害主机下一次开启主机后再次被激活)

    基本方法:

    1) 通过服务启动;

    很多开机启动程序仅仅在启动项里面,只有登录后才能真正的启动,windows服务在开机前未进行用户登录前就启动了,恶意代码通过服务启动的方式渗透

    2) 通过添加注册表启动;

    3) 通过文件关联启动;

    4) 通过修改程序系统配置的文件启动;

    5) 作为其他程序的插件启动;

    6) 通过文件绑定方式启动;

    (3) 自我保护技术

    (一) 反静态分析:

    1) 自身隐藏在注册表、重要文件或系统文件或系统文件夹等隐蔽性很强的位置,躲避反恶意代码的检测

    2)
    微信截图_20190417215950.png
    加壳/多态技术:将恶意代码用一段不被非法修改或反编译的程序封装起来,在这一个可执行的文件中,通过一些被非法修改或反编译的程序,即外壳保护后压缩原来exe文件,通过loader加载映射进入exe文件,实现了恶意代码返检测的功能

    相关加壳技术的代码(查找了相关的资料学过java的可以上机运行一下)

    bool CPack::Pack(WCHAR * szPath)
    
    {
    
     CPe objPe;
    
     //读取要被加壳的PE文件
    
     DWORD dwReadFilSize = 0;
    
     HANDLE hFile = CreateFile(szPath,GENERIC_READ | GENERIC_WRITE, 0, NULL,
    
     OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
    
     DWORD dwFileSize = GetFileSize(hFile, NULL);
    
     char * pFileBuf = new char[dwFileSize];
    
     memset(pFileBuf, 0, dwFileSize);
    
     ReadFile(hFile, pFileBuf, dwFileSize, &dwReadFilSize, NULL);
    
     //获取PE头文件信息
    
     PEHEADERINFO pPeHead = { 0 };
    
     objPe.GetPeHeaderinfo(pFileBuf, &pPeHead);
    
     //加密
    
     IMAGE_SECTION_HEADER pTxtSection;
    
     objPe.GetSectionInfo(pFileBuf, &pTxtSection, ".text");
    
     objPe.XorCode((LPBYTE)(pTxtSection.PointerToRawData + pFileBuf), pTxtSection.SizeOfRawData);
    
     //用loadLibrary加载壳文件
    
     HMODULE pLoadStubBuf = LoadLibrary(L"..\\Release\\Stub.dll");
    
     //存储必要的信息
    
     PPACKINFO PackInfoAdd = (PPACKINFO)GetProcAddress((HMODULE)pLoadStubBuf, "g_PackInfo");
    
     PackInfoAdd->dwOriStartPoint = pPeHead.pOptionHeader->AddressOfEntryPoint; //需要跳转的OEP
    
     PackInfoAdd->dwImageBase = pPeHead.pOptionHeader->ImageBase; //默认加载基址
    
     PackInfoAdd->dwXorCode = pTxtSection.VirtualAddress; //加密代码段地址
    
     PackInfoAdd->dwXorKey = 0xE; //加密密钥
    
     PackInfoAdd->dwXorSize = pTxtSection.SizeOfRawData; //加密大小
    
     PackInfoAdd->stcPeRelocDir = pPeHead.pOptionHeader->DataDirectory[IMAGE_DIRECTORY_ENTRY_BASERELOC]; //重定位表信息
    
     PackInfoAdd->dwSizeOfImage = pPeHead.pOptionHeader->SizeOfImage; //原PE的大小
    
     //拷贝一份
    
     MODULEINFO stcModInfo = { 0 };
    
     GetModuleInformation(GetCurrentProcess(), pLoadStubBuf, &stcModInfo, sizeof(MODULEINFO));
    
     char * pStubBuf = new char[stcModInfo.SizeOfImage];
    
     memset(pStubBuf, 0, stcModInfo.SizeOfImage);
    
     memcpy(pStubBuf, pLoadStubBuf, stcModInfo.SizeOfImage);
    
     //申请新空间存储新PE
    
     int NewPeSize = objPe.GetAddSectionSize(pFileBuf, (char*)pLoadStubBuf, stcModInfo.SizeOfImage);
    
     char * pNewPeBuf = new char[NewPeSize];
    
     memset(pNewPeBuf, 0, NewPeSize);
    
     memcpy(pNewPeBuf, pFileBuf, dwFileSize);
    
     //修改重定位表
    
     objPe.FixReloc(pStubBuf, pNewPeBuf);
    
     // 添加一个区段
    
     objPe.AddSection(pNewPeBuf, pStubBuf, stcModInfo.SizeOfImage);
    
     //设置入口点
    
     //自己定义的壳的开始位置的原始偏移
    
     DWORD Offset = PackInfoAdd->dwStartPoint - (DWORD)pLoadStubBuf;
    
     //相对于新PE的起始位置的偏移
    
     unsigned int NewOep = Offset + pPeHead.pOptionHeader->SizeOfImage;
    
     objPe.SetOep(pNewPeBuf, NewOep);
    
     //保存成文件
    
     SavePackFile(szPath, pNewPeBuf, NewPeSize);
    
     //释放内存
    
     delete[]pFileBuf;
    
     delete[]pStubBuf;
    
     delete[]pNewPeBuf;
    
     return true;
    
    }
    

    作者:woshigeshusheng

    来源:CSDN

    原文:https://blog.csdn.net/woshigeshusheng/article/details/68489843

    版权声明:本文为博主原创文章,转载请附上博文链接!

    未加壳时:恶意代码数据流想入侵受害主机或许被防火墙阻隔,或者是相关的反恶意代码的检测机制,阻断了恶意代码的入侵途径

    加壳后:恶意代码数据流在外壳的保护下可以直接通过防火墙或者欺骗过反恶意代码的检查机制成功入侵受害主机

    (二) 反动态跟踪:

    (4) 隐蔽通信(通过远程控制,即实质上是加密被控主机端和控制端之间传送命令和命令执行结果)

    远程控制的基本流程:

    (a) 服务器监听:服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,即实时监控网络的状态

    (b) 客户端的请求:指由客户端的套接字提出连接的要求,要连接的目标是服务器端的套接字,指出服务器端的套接字的地址和端口号,然后就向服务器端提出连接请求

    (c) 连接确认:是指当服务器端套接字监听或者接收到客户端套接字的连接请求,它就相应客户端套接字的请求,建立一个新的线程,把服务器端的套接字的描述发给客户端,一旦客户端确认了此描述,连接就建立好了,而服务器端的套接字继续处于监听状态,继续接收其他客户端套接字的连接请求

    常见的隐蔽通信的方式:

    1) 直接使用套接字进行通讯控制

    (a) 服务器端侦听,客户端连接:

    (b) 客户端侦听,服务器端连接:

    à这两样方式都会引起防火墙报警

    因此(a)的方法可以通过全局IP地址,通过限制恶意代码的活动范围使其精准地入侵受害主机;而(b)的方法通过线程注入的方式,具体方法如下:在当前所有运行的进程中找到目标进程;其次将我们的DLL内容写入目标进程的私有空间;通过关键的API创建线程加载到DLL中

    2) 隐蔽通道

    3) ICMP隧道:

    利用ICMP_ECHO和ICMP_ECHOREPLY两种报文

    4) 使用第三方交互服务进行通讯

    5) 通过ARP欺骗或DHCP欺骗等网络代理木马欺骗方式

    微信图片_20190417222207.jpg
    ARP欺骗

    恶意代码通过调用ARP上的压缩数据包,将其传送到网络,尤其是网关上,目的是将特定的IP地址的数据流被错误的送到攻击者所取代的地方

    (5) 攻击技术

    攻击技术是指一切试图跨越系统安全边界危害受害主机的可用性、可靠性、数据完整性、或者消耗受害者主机的系统资源以及受害主机危害他人的所有行为;归纳起来就是拒绝服务攻击、信息窃取、数据破坏、修改系统配置

    展开全文
  • 本文主要结合作者的《系统安全前沿》作业,相关论文及绿盟李东宏老师的博客,从产业界和学术界分别详细讲解恶意代码攻击溯源的相关知识。在学术界方面,用类似于综述来介绍攻击追踪溯源的不同方法;在产业界方面,...

    本文主要结合作者的《系统安全前沿》作业,论文及绿盟李东宏老师的博客,从产业界和学术界分别详细讲解恶意代码攻击溯源的相关知识。在学术界方面,用类似于综述来介绍攻击追踪溯源的不同方法;在产业界方面,主要参考李东宏老师从企业恶意样本分析的角度介绍溯源工作。关于攻击溯源的博客和论文都比较少,希望这篇文章对您有所帮助,如果文章中存在错误或理解不到位的地方,还请告知作者与海涵~

    这是作者的系列网络安全自学教程,主要是关于安全工具和实践操作的在线笔记,特分享出来与博友们学习,希望您们喜欢,一起进步。同时,更希望您能与我一起操作和进步,后续将深入学习网络安全和系统安全知识并分享相关实验。总之,希望该系列文章对博友有所帮助,写文不易,大神们不喜勿喷,谢谢!如果文章对您有帮助,将是我创作的最大动力。

    下载地址:https://github.com/eastmountyxz/NetworkSecuritySelf-study
    资源下载地址:

    展开全文
  • 教你如何防止恶意代码攻击,分享给大家一起学习,供大家参考!
  • html转义和js代码攻击及防止攻击

    千次阅读 2018-09-27 22:39:31
    ...如:&...像“”,即避免了js注入攻击又真实的显示了用户输入。 2.如何转义? *通过 js 实现:* *通过 jquery 实现* 3.使用 var msg=htmlEncodeJQ('<script>alert('test')...

    1.html转义?

    html转义是将特殊字符或html标签转换为与之对应的字符。如:< 会转义为 <> 或转义为 >像“”,即避免了js注入攻击又真实的显示了用户输入。

    2.如何转义?

          *通过 js 实现:*
    

    在这里插入图片描述

        *通过 jquery 实现*
    

    在这里插入图片描述

    3.使用

    var msg=htmlEncodeJQ('<script>alert('test');</script>');
    $('body').append(msg);
    
      建议使用jquery实现,因为有更好的兼容性
    

    -----------------------------------------------------------转义---------------------------------------------------------------
    js代码攻击?

    跨站脚本攻击 (Cross Site Scripting) 是一种允许攻击者在另外一个用户的浏览器中执行恶意代码脚本的脚本注入式攻击。对于攻击者来说,能够让受害者浏览器执行恶意代码的唯一方式,就是把代码注入到受害者从网站下载的网页中。

    每当接受用户输入的内容并重新显示这些内容时,网站就很容易遭受 JavaScript 注入攻击。让我们研究一个容易遭受 JavaScript 注入攻击的具体应用程序。假设已经创建了一个客户反馈网站。客户可以访问网站并输入对产品的反馈信息。当客户提交反馈时,反馈信息重新显示在反馈页面上。

    for example:

    在输入框写js代码:
    在这里插入图片描述

    发送到后台,数据是这样的
    在这里插入图片描述

    存到数据库是这样的

    在这里插入图片描述

    存到数据路后, 去前台取数据发现页面变成了这样:
    在这里插入图片描述

    --------------------------------------------------- js 代码攻击 ------------------------------------------------
    防js代码攻击?

    1、编码,就是转义用户的输入,把用户的输入解读为数据而不是代码 (反转义)
    2、校验,对用户的输入及请求都进行过滤检查,如对特殊字符进行过滤,设置输入域的匹配规则等。
    对于验证输入,我们既可以在服务端验证,也可以在客户端验证
    对于持久性和反射型攻击,服务端的验证是必须的,服务端支付的任何语言都能够做到
    而对于基于DOM的XSS攻击,验证输入在客户端必须执行,因为从服务端来说,所有发出的页面内容是正常的,只是在客户端js代码执行的过程中才发生可攻击

    展开全文
  • 植入代码攻击的几种方法和技巧

    千次阅读 2019-04-21 18:43:16
  • 怎么防止别人js代码攻击

    千次阅读 2018-09-27 21:02:52
    js代码攻击也就是XSS(Cross Site Scripting)攻击,全称为跨站脚本攻击。为了和CSS(Cascading Style Sheet)区分,故称为XSS。 XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到...
  • 浅谈输入框内容代码攻击

    千次阅读 2018-09-28 09:18:46
    浅谈输入框内容代码攻击 javascript可以作为黑客攻击网站的一种工具,其中注入js恶意脚本就是其中一种手段,那么下面我们来学习一下如何预防js的攻击。在学习阻止js攻击之前,我们先来了解一下什么是js代码攻击 ...
  • js代码攻击以及如何避免

    千次阅读 2018-09-27 22:00:26
    什么是js代码攻击: Javascript注入攻击指的是通过在网页地址后加JavaScript代码,影响系统运作。 使用 JavaScript 注入攻击可以执行跨站脚本 (XSS) 攻击。在跨站脚本攻击中,可以窃取保密的用户信息并将信息发送到...
  • 输入框中如何防止js代码攻击

    千次阅读 2018-09-27 20:45:17
    在学习阻止js攻击之前,我们先来了解一下什么是js代码攻击 Javascript注入攻击指的是通过网页地址后加javascript代码,影响系统运作,javascript注入漏洞能发生作用主要依赖两个关键的动作:一个是用户要能从界面中...
  • 前端输入框如何防止js代码攻击

    千次阅读 2018-09-27 20:09:37
    这种攻击一般叫做xss攻击 有的时候页面中会有一个输入框,用户输入内容后会显示在页面中,类似于网页聊天应用。如果用户输入了一段js脚本,比如:&...攻击者把代码注入进了访问的页面,所以恶意脚本...
  • 攻击形象代码攻击形象代码攻击形象代码攻击形象代码攻击形象代码
  • 许多人觉的杀毒软件没啥乱用...今天我给大家带来的是Hacker如何使用 三行代码入侵Windows的教程。 环境:kali+Windows xp 工具:kali>metasploit 有人肯定要想kali是什么呢,请看下图LOGO,看见没,是不是很霸气的一条
  • 那纯熟自如地输入一大堆复杂的代码,不一下子就入侵/破解完成,其实这些网址就能帮你实现你的黑客演义梦 http://hackcode.ishoulu.com/scp/ http://hackcode.ishoulu.com/combine/ http://hackcode.ishoulu.com/bla
  • 这篇文章将结合作者的《系统安全前沿》作业,论文及绿盟李东宏老师的博客及宋老师的论文,从产业界和学术界分别详细讲解恶意代码攻击溯源的相关知识。在学术界方面,用类似于综述来介绍攻击追踪溯源的不同方法;在...
  • XSS攻击 代码演示

    2018-05-13 17:24:17
    网站xss 攻击 代码示例,包括alert弹框,钓鱼网站截取用户cookie信息等;是学习xss的简单示例。可以下载玩玩看看,示例中的钓鱼网站地址为 演示地址,即本资源中的项目地址。xss也是很简单的,可以学习学习
  • DNS攻击代码编写者被自己代码攻击DNS攻击代码编写者被自己代码攻击
  • JOP代码复用攻击

    千次阅读 2018-05-20 00:49:50
    实验名称:JOP代码复用攻击的实现实验原理:JOP 的全称为 Jump-oriented programming(跳转导向编程),攻击与ROP 攻击类似。它同样利用二进制可执行文件中已有的代码片段来进行攻击。ROP 使用的是 ret指令来改变程序...
  • DOS攻击代码

    2014-12-16 22:54:17
    网络层的安全攻击程序及防范程序,使得没有防范的目标电脑受到攻击而与防范程序的电脑可以免受攻击
  • 当在程序中输入框中被他人输入恶意js脚本内容的时候,想要通过改变js页面的变量的代码时会程序异常当然或者跳过某些验证, 这种情况当然我们可以防止这种攻击,我们可以通过转义字符来解决这个问题 一、 让我们先...
  • 生成式对抗攻击。GAN代码。有解释,比较不错的初学者入门学习资资料。
  • 那纯熟自如地输入一大堆复杂的代码,不一下子就入侵/破解完成,是不是很羡慕? 其实咱们也可以像电影、游戏里面的黑客一样敲代码,今天就介绍一个传说中的装逼神器 HackerTyper 给你吧!它是一个专门为装 B 而制作...
  • 水印攻击matlab代码

    2016-07-31 19:26:30
    水印攻击matlab代码
  • SpringBoot +esapi springSecurity 过滤器链集成 实现防止xss攻击 实战代码
  • 运用matlab模拟复杂网络攻击,从而观察复杂网络的效率变化,这里是编好的源代码,可以直接调用,欢迎下载。
  • 这篇文章将带大家学习安天科技集团首席架构师肖新光老师(Seak)的分享,介绍恶意代码与APT攻击中的武器,包括A2PT的攻击武器、普通APT组织的自研恶意代码、商用恶意代码、无恶意代码作业、开源和免费工具等。...
  • 这个udpFlood是从上面我写的那个synflood里改的,很简单,如果大家需要做两个攻击的话建议自己改一个就ok,也可以集成在一起。还能多练习,熟悉tcp和udp的区别
  • 基于滑模控制(sliding model control)的含有攻击时间和攻击角度约束的制导律仿真代码,含有弹道图、攻击角度图、攻角图等等,仿真环境:MATLAB
  • 这个是XSS的攻击及防御代码的简单演示,利用Node搭建的

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 290,215
精华内容 116,086
关键字:

代码攻击