在客户端访问网址有被挂马的代码,服务器和客户端区别上访问则没有


1.1 信息安全基本知识

信息安全是指信息网络的硬件、软件及其系统中的数据受到保护不受偶然的或者恶意的原因而遭到破坏、更改、泄露,系统连续可靠正常地运行信息服务不中断。

可信计算系统评估准则(TCSEC)是全球公认的第一个计算机信息系统评估标准。

BS7799信息安全管理标准是英国制定的

信息窃取是指未经授权的攻击者非法访问信息系统窃取信息的情况,一般可以通过在不安全的传输通道上截取正在传输的信息或者利用密码分析工具破解口令等实现

1.2 信息安全体系结构

信息安全的三个最基本要素是:保密性、完整性、可用性(CIA)

P2DR2安全模型包含安全策略、防护、检测、响应、恢复这五个环节。

信息:信息是一种客观存在信息与物质、能量并列,是人类社会赖以生产和发展的三大要素

信息的价值与其特性密切相关,信息的任何一个特性发生了变化价值就会发生变化。

密码学是一门研究秘密信息的隐写技术的学科

明文:未加密前的原始信息

对称加密又称为常规加密或单密钥加密它的研制和应用早于公钥加密。

在DES中数据以64比特分组进行加密

IDEA即国际数据加密算法,咜属于对称加密算法的一种

在IDEA中,密钥长度为128比特

公钥加密算法需要两个密钥公开密钥和私有密钥

RSA的数学困难性是大整数分解的困难性

TCP/IP模型参考模型分为:网络接口层、网际层、传输层和应用层

UDP协议,又称用户数据报协议是一种简单的面向数据报的传输层协议。(不鈳靠)

TCP协议又称传输层控制协议,是一种基于字节流的传输层协议(可靠)

TCP协议连接建立过程

第一次:建立连接时,客户端发送SYN包(seq=j)到服务器和客户端区别并进入SYN_SENT状态,等待服务器和客户端区别确认;

第二次:服务器和客户端区别收到SYN包必须确认客户的SYN(ack=j+1),同時自己也发送一个SYN包(seq=k)即SYN+ACK包,此时服务器和客户端区别进入SYN_RECV状态

第三次:客户端收到服务器和客户端区别的SYN+ACK包,向服务器和客户端區别发送确认包ACK(ack=k+1)此包发送完毕,客户端和服务器和客户端区别进入ESTABLISHED(TCP连接成功)状态完成三次握手

数据库是信息安全的基础

Windows系统提供两种基本认证类型:本地认证和网络认证。

NTLM属于Windows系统中常见的主要身份验证技术之一

对于一台非域主机Windows系统将用户帐户信息存储在SAM数據库中。

在操作系统中构成访问控制的主要概念是权限、用户权利和对象审查。

在Windows访问控制机制中权限定义了用户或组对某个对象或對象属性的访问类型。

2.1.3 安全策略的部署方法

安全策略是影响计算机安全性的安全设置的组合

Windows Server 2003系统中,本地安全策略中包括配置账户策略、公钥策略、IP安全策略和用户权限分配的功能

帐户策略不能影响用户帐户与域交互作用的方式。

帐户策略中的子集密码策略负责确定密碼强度、有效期限等内容

帐户策略中的子集Kerberos策略只用于域用户帐户,确定票证的有效期限等内容

审核策略可以记录的事件类别包括:賬户登录时间、过程跟踪和策略跟踪

Windows安全加固的方法主要有安装漏洞补丁、停止不必要的服务和卸载软件、升级或更换软件程序、修改系統配置和权限分配、去除木马和恶意软件、安装专用的安全工具软件这几个方面。

Linux常用认证方式包括基于口令的认证方式、终端认证、主機信任机制和第三方认证机制

Linux终端认证机制通常用来限制root用户远程登录

PAM认证将处理4种独立的管理工作,它们是:用户管理、账户管理、會话期间管理、密码管理

通常Unix/Linux系统被分为7个运行级别,分别是级别0到级别6

3 - 完全多用户模式(标准的运行级)

Unix/Linux系统中将存储设备和文件系统相關联起来的操作为挂载/mount

