互联网上常见的攻击方式:XSS、CSRF、SQL注入、DDos、文件漏洞攻击
您能说出攻击方式Web以及如何防护吗?如果这有点令人困惑,让我们看看本文中一些常见的Web攻击~!
网络攻击
在互联网上,有无数的攻击方法。我们常常无法使用,因为我们是简单的开发人员和程序员而不是面向安全的开发人员,所以我们无法掌握基本的Web方法!我们来了解一下常见的攻击方式Web
![]()
常见的攻击方式Web主要包括攻击 如何防范这些攻击攻击并不困难等等。说到底,还是人为疏忽造成的结果。 XSSCSRF攻击 , SQL注入攻击 、DDos 攻击 、文件漏洞攻击
1。 XSS 攻击
级联样式表 (CSS) 混淆 XSS 攻击 是 Web 应用程序上最常见的攻击方法之一。 网站脚本攻击,关键字 攻击者经常在网页中插入恶意脚本程序。当用户打开网页时,脚本程序开始在客户端网络浏览器的后台执行。它经常被用来窃取客户的 cookie。用户名和密码,下载执行病毒的木马程序,并获取Admin凭证。 ? ,用户通常输入用户名。现在没问题了,但是异常情况下,用户输入的不是正常的字符串,而是 。目前,基准测试处于后台。由于用户名不合法,验证可能无法通过。服务器会跳转到该页面并携带上述参数。现在页面上会出现一个警告框: 这个警告框并不是什么大问题,因为它依赖于这个脚本。如果攻击者稍作改变,它的行为就会有所不同~ 虽然攻击者可以使用该URL,但默认地址是 攻击者可以阻止该URL来迷惑用户: 懂得进攻,防守并不难。我们只能对症下药。由于输入参数不正常,需要对输入参数进行验证,如 CSRF该攻击的全称是 CSRF攻击,关键字: 攻击窃取访问用户的身份,并代表访问者向第三方网站发送恶意请求。它经常被用来利用访客信息发送消息、转账和窃取账户。 受害者首先完成登录可信网站,并创建cookie。 cookie 将在浏览器中存储一段指定的时间。目前,如果用户访问恶意站点而不离开受信任站点,则 将信任 不知道你看到这个过程后是否会受到启发。不知道小伙伴们有没有经历过屏幕前的 这种攻击方式在日常生活中很常见。如果某支付系统的转账地址为 当你高兴地看着照片的时候,你并不知道你的账号已经悄然丢失了! 不是因为你没有进入 还要查清病情,对症下药!安全方法如下: CSRF 攻击的关键是利用用户的不会过期的Cookie Cookie来防范 , Cookie 要窃取,需要在HttpOnly属性中设置Cookie,来攻击程序(››)无法读取 Cookie信息,防止攻击者伪造Cookie。 这种安全方式还是防盗的Cookie,因为所有的用户认证信息都存储在› 在CSRF中,从恶意网站发出恶意请求,为了防范,您需要验证攻击。 对于每个请求,推荐人 SQL注入是程序员遇到最多的。所谓sql注入,就是将命令sql软化为正常的请求图发送到服务器,欺骗服务器最终执行命令sql,从而达到人类输入的目标。攻击者经常利用SQL注入漏洞未经许可查找重要信息、更改数据库服务器数据、更改表结构,危害性非常大! ?发送到前端的信号用于查询数据库。乍一看似乎没有问题,但此刻如果最后传递的值为 现在就是Amin, SQL 将成为类似 的 SQL。不用尝试就知道数据库中的所有用户都会被找到。即使没有输入正确的密码,也会返回登录成功。这是一种简单且常见的SQL注入攻击。 准备语句和statement之间的区别在于,当创建preparedStatement♺ 可以看到原来的 SQL 语句白能已经使用了占位符?相反,变量是使用 防止SQL注入的关键是转义一些关键字,以及一些常见的ORM系统,如Mybatis响应、Hibernate等。或者特殊品牌可以通过简单的配置来防止SQL注入漏洞,降低普通开发者安全编程的门槛。 很多网站都有上传功能,比如上传图片、文件、压缩包等。这些资源通常存储在远程服务器上。文件上传攻击是指攻击者利用某些未正确验证文件类型的网站,上传文件或可执行脚本,并通过脚本执行某些服务器授权操作,或者影响外部用户访问服务器。该脚本文件达到攻击的目的。 当然,这种攻击防御方式很简单。为了防止用户上传恶意可执行脚本文件,并将文件上传服务器作为免费文件存储服务器,需要将上传的文件类型加入白名单。需要限制上传文件的大小,并且需要更改上传文件的名称,使攻击者不知道上传文件的路径。 上传的文件类型已列入白名单以供验证。文件类型无法通过文件扩展名来确定,因为攻击者可能能够将可执行文件的文件扩展名更改为其他可下载的文件名。输入,因为您需要使用更安全的方法来确定文件类型。 对于许多文件类型来说,几个字节的实际内容是固定的。因此,根据这几个字节的内容,就可以确定文件类型,而这些字节又被称为 ,上面就是文件类型的魔数,然后指定文件类型。通过将文件头与文件类型的幻数进行比较 DDos 攻击 也称为 在了解DDoS之前,我们需要知道DoS是什么。 DoS的主要目的是利用合法的客户端请求占用过多的网络资源,使合法用户无法收到服务器的响应。 DDoS是基于传统DoS攻击的一种攻击方式。典型的 DoS 攻击基本上是一对一的。当攻击目标的性能指标不高,如CPU速度、内存或网络带宽时,效果很明显,但随着计算机和网络技术的发展,其显着提高。内存不断增加,导致DoS攻击逐渐失效。 这类似于分布式架构的单个应用程序的开发。传统的DoS演变成分布式 DoS (DDoS)。 ?楼主的目的。往往在发起攻击之前,攻击者会控制多台用户计算机,称为 这是一个非常推荐的TCP三通手册的过程。 TCP协议是一种可靠的传输协议,在三向通信过程中具有特殊的处理机制。第三步,如果服务器没有收到客户端发来的消息ACK,服务器会重试,即再次向客户发送消息SYN + ACK ,并坚持下去。如果是SYN_RECV,将客户添加到等待名单中;另一方面,服务器发送消息SYN + ACK后,会为以后的 TCP连接分配一些资源,该资源被分配在那里等待重试。由于服务器资源不足,当等待列表超过可维持的限制时,将收不到新消息SYN,即拒绝建立新的TCP连接。 现在我们可以谈谈SYN Flood发生了什么事? SYN Flood利用TCP协议的握手过程来达到攻击的目的。攻击者配置多个IP地址向服务器发送SYN消息。由于假IP地址不存在,因此无法得到客户端的响应,并且始终保留在第三个步骤中,服务器必须维护一个半等待列表非常大的连接。 ,并迭代重试此列表中的IP地址,这会占用系统资源。由于服务器资源不足,不良连接会填满服务器的等待队列,导致服务器停止接受新的SYN请求,从而阻止正常用户完成连接。 DNS Query Flood非常忙于UDP Flood攻击,因为,因为工作可以设置,所以再次 DNS服务器宕机了,影响会很大! DNS Query Flood 攻击中使用的方法是向被攻击的服务器发送多个域名解析请求。请求解析的域名往往是随机生成的,而且大多数是不存在的。通过屏蔽客户端端口和 IP,可以防止请求被ACL(访问控制列表)过滤。收到域名解析请求后,DNS服务器DNS攻击会在自己的服务器上查找该域名的IP。因为域名不存在,所以它不会单独出现。因此,DNS服务器会重新向上游DNS服务器查询域名,直到到达万维网上的13个DNS服务器。大量的解析不存在域名的请求会给服务器带来沉重的负载。当解析请求超过一定程度时,会导致DNS服务器解析域名超时,无法找到正常的域名。对应的IP已经取得了攻击的结果。 ?许多“肉鸡”或使用从互联网爬取的多个匿名HTTP代理冒充正常用户向网站发起请求,直至网站拒绝服务。大多数网站都会使用CDN和共享缓存来加快服务器响应速度并改善网站访问。这些恶意HTTP请求故意避开这些缓存,并且需要多次DB查询操作或者单个请求会返回大量数据,加速系统资源的消耗,从而减慢公司后期的处理速度。 以上是常见的Web攻击方式。你知道它们是什么以及为什么。安全非常重要,也非常难以保障。每个开发者都应该考虑一下!脚本。 "/>alert("bingo")。当您点击此按钮时,表格的内容将变为<input type="text" name="username" value=""/><script> alert("bingo") </script><!-" />![]()
www.xxx.com/login?username="/><script> alert("bingo") </script><!-"www.xxx.com/login?username="%2F%3E%3Cscript%3E%20alert(%22bingo%22)%20%3C%2Fscript%3E%3C!-"
2.防守风格
,",",','。我们有必要逃离并验证这些特殊品质。 。 2。 CSRF攻击
Web请求表单(Web Request Form)。这是对该网站的不当使用。我们上面描述的XSS攻击是一种利用站点上可信用户推送脚本的攻击。 CSRF 通过重定向来自受信任用户的请求来利用受感染的网站。 Folak。 1。攻击原理
![]()
QQ。当然,有些窃取的方法与上面的步骤类似。 。 www.xxx.com/pay?accountNum=xxxx&money=xxx。其中,accountNum为转账目的账户,money为转账金额。现在,如果你恰巧登录支付系统,没有及时退出,当你访问不良网站时,如果你点击一张图片,而该图片的地址是:<img />
支付系统,而你点击了恶意恶意链接2。安全措施
1)将cookie设置为HttpOnly
2)添加token
token到请求返回,并在请求到达时执行token的验证。如果认证失败,则视为CSRF 攻击并拒绝请求。 ? 包含 Http 请求地址。一般来说,访问安全受限页面的请求来自同一个网站。 ![]()
3。 SQL注入攻击
password那么'或者'1'='1SELECT * FROM s_user WHERE username = '' and password = '' or '1'='1'
' 或 '1'='1 危险在于用户无需密码即可登录。如果';删除表xxx; --这是一个大问题! ? 接口。 String sql = "SELECT * FROM s_user WHERE username = ? and password = ? ";
PreparedStatement st = conn.preparedStatement(sql);
st.setString(1, username);
st.setString(2, password);
ResultSet rs = st.executeQUery();
setString() 方法设置的。 2)使用ORM系统
4。文件上传漏洞
魔数![]()
![]()
5. DDOS 攻击
分布式拒绝服务 是目前最强大的攻击之一 -攻击方法的安全性。 肉鸡,并利用指令让多个僵尸程序同时访问同一主机,从而达到阻止目标的目的主持人。? Internet 上最常见的攻击方法之一。要了解这种攻击方式,我们需要从TCP进程通信协议开始。众所周知,协议TCP在通信之前必须基于TCP协议建立连接。以下是建立连接的过程: ![]()
消息。最后,向服务器返回ACK。同样,TCP序列号加1。此时,TCP连接建立,可以进行数据通信。 2) DNS Query Flood
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网
