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

Web入侵攻击方式

Web入侵攻击方式

一.客户端试探性攻击

1. 查找敏感信息

(1)HTML代码中的注释,隐藏域,及其他敏感信息。

    现在很多工具可以帮助你分析网页,比如:PageSpy,Firebug等等。

(2)服务端出错信息。比如:


(3)程序出错提示。

    经典例子是网站登陆,登陆的时候需要输入账号&密码,如果服务器对于错误账号返回一个错误信息“该账号不存在”,对于错误的密码返回另外一个正确信息“账号密码错误”。那么攻击者就可以根据返回值猜测用户名,并继续下一步的攻击。

2.猜测文件与目录

    如果你有过把一个论坛的Access数据库下载下来的经历,那你应该会对这种攻击方式记忆犹新。另外,如果访问配置文件没有好好保护,后果也一样严重。

3.绕过客户端的输入限制/验证(客户端的数据不可信)

    绕过客户端的验证或者限制有很多方式,直接把Web页面的JavaScript脚本去掉,另外一种方式是,拦截发送包,直接把它改掉。

4.修改Cookie

    你在大学图书馆的机器上有发现Cookie文件吗?你是否想过把它的过期时间修改便可继续使用呢?

    网上有很多关于Cookie的文章,书中也推荐了一个外国站点:Dutchduck。,有兴趣可以了解一下。


二.利用Web漏洞实现攻击

5.第三方库/组件的漏洞

    使用第三方资源无可避免,但还是留个心眼吧:>。

6.会话劫持(Session Hijak)

    会话劫持除了通过监听实现外,其实还通过其他形式的,比如:直接修改Cookie的会话标识,或者修改HTTP包头的Cookie信息等等。但一般比较简单的劫持方式还是通过监听。

    这里稍微说一下,会话劫持曾在我上高中的很流行,因为那时候局域网组建大多数还是使用HUB,监听很方便。但随着交换机的普及,会话劫持也渐渐安静了下来。而现在,会话劫持似乎又随着无线网普及又开始兴起了:>

    要在无线网下实施劫持可以使用:hamster

    要在交换机环境中实施会话劫持,可以使用:SSCLONE

    了解监听的原理:《网络嗅探技术浅析》。

7.跨站式攻击(XSS)

    根据不同的使用,XSS可以分为“存储型XSS”和“反射型XSS”。

    存储型XSS:攻击者通过在评论/留言等方式输入恶意信息,当其他用户访问该网站时,服务器便会从数据库中取出相关的恶意信息,并回显给用户。这种方式,可以看作是攻击者在网站上挂了一个恶意脚本。

    反射型XSS:把脚本信息内嵌到URL的CGI参数上,通过邮件或者其他方式,引诱你去点击该链接。

    一般XSS最终目的都是:

    (1)盗取个人信息。

    (2)下载病毒木马。

    (3)在真实网站中嵌入欺骗信息。

    现在存储型的XSS漏洞网站似乎比较少了,但反射型的还有很多。

8.注入攻击

(1)SQL注入

(2)命令注入

(3)……

   其实注入的思想都是一样的,只是应该的地方不同。他们共同的特征是:输入特殊的字符,改变原有的业务流程/欺骗服务器。关于SQL注入,可以参考《Advanced SQL Injection In SQL Server Applications》。

9.缓冲区溢出

    在.NET,Java盛行的今天,缓冲区溢出这类问题基本很少出现了。这里我只是提一下,有兴趣的可以参考《Smashing The Stack For Fun And Profit》和Michael Howard的《The 19 Deadly Sins of Software Security》。

    另外,我们可以使用“SPIKE  Proxy”测试Web应用程序的缓冲区溢出问题。

10.非法数据

    能否使用编码方式使一些非法字符蒙混过关?Web服务端是否会因为这些数据而异常呢?

11.服务器探测

    扫描服务器,看是否存在其他漏洞,0Day永远是hacker的最爱!你可以在BUGTraq和Metasploit等类似网站找到漏洞列表。

12.DDOS

    老牌的无赖攻击方式了:>。

13.针对认证的攻击

(1)伪装型加密

(2)认证破坏

(3)跨站点跟踪

(4)暴力破解密钥


相关文章:

  • STL之deque容器详解
  • [codevs 2822] 爱在心中 【tarjan 算法】
  • prim算法+优化 模版
  • 【NOIP2013】day1
  • 机器学习,深度学习等概念区别【转】
  • [codevs] 1029 遍历问题
  • 【summary】mat 【万恶溢出!!】
  • A - dry
  • C - Wall
  • B - poset
  • git-ssh 配置和使用
  • 【并查集】构造完全图
  • FPS 集合 [Trie树]
  • [ZJOI 2013] bzoj3110 K大数查询 【树套树】
  • HTML特殊符号对照表
  • [ JavaScript ] 数据结构与算法 —— 链表
  • Android开源项目规范总结
  • Docker 笔记(2):Dockerfile
  • Golang-长连接-状态推送
  • hadoop集群管理系统搭建规划说明
  • Java 网络编程(2):UDP 的使用
  • Javascript Math对象和Date对象常用方法详解
  • Javascript设计模式学习之Observer(观察者)模式
  • Laravel核心解读--Facades
  • Mac转Windows的拯救指南
  • ng6--错误信息小结(持续更新)
  • nginx 负载服务器优化
  • node.js
  • RedisSerializer之JdkSerializationRedisSerializer分析
  • SpriteKit 技巧之添加背景图片
  • vue中实现单选
  • Zepto.js源码学习之二
  • 百度地图API标注+时间轴组件
  • 理解在java “”i=i++;”所发生的事情
  • 你不可错过的前端面试题(一)
  • 强力优化Rancher k8s中国区的使用体验
  • 悄悄地说一个bug
  • 什么是Javascript函数节流?
  • 责任链模式的两种实现
  • 正则表达式小结
  • 自制字幕遮挡器
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • ​插件化DPI在商用WIFI中的价值
  • # C++之functional库用法整理
  • #ifdef 的技巧用法
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • #图像处理
  • #在 README.md 中生成项目目录结构
  • (HAL)STM32F103C6T8——软件模拟I2C驱动0.96寸OLED屏幕
  • (办公)springboot配置aop处理请求.
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (全注解开发)学习Spring-MVC的第三天
  • (五)网络优化与超参数选择--九五小庞
  • (转)关于如何学好游戏3D引擎编程的一些经验