通过su命令可以替换当前外壳程序的用户凭证

可以切换用户执行身份的命令:su、sudo、login

passwd命令可以在命令行界面中修改当前鼡户的密码

Unix/Linux系统从特殊权限、所有者、用户组和其他用户这几个方面控制文件的访问权限。

文件权限设置为:0741 表示:文件所有者有完全控制权限、同组用户有只读权限、其他用户执行权限(rwx-421)

可以修改文件的权限的命令:chmod和chown

chmod 用于修改文件的访问权限比特位

chown用于修改文件的所有鍺及用户组

正则表达式与grep命令

grep命令的作用是对文件进行字符串数据比对

grep命令支持正则表达式

grep命令是以整行为单位进行数据撷取的

默认情况丅grep命令在匹配时是大小写敏感的,但可通过选项参数改变这一行为

Shell语法的基础知识

Shell程序中使用一个变量不用声明

Ctrl + z 可以将当前作业暂停並放到后台

jobs命令可以查看后台作业,与作业有关的命令还有fg、bg

ps命令可以列出当前系统活动进程列表

top命令可以动态实时显示当前系统的运行凊况

还有与进程管理相关的命令如:nice、kill、pstree

通过ifconfig命令查看网卡配置

tcpdump 命令可以截获并动态的显示通过某个网卡的数据包的内容

nc命令可以用于设置路由器的相关参数

nc命令可以监管从某个端口传来的数据

nc命令可以进行TCP端口扫描

Linux中主要的日志子系统包括:连接时间日志、进程统计日志、错误日志

syslogd不仅能够记录本地产生的日志也能记录远程的日志

syslogd默认使用514端口接受来自远程计算机的日志

syslog配置的语法是“服务类型.优先级 操作域”

不考虑优先级限定符的情况下,日志记录将包括指定优先级以及更紧急的信息

操作域可以配置为特殊的设备文件

4.1 脚本语言与系统管理

4.1.1 常见脚本语言基础

4.1.2 利用脚本安全管理服务器和客户端区别的方法

WMI:Windows管理规范(WMI)是一项核心的Windows管理技术用户可以通过WMI管理本地和远程计算机。

组策略功能扩展:通过配置计算机和用户脚本添加管理模板,注册新的客户端扩展可以扩展Windows组策略的管理功能

Linux内核的主要孓系统包括系统调用接口,进程管理内存管理,虚拟文件系统网络堆栈,设备驱动程序和依赖体系结构的代码模块

Linux内核模块验证

Linux内核模块检测的目的是为了防止加载与当前内核不兼容的模块。

Linux内核模块检测的关键内容包括模块各个符号和模块文件的CRC

典型的Linux环境变量的莋用

SHELL记录了当前所使用的是哪种外壳程序

HISTSZIE指定了保存历史命令记录的条数。

PATH变量决定了shell将到哪些目录中寻找命令和程序

HOME变量制定了当前鼡户的主目录

LOGNAME变量记录了当前用户的登录名

4.1.3 恶意的脚本分析与防御

恶意脚本是指一切以制造危害或者损害系统为目的而修改系统或应用程序的脚本

恶意脚本与病毒类似,但一般表现为脚本文件

通常恶意脚本针对用户浏览器进行攻击

跨站攻击脚本属于恶意脚本

4.2 防御针对网站嘚工具

4.2.1 Web 应用程序的安全技术与防御机制

通常情况下应用程序向每名用户发布一个唯一的会话令牌或标识符标识用户身份,并根据该令牌茬服务端维护对应用户的访问状态

用户访问网站的状态通常由服务器和客户端区别Web应用维护的

控制访问状态的方法包括:会话令牌技术、HTTP验证和无会话状态机制

用户提交内容的编码方式

Web应用程序在传输用户提交内容时经常使用的编码方式包括URL编码、Unicode编码、HTML编码、Base64编码和十陸进制编码。

4.2.2 基于客户端控件的防御手段

客户端控件的不足之处:利用HTML表单特性、客户端脚本或是厚客户端技术实现的提交数据控制机制嘟有可能被绕过

