发布者:售前小赖 | 本文章发表于:2023-03-10 阅读数:15178
随着数字化的发展和网络技术的不断提升,越来越多的人开始关注在线点播系统。在线点播系统是指用户可以通过互联网访问到预先制作好的音频、视频、文本等多媒体内容,并可以在任意时间、任意地点进行播放的系统。在今天的文章中,我们将探讨在线点播系统的特点和发展趋势。
在线点播系统的特点
1.多媒体内容丰富:在线点播系统可以提供音频、视频、文本等多种形式的媒体内容,包括电影、电视剧、纪录片、动漫、音乐、新闻、体育赛事等,用户可以根据自己的兴趣和需求进行选择。
2.随时随地访问:在线点播系统允许用户在任何地方、任何时间访问多媒体内容,只要有互联网连接,就可以通过手机、平板电脑、笔记本电脑等终端设备进行播放。
3.个性化推荐:在线点播系统可以通过用户的历史记录和喜好,向用户推荐更符合他们兴趣的内容,提高用户的观看体验。
4.灵活性强:在线点播系统可以根据用户的需求进行订阅或单片购买,用户可以根据自己的需求灵活选择。
5.数据分析:在线点播系统可以通过用户行为数据,了解用户的喜好、观看习惯等,从而提供更符合用户需求的内容,并为运营方提供决策参考。
在线点播系统的发展趋势
1.内容多元化:随着在线点播系统的发展,内容将会越来越多元化,包括体育、娱乐、教育、文化等多个领域,以满足不同用户的需求。
2.自制内容的重要性:在现在的市场竞争中,自制内容将会越来越受到重视,因为它不仅可以提高用户黏性,还可以帮助平台建立自己的品牌。
3.用户个性化体验:随着技术的进步和数据分析的深入,用户个性化体验将会成为在线点播系统的重要发展趋势,平台将会更加注重用户体验的提升。
4.社交化的内容分享:随着社交网络的普及,在线点播系统将会更多地借助社交网络的力量,通过用户的分享和推荐,提高内容的传播效果。
高防安全专家快快网络!快快网络客服小赖 Q537013907--------新一代云安全引领者-----------------快快i9,就是最好i9!快快i9,才是真正i9!
下一篇
高防 IP 防护原理是什么?
在网络安全形势愈发严峻的当下,网站和各类网络服务时常遭受各种恶意攻击的侵扰,这不仅会影响业务的正常运转,还可能带来不小的损失。而高防 IP 作为一款备受信赖的网络安全防护工具,能在抵御攻击方面发挥重要作用。那么,它究竟是如何实现防护的呢?其背后的防护原理又是什么?接下来,我们就一同去探寻。一、高防 IP 如何处理攻击流量?高防 IP 防护的第一步是流量牵引。当网站接入高防 IP 服务后,原本发往网站源 IP 的流量会被引导到高防 IP 所在的防护节点,这些节点拥有强大的带宽和处理能力。接着启动流量清洗机制,对牵引来的流量深度检测,依据预设规则识别出 DDoS、CC 等恶意流量,再通过复杂算法和技术过滤掉恶意流量,只让正常流量转发到源服务器,避免源服务器受攻击流量冲击。二、高防 IP 能防护协议层攻击吗?网络中不同攻击会利用 TCP、UDP、ICMP 等协议的漏洞,高防 IP 针对这些常见协议进行防护。比如面对利用 TCP 三次握手机制漏洞的 SYN Flood 攻击,高防 IP 会严格检查和管理 TCP 连接请求,通过设置合理的连接超时时间、限制半连接数量等方式,防止服务器资源被耗尽。对于 UDP 协议,它能识别异常 UDP 流量模式,过滤大量无意义的 UDP Flood 攻击流量,保障协议层安全稳定。三、高防 IP 能应对应用层攻击吗?应用层是攻击高发地,像 CC 攻击就很典型,而高防 IP 具备应用层防护能力。它会分析 HTTP 等应用层协议的请求,识别出恶意高频请求,比如模拟正常用户行为的 CC 攻击请求。通过对请求的频率、来源、行为模式等多维度分析判断合法性,一旦发现恶意请求就进行拦截,防止服务器因应用层攻击瘫痪,保障网站应用正常运行。四、高防 IP 防护策略会调整吗?高防 IP 不采用单一固定的防护模式,而是有智能防护策略。它能根据实时攻击情况和流量特征,动态调整防护规则和参数。例如,当攻击流量的规模和类型变化时,会自动优化流量清洗算法,提高对新攻击变种的识别和防御能力。同时,结合大数据分析技术,学习历史攻击数据和正常流量数据,不断完善防护策略,提升整体防护效果。高防 IP 通过流量牵引与清洗、协议层防护、应用层防护及智能防护策略的协同,构建起完整高效的防护体系,为网站和网络服务提供可靠安全保障。了解这些原理,能帮助网站运营者更好地利用高防 IP 应对复杂的网络攻击威胁。
云服务器怎么使用?
随着云计算技术的不断发展,越来越多的企业和个人开始使用云服务器来存储和处理数据。云服务器怎么使用?对于新手来说还是有必要学习下如何去操作,选择合适的云服务器类型和配置、登录云服务器并开始使用。 云服务器怎么使用? 1. 选择云服务器服务商 首先,我们需要选择一家云服务器供应商注册账户并开通一台云服务器实例。目前市场上有很多云服务器供应商,例如破蜗壳、亚马逊AWS、微软Azure、华为云……等。破蜗壳的云服务器价格最便宜,性能也十分稳定,比较推荐使用,其中1H1G2M的香港云服务器才33元一个月,同等配置的腾讯云或阿里云通常需要98元-148元左右,破蜗壳平台的国内和海外各个国家及地区的云服务器基本都非常便宜。 2. 选择云服务器配置 注册完成后,可以选择云服务器的类型和配置,一般来说云服务器的配置肯定是越高越好,可以根据自己的需要自己选配,比如你只需要放置一个访问量不是特别大的网站应用,那么1H2G5M的云服务器就基本够你使用了。 云服务器的地区选择:一般来说国内的云服务器各个地区的机房延迟都差不多,选择离自己最近的一个机房服务器就可以了,如果不想进行繁琐的于面备案服务操作就选择破蜗壳的香港云服务器。香港因为特殊的政策原因,服务器可以不用域名备案就能访问使用,同时还可以无限制访问全球各个国家及地区的网站应用及数据。而国内的服务器就必须要到公安部和信息部提交完成域名信息备案才能够使用。 3. 选择云服务器的操作系统 选择云服务器的操作系统是很重要的一步。不同的操作系统适用于不同的场景。比如,Windows操作系统适用于运行基于Windows的应用程序,而Linux操作系统则适用于运行基于Linux的应用程序。因此,我们需要根据自己的实际需求选择合适的操作系统。 4. 登录使用云服务器 购买云服务器后就可以开始使用了,不同的操作系统使用方法也各不相同,下面的教程请根据自己选择的操作系统进行操作。 注册云服务器账号并登录控制台。 创建云服务器实例,选择合适的配置和操作系统。 配置网络和安全组,确保云服务器可以正常访问和被访问。 连接云服务器,可以使用远程桌面、SSH等方式连接。 安装和配置需要的软件和服务,例如Web服务器、数据库等。 使用云服务器提供的API和控制台管理工具,对云服务器进行监控和管理。 云服务器的优点在于它可以根据业务需求进行弹性扩容和缩容,可以随时增加或减少计算资源,从而满足业务高峰期和低谷期的需求。此外,云服务器还可以提供高可用性和容灾能力,可以在单个节点故障时自动切换到备用节点,保证业务的连续性和可靠性。 以上就是关于云服务器怎么使用的相关步骤,我们需要选择一款合适的云服务器。连接云服务器有几种方式,以上就是快快网络小编给大家介绍的相关方法,记得收藏起来。
SQL注入攻击的种类和防范方法
观察近来的一些安全事件及其后果,安全专家们已经得到一个结论,这些威胁主要是通过SQL注入造成的。虽然有许多文章讨论了SQL注入,但今天所讨论的内容也许可帮助你检查自己的服务器,并采取相应防范措施。 知彼知己,方可取胜。首先要清楚SQL注入攻击有哪些种类。 SQL注入攻击的种类 1.没有正确过滤转义字符 在用户的输入没有为转义字符过滤时,就会发生这种形式的注入式攻击,它会被传递给一个SQL语句。这样就会导致应用程序的终端用户对数据库上的语句实施操纵。比方说,下面的这行代码就会演示这种漏洞: statement := "SELECT * FROM users WHERE name = ’" + userName + "’;" 这种代码的设计目的是将一个特定的用户从其用户表中取出,但是,如果用户名被一个恶意的用户用一种特定的方式伪造,这个语句所执行的操作可能就不仅仅是代码的作者所期望的那样了。例如,将用户名变量(即username)设置为: a’ or ’t’=’t,此时原始语句发生了变化: SELECT * FROM users WHERE name = ’a’ OR ’t’=’t’; 如果这种代码被用于一个认证过程,那么这个例子就能够强迫选择一个合法的用户名,因为赋值’t’=’t永远是正确的。 在一些SQL服务器上,如在SQL Server中,任何一个SQL命令都可以通过这种方法被注入,包括执行多个语句。下面语句中的username的值将会导致删除“users”表,又可以从“data”表中选择所有的数据(实际上就是透露了每一个用户的信息)。 a’;DROP TABLE users; SELECT * FROM data WHERE name LIKE ’% 这就将最终的SQL语句变成下面这个样子: SELECT * FROM users WHERE name = ’a’;DROP TABLE users; SELECT * FROM DATA WHERE name LIKE ’%’; 其它的SQL执行不会将执行同样查询中的多个命令作为一项安全措施。这会防止攻击者注入完全独立的查询,不过却不会阻止攻击者修改查询。 2.Incorrect type handling 如果一个用户提供的字段并非一个强类型,或者没有实施类型强制,就会发生这种形式的攻击。当在一个SQL语句中使用一个数字字段时,如果程序员没有检查用户输入的合法性(是否为数字型)就会发生这种攻击。例如: statement := "SELECT * FROM data WHERE id = " + a_variable + ";" 从这个语句可以看出,作者希望a_variable是一个与“id”字段有关的数字。不过,如果终端用户选择一个字符串,就绕过了对转义字符的需要。例如,将a_variable设置为:1;DROP TABLE users,它会将“users”表从数据库中删除,SQL语句变成:SELECT * FROM DATA WHERE id = 1;DROP TABLE users; 3.数据库服务器中的漏洞 有时,数据库服务器软件中也存在着漏洞,如MYSQL服务器中mysql_real_escape_string()函数漏洞。这种漏洞允许一个攻击者根据错误的统一字符编码执行一次成功的SQL注入式攻击。 4.盲目SQL注入式攻击 当一个Web应用程序易于遭受攻击而其结果对攻击者却不见时,就会发生所谓的盲目SQL注入式攻击。有漏洞的网页可能并不会显示数据,而是根据注入到合法语句中的逻辑语句的结果显示不同的内容。这种攻击相当耗时,因为必须为每一个获得的字节而精心构造一个新的语句。但是一旦漏洞的位置和目标信息的位置被确立以后,一种称为Absinthe的工具就可以使这种攻击自动化。 5.条件响应 注意,有一种SQL注入迫使数据库在一个普通的应用程序屏幕上计算一个逻辑语句的值: SELECT booktitle FROM booklist WHERE bookId = ’OOk14cd’ AND 1=1 这会导致一个标准的面面,而语句 SELECT booktitle FROM booklist WHERE bookId = ’OOk14cd’ AND 1=2在页面易于受到SQL注入式攻击时,它有可能给出一个不同的结果。如此这般的一次注入将会证明盲目的SQL注入是可能的,它会使攻击者根据另外一个表中的某字段内容设计可以评判真伪的语句。 6.条件性差错 如果WHERE语句为真,这种类型的盲目SQL注入会迫使数据库评判一个引起错误的语句,从而导致一个SQL错误。例如: SELECT 1/0 FROM users WHERE username=’Ralph’。显然,如果用户Ralph存在的话,被零除将导致错误。 7.时间延误 时间延误是一种盲目的SQL注入,根据所注入的逻辑,它可以导致SQL引擎执行一个长队列或者是一个时间延误语句。攻击者可以衡量页面加载的时间,从而决定所注入的语句是否为真。 以上仅是对SQL攻击的粗略分类。但从技术上讲,如今的SQL注入攻击者们在如何找出有漏洞的网站方面更加聪明,也更加全面了。出现了一些新型的SQL攻击手段。黑客们可以使用各种工具来加速漏洞的利用过程。我们不妨看看the Asprox Trojan这种木马,它主要通过一个发布邮件的僵尸网络来传播,其整个工作过程可以这样描述:首先,通过受到控制的主机发送的垃圾邮件将此木马安装到电脑上,然后,受到此木马感染的电脑会下载一段二进制代码,在其启动时,它会使用搜索引擎搜索用微软的ASP技术建立表单的、有漏洞的网站。搜索的结果就成为SQL注入攻击的靶子清单。接着,这个木马会向这些站点发动SQL注入式攻击,使有些网站受到控制、破坏。访问这些受到控制和破坏的网站的用户将会受到欺骗,从另外一个站点下载一段恶意的JavaScript代码。最后,这段代码将用户指引到第三个站点,这里有更多的恶意软件,如窃取口令的木马。 以前,我们经常警告或建议Web应用程序的程序员们对其代码进行测试并打补丁,虽然SQL注入漏洞被发现和利用的机率并不太高。但近来攻击者们越来越多地发现并恶意地利用这些漏洞。因此,在部署其软件之前,开发人员应当更加主动地测试其代码,并在新的漏洞出现后立即对代码打补丁。 防御和检查SQL注入的手段 1.使用参数化的过滤性语句 要防御SQL注入,用户的输入就绝对不能直接被嵌入到SQL语句中。恰恰相反,用户的输入必须进行过滤,或者使用参数化的语句。参数化的语句使用参数而不是将用户输入嵌入到语句中。在多数情况中,SQL语句就得以修正。然后,用户输入就被限于一个参数。下面是一个使用Java和JDBC API例子: PreparedStatement prep = conn.prepareStatement("SELECT * FROM USERS WHERE PASSWORD=?"); prep.setString(1, pwd); 总体上讲,有两种方法可以保证应用程序不易受到SQL注入的攻击,一是使用代码复查,二是强迫使用参数化语句的。强迫使用参数化的语句意味着嵌入用户输入的SQL语句在运行时将被拒绝。不过,目前支持这种特性的并不多。如H2 数据库引擎就支持。 2.还要避免使用解释程序,因为这正是黑客们借以执行非法命令的手段。 3.防范SQL注入,还要避免出现一些详细的错误消息,因为黑客们可以利用这些消息。要使用一种标准的输入确认机制来验证所有的输入数据的长度、类型、语句、企业规则等。 4.使用专业的漏洞扫描工具。但防御SQL注入攻击也是不够的。攻击者们目前正在自动搜索攻击目标并实施攻击。其技术甚至可以轻易地被应用于其它的Web架构中的漏洞。企业应当投资于一些专业的漏洞扫描工具,如大名鼎鼎的Acunetix的Web漏洞扫描程序等。一个完善的漏洞扫描程序不同于网络扫描程序,它专门查找网站上的SQL注入式漏洞。最新的漏洞扫描程序可以查找最新发现的漏洞。 5.最后一点,企业要在Web应用程序开发过程的所有阶段实施代码的安全检查。首先,要在部署Web应用之前实施安全测试,这种措施的意义比以前更大、更深远。企业还应当在部署之后用漏洞扫描工具和站点监视工具对网站进行测试。 Web安全拉警报已经响起,安全形式异常严峻,企业绝对不应当草率从事。安全重于泰山 新一代云安全引领者-------云安全领域服务商------------ 快快网络小潘QQ:712730909
阅读数:29936 | 2022-12-01 16:14:12
阅读数:15178 | 2023-03-10 00:00:00
阅读数:11772 | 2021-12-10 10:56:45
阅读数:10444 | 2023-03-19 00:00:00
阅读数:10302 | 2023-03-11 00:00:00
阅读数:8940 | 2022-06-10 14:16:02
阅读数:7736 | 2023-04-10 22:17:02
阅读数:7170 | 2023-03-18 00:00:00
阅读数:29936 | 2022-12-01 16:14:12
阅读数:15178 | 2023-03-10 00:00:00
阅读数:11772 | 2021-12-10 10:56:45
阅读数:10444 | 2023-03-19 00:00:00
阅读数:10302 | 2023-03-11 00:00:00
阅读数:8940 | 2022-06-10 14:16:02
阅读数:7736 | 2023-04-10 22:17:02
阅读数:7170 | 2023-03-18 00:00:00
发布者:售前小赖 | 本文章发表于:2023-03-10
随着数字化的发展和网络技术的不断提升,越来越多的人开始关注在线点播系统。在线点播系统是指用户可以通过互联网访问到预先制作好的音频、视频、文本等多媒体内容,并可以在任意时间、任意地点进行播放的系统。在今天的文章中,我们将探讨在线点播系统的特点和发展趋势。
在线点播系统的特点
1.多媒体内容丰富:在线点播系统可以提供音频、视频、文本等多种形式的媒体内容,包括电影、电视剧、纪录片、动漫、音乐、新闻、体育赛事等,用户可以根据自己的兴趣和需求进行选择。
2.随时随地访问:在线点播系统允许用户在任何地方、任何时间访问多媒体内容,只要有互联网连接,就可以通过手机、平板电脑、笔记本电脑等终端设备进行播放。
3.个性化推荐:在线点播系统可以通过用户的历史记录和喜好,向用户推荐更符合他们兴趣的内容,提高用户的观看体验。
4.灵活性强:在线点播系统可以根据用户的需求进行订阅或单片购买,用户可以根据自己的需求灵活选择。
5.数据分析:在线点播系统可以通过用户行为数据,了解用户的喜好、观看习惯等,从而提供更符合用户需求的内容,并为运营方提供决策参考。
在线点播系统的发展趋势
1.内容多元化:随着在线点播系统的发展,内容将会越来越多元化,包括体育、娱乐、教育、文化等多个领域,以满足不同用户的需求。
2.自制内容的重要性:在现在的市场竞争中,自制内容将会越来越受到重视,因为它不仅可以提高用户黏性,还可以帮助平台建立自己的品牌。
3.用户个性化体验:随着技术的进步和数据分析的深入,用户个性化体验将会成为在线点播系统的重要发展趋势,平台将会更加注重用户体验的提升。
4.社交化的内容分享:随着社交网络的普及,在线点播系统将会更多地借助社交网络的力量,通过用户的分享和推荐,提高内容的传播效果。
高防安全专家快快网络!快快网络客服小赖 Q537013907--------新一代云安全引领者-----------------快快i9,就是最好i9!快快i9,才是真正i9!
下一篇
高防 IP 防护原理是什么?
在网络安全形势愈发严峻的当下,网站和各类网络服务时常遭受各种恶意攻击的侵扰,这不仅会影响业务的正常运转,还可能带来不小的损失。而高防 IP 作为一款备受信赖的网络安全防护工具,能在抵御攻击方面发挥重要作用。那么,它究竟是如何实现防护的呢?其背后的防护原理又是什么?接下来,我们就一同去探寻。一、高防 IP 如何处理攻击流量?高防 IP 防护的第一步是流量牵引。当网站接入高防 IP 服务后,原本发往网站源 IP 的流量会被引导到高防 IP 所在的防护节点,这些节点拥有强大的带宽和处理能力。接着启动流量清洗机制,对牵引来的流量深度检测,依据预设规则识别出 DDoS、CC 等恶意流量,再通过复杂算法和技术过滤掉恶意流量,只让正常流量转发到源服务器,避免源服务器受攻击流量冲击。二、高防 IP 能防护协议层攻击吗?网络中不同攻击会利用 TCP、UDP、ICMP 等协议的漏洞,高防 IP 针对这些常见协议进行防护。比如面对利用 TCP 三次握手机制漏洞的 SYN Flood 攻击,高防 IP 会严格检查和管理 TCP 连接请求,通过设置合理的连接超时时间、限制半连接数量等方式,防止服务器资源被耗尽。对于 UDP 协议,它能识别异常 UDP 流量模式,过滤大量无意义的 UDP Flood 攻击流量,保障协议层安全稳定。三、高防 IP 能应对应用层攻击吗?应用层是攻击高发地,像 CC 攻击就很典型,而高防 IP 具备应用层防护能力。它会分析 HTTP 等应用层协议的请求,识别出恶意高频请求,比如模拟正常用户行为的 CC 攻击请求。通过对请求的频率、来源、行为模式等多维度分析判断合法性,一旦发现恶意请求就进行拦截,防止服务器因应用层攻击瘫痪,保障网站应用正常运行。四、高防 IP 防护策略会调整吗?高防 IP 不采用单一固定的防护模式,而是有智能防护策略。它能根据实时攻击情况和流量特征,动态调整防护规则和参数。例如,当攻击流量的规模和类型变化时,会自动优化流量清洗算法,提高对新攻击变种的识别和防御能力。同时,结合大数据分析技术,学习历史攻击数据和正常流量数据,不断完善防护策略,提升整体防护效果。高防 IP 通过流量牵引与清洗、协议层防护、应用层防护及智能防护策略的协同,构建起完整高效的防护体系,为网站和网络服务提供可靠安全保障。了解这些原理,能帮助网站运营者更好地利用高防 IP 应对复杂的网络攻击威胁。
云服务器怎么使用?
随着云计算技术的不断发展,越来越多的企业和个人开始使用云服务器来存储和处理数据。云服务器怎么使用?对于新手来说还是有必要学习下如何去操作,选择合适的云服务器类型和配置、登录云服务器并开始使用。 云服务器怎么使用? 1. 选择云服务器服务商 首先,我们需要选择一家云服务器供应商注册账户并开通一台云服务器实例。目前市场上有很多云服务器供应商,例如破蜗壳、亚马逊AWS、微软Azure、华为云……等。破蜗壳的云服务器价格最便宜,性能也十分稳定,比较推荐使用,其中1H1G2M的香港云服务器才33元一个月,同等配置的腾讯云或阿里云通常需要98元-148元左右,破蜗壳平台的国内和海外各个国家及地区的云服务器基本都非常便宜。 2. 选择云服务器配置 注册完成后,可以选择云服务器的类型和配置,一般来说云服务器的配置肯定是越高越好,可以根据自己的需要自己选配,比如你只需要放置一个访问量不是特别大的网站应用,那么1H2G5M的云服务器就基本够你使用了。 云服务器的地区选择:一般来说国内的云服务器各个地区的机房延迟都差不多,选择离自己最近的一个机房服务器就可以了,如果不想进行繁琐的于面备案服务操作就选择破蜗壳的香港云服务器。香港因为特殊的政策原因,服务器可以不用域名备案就能访问使用,同时还可以无限制访问全球各个国家及地区的网站应用及数据。而国内的服务器就必须要到公安部和信息部提交完成域名信息备案才能够使用。 3. 选择云服务器的操作系统 选择云服务器的操作系统是很重要的一步。不同的操作系统适用于不同的场景。比如,Windows操作系统适用于运行基于Windows的应用程序,而Linux操作系统则适用于运行基于Linux的应用程序。因此,我们需要根据自己的实际需求选择合适的操作系统。 4. 登录使用云服务器 购买云服务器后就可以开始使用了,不同的操作系统使用方法也各不相同,下面的教程请根据自己选择的操作系统进行操作。 注册云服务器账号并登录控制台。 创建云服务器实例,选择合适的配置和操作系统。 配置网络和安全组,确保云服务器可以正常访问和被访问。 连接云服务器,可以使用远程桌面、SSH等方式连接。 安装和配置需要的软件和服务,例如Web服务器、数据库等。 使用云服务器提供的API和控制台管理工具,对云服务器进行监控和管理。 云服务器的优点在于它可以根据业务需求进行弹性扩容和缩容,可以随时增加或减少计算资源,从而满足业务高峰期和低谷期的需求。此外,云服务器还可以提供高可用性和容灾能力,可以在单个节点故障时自动切换到备用节点,保证业务的连续性和可靠性。 以上就是关于云服务器怎么使用的相关步骤,我们需要选择一款合适的云服务器。连接云服务器有几种方式,以上就是快快网络小编给大家介绍的相关方法,记得收藏起来。
SQL注入攻击的种类和防范方法
观察近来的一些安全事件及其后果,安全专家们已经得到一个结论,这些威胁主要是通过SQL注入造成的。虽然有许多文章讨论了SQL注入,但今天所讨论的内容也许可帮助你检查自己的服务器,并采取相应防范措施。 知彼知己,方可取胜。首先要清楚SQL注入攻击有哪些种类。 SQL注入攻击的种类 1.没有正确过滤转义字符 在用户的输入没有为转义字符过滤时,就会发生这种形式的注入式攻击,它会被传递给一个SQL语句。这样就会导致应用程序的终端用户对数据库上的语句实施操纵。比方说,下面的这行代码就会演示这种漏洞: statement := "SELECT * FROM users WHERE name = ’" + userName + "’;" 这种代码的设计目的是将一个特定的用户从其用户表中取出,但是,如果用户名被一个恶意的用户用一种特定的方式伪造,这个语句所执行的操作可能就不仅仅是代码的作者所期望的那样了。例如,将用户名变量(即username)设置为: a’ or ’t’=’t,此时原始语句发生了变化: SELECT * FROM users WHERE name = ’a’ OR ’t’=’t’; 如果这种代码被用于一个认证过程,那么这个例子就能够强迫选择一个合法的用户名,因为赋值’t’=’t永远是正确的。 在一些SQL服务器上,如在SQL Server中,任何一个SQL命令都可以通过这种方法被注入,包括执行多个语句。下面语句中的username的值将会导致删除“users”表,又可以从“data”表中选择所有的数据(实际上就是透露了每一个用户的信息)。 a’;DROP TABLE users; SELECT * FROM data WHERE name LIKE ’% 这就将最终的SQL语句变成下面这个样子: SELECT * FROM users WHERE name = ’a’;DROP TABLE users; SELECT * FROM DATA WHERE name LIKE ’%’; 其它的SQL执行不会将执行同样查询中的多个命令作为一项安全措施。这会防止攻击者注入完全独立的查询,不过却不会阻止攻击者修改查询。 2.Incorrect type handling 如果一个用户提供的字段并非一个强类型,或者没有实施类型强制,就会发生这种形式的攻击。当在一个SQL语句中使用一个数字字段时,如果程序员没有检查用户输入的合法性(是否为数字型)就会发生这种攻击。例如: statement := "SELECT * FROM data WHERE id = " + a_variable + ";" 从这个语句可以看出,作者希望a_variable是一个与“id”字段有关的数字。不过,如果终端用户选择一个字符串,就绕过了对转义字符的需要。例如,将a_variable设置为:1;DROP TABLE users,它会将“users”表从数据库中删除,SQL语句变成:SELECT * FROM DATA WHERE id = 1;DROP TABLE users; 3.数据库服务器中的漏洞 有时,数据库服务器软件中也存在着漏洞,如MYSQL服务器中mysql_real_escape_string()函数漏洞。这种漏洞允许一个攻击者根据错误的统一字符编码执行一次成功的SQL注入式攻击。 4.盲目SQL注入式攻击 当一个Web应用程序易于遭受攻击而其结果对攻击者却不见时,就会发生所谓的盲目SQL注入式攻击。有漏洞的网页可能并不会显示数据,而是根据注入到合法语句中的逻辑语句的结果显示不同的内容。这种攻击相当耗时,因为必须为每一个获得的字节而精心构造一个新的语句。但是一旦漏洞的位置和目标信息的位置被确立以后,一种称为Absinthe的工具就可以使这种攻击自动化。 5.条件响应 注意,有一种SQL注入迫使数据库在一个普通的应用程序屏幕上计算一个逻辑语句的值: SELECT booktitle FROM booklist WHERE bookId = ’OOk14cd’ AND 1=1 这会导致一个标准的面面,而语句 SELECT booktitle FROM booklist WHERE bookId = ’OOk14cd’ AND 1=2在页面易于受到SQL注入式攻击时,它有可能给出一个不同的结果。如此这般的一次注入将会证明盲目的SQL注入是可能的,它会使攻击者根据另外一个表中的某字段内容设计可以评判真伪的语句。 6.条件性差错 如果WHERE语句为真,这种类型的盲目SQL注入会迫使数据库评判一个引起错误的语句,从而导致一个SQL错误。例如: SELECT 1/0 FROM users WHERE username=’Ralph’。显然,如果用户Ralph存在的话,被零除将导致错误。 7.时间延误 时间延误是一种盲目的SQL注入,根据所注入的逻辑,它可以导致SQL引擎执行一个长队列或者是一个时间延误语句。攻击者可以衡量页面加载的时间,从而决定所注入的语句是否为真。 以上仅是对SQL攻击的粗略分类。但从技术上讲,如今的SQL注入攻击者们在如何找出有漏洞的网站方面更加聪明,也更加全面了。出现了一些新型的SQL攻击手段。黑客们可以使用各种工具来加速漏洞的利用过程。我们不妨看看the Asprox Trojan这种木马,它主要通过一个发布邮件的僵尸网络来传播,其整个工作过程可以这样描述:首先,通过受到控制的主机发送的垃圾邮件将此木马安装到电脑上,然后,受到此木马感染的电脑会下载一段二进制代码,在其启动时,它会使用搜索引擎搜索用微软的ASP技术建立表单的、有漏洞的网站。搜索的结果就成为SQL注入攻击的靶子清单。接着,这个木马会向这些站点发动SQL注入式攻击,使有些网站受到控制、破坏。访问这些受到控制和破坏的网站的用户将会受到欺骗,从另外一个站点下载一段恶意的JavaScript代码。最后,这段代码将用户指引到第三个站点,这里有更多的恶意软件,如窃取口令的木马。 以前,我们经常警告或建议Web应用程序的程序员们对其代码进行测试并打补丁,虽然SQL注入漏洞被发现和利用的机率并不太高。但近来攻击者们越来越多地发现并恶意地利用这些漏洞。因此,在部署其软件之前,开发人员应当更加主动地测试其代码,并在新的漏洞出现后立即对代码打补丁。 防御和检查SQL注入的手段 1.使用参数化的过滤性语句 要防御SQL注入,用户的输入就绝对不能直接被嵌入到SQL语句中。恰恰相反,用户的输入必须进行过滤,或者使用参数化的语句。参数化的语句使用参数而不是将用户输入嵌入到语句中。在多数情况中,SQL语句就得以修正。然后,用户输入就被限于一个参数。下面是一个使用Java和JDBC API例子: PreparedStatement prep = conn.prepareStatement("SELECT * FROM USERS WHERE PASSWORD=?"); prep.setString(1, pwd); 总体上讲,有两种方法可以保证应用程序不易受到SQL注入的攻击,一是使用代码复查,二是强迫使用参数化语句的。强迫使用参数化的语句意味着嵌入用户输入的SQL语句在运行时将被拒绝。不过,目前支持这种特性的并不多。如H2 数据库引擎就支持。 2.还要避免使用解释程序,因为这正是黑客们借以执行非法命令的手段。 3.防范SQL注入,还要避免出现一些详细的错误消息,因为黑客们可以利用这些消息。要使用一种标准的输入确认机制来验证所有的输入数据的长度、类型、语句、企业规则等。 4.使用专业的漏洞扫描工具。但防御SQL注入攻击也是不够的。攻击者们目前正在自动搜索攻击目标并实施攻击。其技术甚至可以轻易地被应用于其它的Web架构中的漏洞。企业应当投资于一些专业的漏洞扫描工具,如大名鼎鼎的Acunetix的Web漏洞扫描程序等。一个完善的漏洞扫描程序不同于网络扫描程序,它专门查找网站上的SQL注入式漏洞。最新的漏洞扫描程序可以查找最新发现的漏洞。 5.最后一点,企业要在Web应用程序开发过程的所有阶段实施代码的安全检查。首先,要在部署Web应用之前实施安全测试,这种措施的意义比以前更大、更深远。企业还应当在部署之后用漏洞扫描工具和站点监视工具对网站进行测试。 Web安全拉警报已经响起,安全形式异常严峻,企业绝对不应当草率从事。安全重于泰山 新一代云安全引领者-------云安全领域服务商------------ 快快网络小潘QQ:712730909
查看更多文章 >