huolan 2019-12-18
早期应用系统结构:客户/服务器模式
这个模式具有一定的缺陷,对应用系统、资源等有一定影响。
目前的应用系统结构:三层客户/服务器结构
浏览器<—>Internet<—>Web应用服务器<—>中间件<—>数据库
黑客攻击Web应用服务器、中间件、数据库,;利用漏洞、在网页中植入恶意代码。
SQL注入漏洞是Web层面最高危的漏洞之一。
SQL注入漏洞的形成原因就是:用户输入的数据被SQL解释器执行。
参数类型检测主要面向+纯字符型的参数查询,可以用以下函数实现:
在特定情况下使用这三个函数,可限制用户的输入为数字型。在一些仅允许用户参数为数字的情况下非常适用。
如果某处提交的内容都在一定的长度以内,那么严格控制这些提交点的字符长度,大部分的注入语句就没办法取得成功。
常见的危险参数过滤包括关键字、内置函数、敏感字符的过滤,其过滤方法主要有如下三种:
1)黑名单过滤:将一些可能用于注入的敏感字符写入黑名单中,如‘(单引号)、union、select等,也可使用正则表达式进行过滤,但黑名单可能会有疏漏。
2)白名单过滤:指接收已记录在案的良好输入操作,比如用数据库中的已知值校对。
3)GPC过滤:对变量默认进行addslashes(在预定义字符前添加反斜杠)。
参数化查询是指数据库服务器在数据库完成SQL指令的编译后,才套用参数运行,因此就算参数中含有有损的指令,也不会被数据库运行,仅认为它是一个参数。
参数化查询一般作为最后一道安全防线。
一些文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型,导致允许攻击者向某个可通过Web访问的目录上传任意PHP文件,并能够将这些文件传递给PHP解释器,从而可以在远程服务器上执行任意PHP脚本。
造成恶意文件上传的原因主要有三种:
1)文件上传时检查不严。
2)文件上传后修改文件名时处理不当。
3)使用第三方插件时引入。
跨站脚本攻击(Cross Site Scripting ,XSS)是指攻击者利用网络程序对用户输入过滤的不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。
XSS是常见的Web应用程序安全漏洞之一。XSS属于客户端攻击,受害者是用户。(包括网站和服务器的管理人员)。
根据XSS存在的形式及产生的效果,可以将其分为一下三类:
反射型XSS将用户输入的数据直接或未经过完善的安全过滤就在浏览器中进行输出,导致输出的数据中存在可被浏览器执行的代码数据。
存储型XSS是指Web应用程序会将用户输入的数据信息保存在服务器端的数据库或其他文件形式中。网页进行数据查询展示时,会从数据库中获取数据内容,并将数据内容在网页中进行输出展示,因此存储型XSS具有较强的稳定性。
基于DOM的XSS是通过修改页面DOM节点数据信息而形成的XSS。不同于反射型XSS和存储型XSS,基于DOM的XSS往往需要针对具体的JavaScript DOM代码进行分析,并根据实际情况进行XSS的利用。
过滤特殊字符的方法又称作XSS Filter,其作用就是过滤客户端提交的有害信息,从而防范XSS攻击。
在测试和使用的跨站代码中几乎都会用到一些常见的特殊符号。
CSRF是指跨站请求伪造,也常常被称为“One Click Attack”或者“Session Riding”,通常缩写为CSRF或者XSRF。理解:攻击者盗用了你的身份,以你的名义进行某些非法操作。
要完成一次CSRF攻击,受害者必须依次完成两个步骤:
1)登录受信任网站A,并在本地生成Cookie。
2)在不登出A的情况下,访问危险网站B。
1)论坛等可交互的地方
2)Web攻击者
3)网络攻击者
(1)添加验证码
(2)验证referer
(3)利用token
preg_replace函数,该函数的作用是执行一个正则表达式的搜索和替换。
使用preg_replace函数的好处在于此函数由于在业务系统中广泛使用,因此无法直接在PHP中进行禁用,在适用范围上比Eval、Assert好很多。
1)禁用高危系统函数
2)严格过滤关键字符
3)严格限制允许的参数类型
恶意代码又称恶意软件,是能够在计算机系统中进行非授权操作的代码。
Version:1.0 StartHTML:000000209 EndHTML:000018617 StartFragment:000002669 EndFragment:000018531 StartSelection:000002669 EndSelection:000018521 SourceURL:https://www.cnblogs.com/lj2406/p/12051825.html 2019-2020-1学期 20192406《网络空间安全专业导论》第十一周学习总结 - 20192406lj - 博客园
三个特点:
具有恶意破坏的目的、其本身为程序、通过可执行发生作用
分类恶意代码的标准主要是代码的独立性和自我复制性。
WebShell文件通常是可执行的脚本文件,与操作系统中的木马类似,可以理解为是一种Web脚本形式编写的木马后门,一般用于远程控制Web服务器。WebShell往往以ASP、PHP、ASPX、JSP等网页文件的形式存在。
攻击者在入侵一个Web应用服务器后,常常将这些脚本木马后门文件放置在服务器的Web目录中,然后攻击者就可以用Web页面的方式,通过脚本木马后门控制Web服务器,包括上传下载文件、查看数据库、执行任意程序命令等。
“一句话”就是通过向服务端提交一句简短的代码来达到向服务器插入Web脚本形式的木马并最终获得WebShell的方法。
1. 服务器安全设置
(1)加强对脚本文件的代码审计
(2)Web服务器通过正则表达式、限制用户输入信息长度等方法对用户提交信息的合法性进行必要的验证、过滤;使用参数化的SQL查询来代替动态拼接的SQL注入语句,完善操作日志记录和日志记录。
(3)数据库是Web应用系统的重要组成部分,使用数据库系统自身的安全性设置访问数据库权限。
2.应用安全防护
(1)Web软件开发的安全
(2)FTP文件上载安全
(3)文件系统的存储权限
(4)不要使用超级用户运行Web服务
3.控制文件上传
(1)加强对脚本文件的代码审计
(2)将应用系统的重要文件放在不同的文件夹中,通过设置虚拟目录访问这些文件夹,尤其是上传文件,并合理设置这些文件夹的访问权限
中间件是一种独立的系统软件或服务程序,分布式应用程序借助这种软件在不同的技术之间共享资源。中间件位于客户机/服务器的操作系统之上,管理计算资源和网络通信。
企业使用中间件具有一些优势
开发的简便、开发周期的缩短
减少了系统的维护、运行和管理的工作量,还减少了计算机总体费用的投入
将不同时期、在不同操作系统上开发应用软件集成起来,彼此之间像一个天衣无缝的整体协调工作。
数据库是存储数据的“仓库”,是长期存放在计算机内、有组织、可共享的大量数据的集合。
数据库技术是计算机处理与存储数据的有效技术,其典型代表就是关系型数据库。
目前应用到Web系统当中的关系型数据库主要有SQL Server、MySQL、Oracle等。
SQL是英文(Structured Query Language)的缩写,意思为结构化查询语言,是用于对存放在计算机数据库中的数据进行组织、管理和检索的一种工具。
SQL语言的主要功能就是同各种数据库建立联系,进行沟通。SQL被作为关系型数据库管理系统的标准语言,它是操作关系数据库的重要工具,是关系数据库的核心语言。
xp_cmdshell就是以操作系统命令行解释器的方式执行给定的命令字符串。
对于数据库的防护方法
需要加强像SA这样的账号的密码
对扩展存储过程进行处理
执行use master sp_dropextendedproc ‘xp_cmdshell‘去掉Guest账号,阻止非授权用户访问
加强对数据库登录的日志记录,最好记录所有登录事件
用管理员账号定期检查所有账号,看密码是否为空或者过于简单,如发现这类情况应及时弥补
舆论作为一种重要的社会精神现象,很早就受到了政治家和哲学家的关注。
舆论是舆情的近亲,很多舆情的研究都以舆论为起点。舆情从字面上可理解为舆论的总体情况。
网络舆情是指在网络空间内。民众围绕舆情因变事项的发生、发展和变化,通过互联网表达出来的对公共政策及其制定者的意见。
网络舆情分析方法包括检索方法与分析方法两个部分。数据检索是网络舆情分析的准备阶段,研判是分析的核心技术环节。
检索方法:机器检索和人工检索。
机器检索是借助信息检索工具(如搜索引擎)在网络上抓取与给定关键词相关的信息,借助累加器、网址指向判断等简单的程序给出信息的来源和信息的浏览量,并可以按照用户要求进行排序和筛选(例如,按时间顺序排列和按来源筛选)。
人工检索并不是指完全依靠人工实现信息管理,而是借助开放性工具(如商业搜索引擎)完成网络舆情分析工作。这里的“人工”主要是相对于单一机器检索而言,指以人工操作模拟搜索引擎的工作原理与方式。
舆情分析中的检索方法有以下特点:
网络舆情的研判主要关注舆情发生的动因、核心诉求、传播路径和传播影响力,并判断舆情的传播走势和影响。要完成这两项任务,一是需要分析思路,二是需要理论支持。
它的分析研判主要包括定量研判分析和定性研判分析两种。
定量研判分析包括:
定性研判分析包括:
双层分析法包括传播层分析和动因层分析。
(1)传播层分析
传播者的身份特征对生产传播内容和调整传播策略具有重要的意义,因此需要进行传播者分析。
(2)动因层分析
治本还需解病因,才能真正改善社会公共治理和企业的形象,所以有必要进行动因层分析。
基于语义分析的内容识别方法是舆情分析的重要方法之一。
倾向性分类主要有基于语义词典的方法和基于机器学习的无监督的方法。
关联规则挖掘、序列模式挖掘、聚类分析和自动分类技术。
网络舆情分析系统通常具有下列功能:
大数据环境下舆情系统一般由网络舆情数据采集、数据预处理、数据聚类和舆情分析和结果呈现等模块组成。
网络爬虫是相对成熟的一种自动采集网页信息的方式,适用于网络舆情监控和分析系统。
对网络舆情数据进行分析并发现话题,是舆情分析的重要工作。
话题是一个核心事件或活动以及与之直接相关的事件或活动。
一般话题发现的研究方法可分为两类:一,寻找适合话题发现的聚类算法或者对已有的聚类算法进行改造;二,挖掘新的话题特征来提高检测的效果。
话题发现分为回顾式话题发现和在线新话题发现。
舆情分析的另一个任务是感知人们的观点、态度倾向等主观信息。
正则表达式是由某些字符和特殊符号构成的字符串表达式,它描述了某种语句的形式结构规则,非常适合用来提取页面信息。
信息过滤技术是根据用户的设定在抓取的网页内容中过滤掉不需要的部分,留下有用信息并将其保存到指定的位置。
Web信息挖掘主要由四个步骤构成:
在系统数据库中一般划分为5个数据表,分别为站点信息表、文档信息表、话题信息表、话题发现结果表和情感分析结果表。
网络计量学包括所有使用情报计量和其他计量方法对网络通信有关问题的研究。
网络舆情监测系统借助互联网技术调查社会民情,能降低人工调查的成本,提供更加及时、
全面的数据,分析舆情趋势。
网络舆情监控要做到:
1)依托公开管理的职能,切实掌握网络情况,积极建立健全系统的信息数据库。
2)对于网络上的热点新闻、事件以及人物,在实现网络监控的同时,视情况可进行网下的深入调研。
3)充分利用计算机技术与网络技术,对网络舆情监控系统的信息进行深层挖掘,切实掌握维稳工作所涉及的各类网络舆情信息,注重與情的有效引导。
利用网络舆情监测系统,可以从海量的互联网资源中挖掘出舆情信息动态。
网络舆情监测系统涉及的技术包括网络爬虫、数据挖掘、文本聚类与分类、语义抽取。网络舆情监测系统大致可划分为以下几个模块:信息采集模块、正文提取模块、文本聚类模块、文本分类模块和情感分析模块。