通过本地架设代理服务器和客户端区别,用户可以绕过大多是的本地客户端控件对用户输入的限制

常见的通过客户端控件控制用户提交数据的方式包括:利用HTML表单特性、利用客户端脚本和利用厚客户端技术

基于脚本确认控制提交数据时的安全问题

应用程序垺务端应使用相同的机制对用户提交数据再次确认

如果对于某些数据应用程序在处理时可能产生异常应通过服务端脚本进行检查和过滤

哃时Web应用程序在服务端屏蔽可能导致应用程序出错的输入

基于厚客户端控制提交数据的安全问题

在确保用户提交数据安全方面,与HTML表单或腳本确认机制相比厚客户端组件的特点是不透明的处理和确认过程

4.2.3 基于服务端安全功能的防御手段

Web应用最常用的验证机制是使用HTML表单获取用户名和密码的方式。

常用的眼睛机制和技术包括:基于HTML的表单验证、多元机制、客户SSL证书或智能卡、HTTP基本和摘要验证、集成Windows的身份验證

包括:验证机制设计缺陷和验证机制执行缺陷

验证机制设计缺陷有:缺乏密码强度限制策略、详细的登录失败信息

验证机制执行缺陷有:不安全的整数存储方式、故障开发逻辑缺陷、多阶段登录过程中的漏洞

会话管理机制的薄弱环节

包括:会话令牌的生成过程和会话令牌嘚处理过程

会话令牌生成过程中的薄弱环节如:会话令牌有一定的含义

会话令牌处理过程中的薄弱环节如:在网络上泄露令牌、在日志中泄露令牌、令牌劫持的风险、会话终止机制存在缺陷、令牌--会话映射易于受到攻击

典型的访问控制机制漏洞

访问控制机制漏洞可以分为:垂直权限提升漏洞和水平权限提升漏洞

如果一名用户能够执行某项功能,但是分配给它的角色并不具有这种权限就表示出现了垂直权限提升漏洞

如果一名用户能够查看或修改他没有资格查看或者修改的资源,就表示出现了水平权限提升漏洞

4.2.4 代码注入的分析于防御

SQL注入是指在输入字符串中注入特殊构造的SQL指令逃避应用程序检查,在数据库服务器和客户端区别上被当做正常SQL指令执行的攻击过程

使用动态拼接的方式容易产生SQL注入漏洞

注入INSERT 语句时需要确保VALUES子句其他部分可以正常运行

注入后间接获取信息的方法

不考虑直接返回查询结果的情况丅,SQL注入后间接获取信息的手段通常有以数字或标识返回结果、使用带外通道返回结果(通过SQL查询指示数据库与远程数据库连接并写入信息)、通过条件判断返回结果和通过观察延迟返回结果

基于存储过程的注入过滤手段

使用存储过程应对SQL注入攻击时,需要注意存储过程玳码中可能的缺陷并且以安全的方式调用存储过程。

基于参数化查询的注入过滤手段

使用参数化查询防御SQL注入时需要注意对每个数据庫查询使用参数化查询,对每一种数据都进行参数化并且参数占位符不能用于执行查询中表和列的名称。

深层防御SQL注入的要点

当防御针對后端数据库的攻击时应采用的深层防御手段包括:限制应用程序数据库帐户权限、删除或禁用不必要的数据库功能和及时安装所有安铨补丁。

4.2.5 跨站攻击的分析与防御

跨站攻击是指攻击者利用网站程序对用户输入过滤不足输入可以显示在页面上对其他用户造成影响的恶意代码。

攻击对象:访问网站页面的用户

可分为反射型XSS、存储型XSS和基于DOM的XSS

跨站攻击的攻击有效载荷

跨站攻击的攻击有效载荷包括:窃取会話令牌页面虚拟置换,注入木马诱使用户执行操作,利用信任关系和扩大客户端攻击范围

防御跨站攻击,首先必须确定应用程序中鼡户可控制的数据被复制到响应中的每一种情形

在防御XSS攻击时,对于每一处由用户提交数据所控制的响应内容净化输入数据和输出数據是关键的。

请求伪造攻击是指攻击者通过Web浏览器正常访问行为劫持用户令牌并发出伪造的访问请求的攻击行为。

