[Day4] 和应用程序有关的攻击-注入式攻击与溢位攻击

今天笔记的是和应用程序相关的攻击。
这种类型的攻击是利用程序设计上的错误或漏洞,让应用程序发生异常导致服务故障,或是进行权限提升後取得更多系统及服务资料。攻击方式包含:注入式攻击(Injection)、溢位攻击(Overflow)、例外处理(Exception/Error Handling)、重播攻击(Replay)、请求伪造(Request forgeries)等等。

注入式攻击

注入攻击这种手法是利用程序没有正确过滤掉使用者输入资料的漏洞,将包含有目的程序码的输入资料变成执行指令或程序,透过这些被误执行的非预期程序码让攻击者达到破坏目标或取得服务上的敏感资料。注入攻击的类型分成以下:SQL注入(SQL Injection)、命令注入(Command Injection)、DLL注入(DLL Injection)、LDAP注入(LDAP Injection)、XML注入(XML External Entity Injection)、跨站脚本(Cross Site Scripting)。
这篇铁人赛系列文不小心飞进资安之旅(学习笔记) 系列有几篇写了关於各类型注入攻击的详细介绍。

我找到比较近期的注入攻击新闻是世大运的这则:
世大运1.8万志工个资全都露 今早紧急关站
虽然这类型的攻击很早就开始、也是已知的攻击手法,但还是需要倚赖程序设计师在开发程序时考虑到这些状况的处理,避免漏洞被攻击者发现或知道,导致系统或服务无法使用、甚至损毁的状况发生。

溢位攻击

溢位攻击是攻击者利用程序设计的错误,例如让输入的长度大於允许长度导致缓冲区溢位的方式,让程序产生问题,造成系统停止、或被迫执行攻击者期望的指令或程序。溢位攻击的类型包含:缓冲区溢位(Buffer overflow)、整数溢位。这篇文章缓冲区溢位 (Buffer Overflow)介绍了缓冲区溢位;而在这篇文章Day8 - Integer Overflow/Underflow介绍了整数溢位的问题。

这则关於Adobe修复漏洞的新闻里提到修复内容就包含了缓冲区溢位漏洞的问题:
Adobe修补已被开采的Adobe Acrobat Reader程序码执行漏洞

参考资料

(1) 企业常遇到的四种网页注入(Web Injection)攻击
(2) 游戏中注入 DLL 是什么意思,具体怎么实现的?
(3) 史上最恶劣的程序瑕疵安全性问题


<<:  Day5 Sideproject(作品集) from 0 to 1 -协作工具

>>:  未来狂想:云端计算

Day 04:金鱼记忆力太短暂,交给外挂记吧!autosuggestions 与 substring-search

更新 我把从第一天到现在每天的 Home 目录都放上 GitHub 了,README.md 里面有...

【Day29】Cordic 演算法的实现

假设今天再做某种数位信号处理时,不小心用到了 arctan(y/x) 函数,那麽当然可以用泰勒展开得...

[Day21] Conditional Chains

虽然昨天说 TypeScript 已经差不多,但其实还有一个(或一些?)还没写到。我们来看一段程序码...

资安学习

Day 1 看到许多统计,提到现在很多企业最需要的就是保障公司的资讯安全,其实个人的资讯也是一样都是...

Day 5 - 透过 RKE 架设第一套 Rancher(下)

本文将於赛後同步刊登於笔者部落格 有兴趣学习更多 Kubernetes/DevOps/Linux 相...