web漏洞合集描述和修复建议

一、SQL注入漏洞

漏洞描述:

当Web应用程序未对用户输入的数据进行足够的安全处理(如危险字符过滤或者语句过滤),而直接拼接SQL语句执行时,攻击者可以精心构造参数值,使服务器执行非预期的SQL语句并返回结果,造成数据库信息泄露。利用SQL注入漏洞,攻击者可获取数据库的增、删、改、查权限,甚至执行系统命令,上传后门文件等。

加固建议:

针对SQL注入漏洞,需要对网站所有参数中提交的数据进行过滤,禁止输入"'"、"xor"、"or"、"--"、"#"、"select"、"and"等特殊字符;所有的查询语句都使用数据库提供的参数化查询接口,SQL语句使用参数化处理后的数据作为输入,而不是将用户输入变量嵌入到SQL语句中;严格限制网站用户对数据库的操作权限,给此用户提供仅仅能够满足其工作的权限,从而最大限度的减少注入攻击对数据库的危害;避免网站显示SQL错误信息,比如类型错误、字段不匹配等,防止攻击者收集这些错误信息进行判断进而执行SQL注入攻击。

二、框架注入漏洞

漏洞描述:

攻击者有可能注入含有恶意内容的 frame 或 iframe 标签。如果用户不够谨慎,就有可能浏览该标签所对应的页面,但意识不到自己会离开原始站点而进入恶意的站点。之后,攻击者便可以诱导用户再次登录,然后获取其登录凭证。

加固建议:

建议过滤以下所有字符:| & ; $ % @ ' " \' \" <> () + CR LF , \。

三、文件上传漏洞

漏洞描述:

验证上传文件的程序没有对上传文件作任何过滤,导致可以上传任意文件到服务器,甚至是病毒文件和木马文件。

加固建议:

对于上传的附件,验证程序要做严格验证,使用服务器端校验,而不能仅用前端javascript验证。

1.建议严格限制上传文件类型和上传文件名及后缀。

2.检查文件头和文件内容,对上传文件目录的运行权限进行严格限制。

3.及时排查、删除服务器木马文件。

四、SSRF(服务端请求伪造)

漏洞描述:

很多web应用都提供了从其他的服务器上获取数据的功能。使用用户指定的URL,web应用可以获取图片,下载文件,读取文件内容等。这个功能如果被恶意使用,可以利用存在缺陷的web应用作为代理攻击远程和本地的服务器,探测内网信息甚至内网入侵。

加固建议:

SSRF形成的原因大都是由于服务端提供了从其他服务器应用获取数据的功能且没有对目标地址做过滤与限制。比如从指定URL地址获取网页文本内容,加载指定地址的图片,下载等等。建议对url参数值做严格的限制。

五、Unicode 转换漏洞

漏洞描述:

在Unicode在转换时,由于超长字节序列和错误格式引起子序列的安全问题。通过特殊的编码格式绕过程序对恶意字符的检测,可以用在SQL注入、XSS等。

加固建议:

1.升级Unicode版本至官方最新稳定版本http://www.unicode.org

2.Unicode转化UTF-8编码后,对转换后进行安全检测,对特殊字符过滤或进行安全编码后输出。

六、.idea工程目录信息泄露漏洞

漏洞描述:

.idea目录用来放置开发工程的一些配置文件,通常是.xml文件。其中workspace.xml里面存放一些开发者个人配置,比如开发路径、开发环境等。里面包含一些敏感信息。

加固建议:

生产环境中删除.idea目录及该目录下的文件,或配置网站服务器禁止访问.idea目录。

七、.git信息泄露

漏洞描述:

泄露网站敏感信息,攻击者可直接获取源码信息实施进一步攻击。

加固建议:

删除.git目录。

八、SVN源代码泄露

漏洞描述:

造成SVN源代码漏洞的主要原因是管理员操作不规范。在使用SVN管理本地代码过程中,会自动生成一个名为.svn的隐藏文件夹,其中包含重要的源代码信息。但一些网站管理员在发布代码时,不愿意使用‘导出’功能,而是直接复制代码文件夹到WEB服务器上,这就使.svn隐藏文件夹被暴露于外网环境,黑客可以借助其中包含的用于版本信息追踪的‘entries’文件,逐步摸清站点结构。

更严重的问题在于,SVN产生的.svn目录下还包含了以.svn-base结尾的源代码文件副本(低版本SVN具体路径为text-base目录,高版本SVN为pristine目录),如果服务器没有对此类后缀做解析,黑客则可以直接获得文件源代码。

加固建议:

针对SVN信息泄露漏洞,建议删除WEB目录里的SVN文件或限制访问.svn目录,并升级SVN软件至1.7或以上更高版本

九、Java代码反编译风险

漏洞描述:

可通过反编译工具获取java源代码,攻击者可获取源码信息执行更深入的渗透攻击。

加固建议:

1.隔离Java程序;

2.对Class文件进行加密;

3.代码混淆。

十、短信轰炸漏洞

漏洞描述:

短信轰炸是由于系统设计缺陷可无限制发送短信验证码给客户端,攻击者可利用该漏洞对任意手机号码进行短信轰炸,对公司造成不良影响和运行安全风险。

加固建议:

建议针对发送短信验证码接口加强权限控制,在服务端限制单位时间内发送短信次数。

把手机当web服务器,建自己的博客

这是我第二次分享关于ksweb的文章,经过这段时间试用,发觉这款软件还是非常实用的。这里再简述一下用ksweb在手机上搭建网页服务的基本流程(经

36w字!腾讯高工甩出MySQL速成手册,基础架构调优三飞

想要精通MySQL你就必须知道如何设计一个高可用可扩展的企业级MySQL数据库集群以及高性能高可用MySQL调优方法。但大多数人对于MySQL的

怎么做到服务器的安全

保证服务器的安全需要综合考虑多个方面。以下是一些常见的服务器安全措施:1. 选择安全的操作系统:选择安全的操作系统作为服务器的基础。常用的安全性

MySQL的156条设计规约

以下规范在大型互联网公司经过了充分的验证,尤其适用于并发量大、数据量大的业务场景。安全无小事,很多公司都曾经因为数据泄露导致用户损失惨痛,所以将

为什么网站提示SSL证书不受信任

在今天的互联网世界中,SSL证书对于保护用户隐私和确保数据传输安全方面带来了至关重要的作用。然而,有时用户在访问某些网站时可能会收到一个提示,显