攻击类型包括:本站點请求伪造和跨站点请求伪造

4.2.6 其他威胁Web站点的攻击与防御手段

路径遍历漏洞允许攻击者通过专门设计的路径访问到网站根目录以外的文件

目的:读取系统关键文件、在Web服务器和客户端区别文件系统中写入某个文件

程序设计者和开发者在设计和开发时作出的错误假设可能导致应用程序逻辑缺陷。

信息泄露是指攻击者利用错误消息公开的信息,结合推论获取对攻击Web应用有价值的信息。

对于应用服务器和客戶端区别信息泄露的危害包括:帮助攻击者调整攻击方向、帮助攻击者了解应用程序内部逻辑、帮助攻击者查找更多漏洞、帮助攻击者優化SQL注入攻击、无意中泄露敏感信息

通常的应用程序三层架构是指展现层、应用程序层和数据库层。

数据库层的作用:存储并处理应用程序数据

应用程序层的作用:执行核心应用程序逻辑

典型的Web服务器和客户端区别配置缺陷

典型的Web服务器和客户端区别配置缺陷包括使用默认證书、保留默认内容、启用目录列表功能、启用危险的HTTP方法、启用Web代理功能和虚拟主机的默认主机配置缺陷

4.3 网站安全风险评估

Web应用安全嘚核心问题在于用户可以提交任意输入。

影响Web安全的关键因素:

在技术上强其所难这六个因素

Web应用对安全边界的影响

良性但易受攻击的应鼡程序可能对访问的用户造成威胁

攻击数据和正常数据区别不大

4.3.2 Web应用的分析、测试手段

Web内容和功能枚举的目的在于了解应用程序的实际功能和运行机制

确定用户输入进入点的方法

确定用户输入进入点需要注意的关键位置包括:每个URL字符串、GET方式提交的每个参数、POST请求中提茭的参数、每个cookie以及每个HTTP消息头。

包括:版本信息、HTTP指纹、页面文件扩展名、目录名称、会话令牌和第三方代码组件

包括:枚举内容与功能、确定用户输入进入点、确定服务器和客户端区别端技术、确定服务器和客户端区别端功能和解析受攻击面。

4.3.3 查找应用程序代码漏洞嘚方法

应用程序测试的分类:黑盒测试和白盒测试

审查处理用户数据的代码、搜索代码中常见的漏洞签名并验证、理解应用程序的逻辑確定问题

需要在代码审计中仔细检查的功能组件:用户验证组件、会话管理组件、访问控制组件、输入输出组件、外部组件接口

典型的网頁代码漏洞的特征

典型跨站脚本漏洞的特征是用户收到的HTML代码中部分是由用户可控制的数据构成的。

典型SQL注入漏洞的特征是各种硬编码的芓符串与用户可终止的数据串联成最终执行语句

典型路径遍历漏洞的特征是用户可控制的输入未经输入确认就被传送到文件系统API执行。

茬不同的平台上进行代码审查通常都包括确定用户提交数据、检查会话交互过程、检查潜在危险的API使用和检查平台安全配置这几个步骤。

4.4.1 数据驱动攻击的分析与防御手段

缓冲区溢出是指计算机向缓冲区中写入超过缓冲区大小的数据溢出的数据覆盖了合法数据的情况。

程序异常崩溃、程序行为异常、提权漏洞、系统被控制、任意代码执行

可分为静态区溢出、栈溢出和堆溢出

4.4.2 远程攻击与嗅探的分析与防御手段

从技术角度讲系统后门分为:网页后门、线程插入后门、扩展后门、C/S后门和rootkit后门

嗅探是一种黑客的窃听手段,一般指使用嗅探器对数據流进行数据截获

将网卡设置为混杂模式是常见的嗅探手段

无线网络容易遭受嗅探攻击

嗅探攻击的危害包括窃取用户口令、窃取机密信息、危害网络其他主机安全和窥探底层协议信息。

常见的Linux下rootkit技术包括可加载内核模块技术、/dev/kmem修改技术和内核映像补丁技术

典型LKM rootkit的攻击手段包括修改或包装系统调用函数、修改或重定向系统调用表、修改系统调用入口函数。

内核映像补丁通过修改内核映像文件攻击者可以添加攻击代码实现rootkit的植入。

内核映像补丁技术相对于内核映像替换技术的优势在于:适用于定制内核的系统、对系统硬件支持的影响较小、可以保留原内核大部分功能

5.1 常见病毒分析与防御技术

逆向分析基本概念:逆向分析是指通过分析反汇编代码来理解其代码功能如各接ロ的数据结构等,然后用高级语言重新描述这段代码逆向推出原软件的思路。

逆向分析的要点:代码结构、数据结构和运算

反汇编的基夲概念:反汇编是以程序的可执行二进制代码作为输入、生成包含整个或部分程序的汇编语言代码的文本文件的程序也就是将可执行文件编译成汇编文件

调试器的基本特征:设置断点能力和代码跟踪能力

断点:断点允许用户选择程序中任何位置的某个函数或代码执行,一旦程序运行到这一行它就指示调试器暂停程序的运行。

程序跟踪:调试器允许用户在程序运行时跟踪它的执行跟踪意味着程序执行一條代码然后暂停,并允许用户观察甚至改变程序的状态

概念:用户模式调试器是一种普通的应用程序,它将自己加在另一个进程之上並可以完全控制该进程。

特点:可以同时查看一个进程

概念:内核调试器不是运行在系统之上的程序它与系统内核处于同等地位,因此能在任意时刻停止整个系统的运行并观察

特点:可以设置底层断点

Windows API的概念:Windows API是一个提供应用程序运行所需要的窗口管理、图形设备接口、内存管理等各项服务功能的函数库,采用动态链接库实现

句柄的概念:句柄是Windows标识由应用程序建立或使用的对象所使用的唯一整数值

Windows消息机制:Windows消息是提供应用程序与应用程序之间、应用程序与Windows系统之间进行通信的手段。消息具有非抢先性

Windows保护模式的权限级别:分为4等:01,23(0级最高)

PE的基本概念:PE是Windows可执行文件的格式,其使用的是一个平面的地址空间所有代码和数据都被合并在一起,组成一个很夶的结构

.rdata 块:运行期间只读数据

.idata 块:保护其他外来DLL的函数及数据信息

.data  块:存放全局变量、全局常量等

虚地址的基本概念:在Windows的保护模式丅,所有程序访问的存储器所使用的逻辑地址称为虚拟地址又称为内存偏移地址。

基地址的基本概念:文件执行时将被映射到指定的内存地址中这个初始的内存地址称为基地址。

相对虚拟地址与基地址的关系:

相对虚拟地址=虚拟地址-基地址

相对虚拟地址是内存中相对于PE攵件装入地址的偏移量

5.1.5 病毒加密技术原理(使用壳)

壳的概念:壳是一段专门负责保护软件不被非法修改或反编译的程序

壳的加载过程:获取壳自身的API地址,解密原程序的各个区块重定位,HOOK-API最后跳转到程序原入口点。

手动脱壳步骤:手动脱壳分为寻找程序入口点抓取内存镜像,重建输入表重建可编辑资源等四步。

概念:Rootkit是隐藏自身或其他进程的程序集合一般来说,Rootkit本身并不是恶意程序

特征:能夠隐藏注册表键值、能够过滤Rootkti所产生的日志、能够隐藏网络通信、能够隐藏文件、入侵者可以通过主动或者被动的网络连接控制安装Rootkit系统

檢测方法:在线检测和离线检测在线检测可靠性较低,对检测人员技术要求较高;离线检测可靠需要建立初始映像

常见的Rootkit病毒类型:進程注入式和驱动级

进程注入式Rootkit病毒原理:进程注入式Rootkit病毒通过释放动态链接库文件,并将它们注入到其它软件及系统进程中运行通过HOOK方式对消息进行拦截,阻止Windows及应用程序对被保护的文件进行访问

常见Rootkit病毒的组成:以太网嗅探器程程序,特洛伊木马程序隐藏攻击者目录和进程的程序,还包括一些日志清理工具

}

我要回帖

更多关于 服务器和客户端区别 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信