目录
回复内容:
首页 后端开发 php教程 嵌入app的h5页面如何提高安全性

嵌入app的h5页面如何提高安全性

Aug 04, 2016 am 09:21 AM
html5 mysql php 安全性

万一被抓包,或更改app传送的数据,如何提高安全性,防xss攻击防sql注入之类的。

回复内容:

万一被抓包,或更改app传送的数据,如何提高安全性,防xss攻击防sql注入之类的。

这和你app 嵌入不嵌入html5 没有半毛线关系
你使用api接口一样存爱xss和sql注入
(一) 如果服务器手攻击了,如何分析,以及解决方案?
1 首先查看windows/linux系统日志,判断是否黑客是否通过攻击已经获取服务器权限,因为如果服务器已经getshell这个时候你修复漏洞还是无济于事的。

Mysql 注入分析解决
1 分析查找漏洞方法
(在程序入口写入日志文件)分析apache/nginx/iis 日志文件即所有POST和GET请求以及参数,查看提交参数是否存在mysql关键字
(整个文件搜索mysql关键字union/select/and/from/sleep),如果存在,再查找该请求地址对应的php文件以及对应的php代码和mysql执行语句。然后查找整个web目录文件夹和文本的创建和修改时间,检查是否存在后门。

2 防范
1 在程序加入全局sql关键字过滤
2 开启PHP单引号转义(修改php.ini magic_quotes_gpc)。
3 apache/nginx/iis开启服务日志,mysql慢查询日志,程序入口记录请求日志
4 服务器安装安全狗等web应用安全软件
5 数据库链接方式使用UTF-8 防止gbk双字节注入
6 增强mysql密码的复杂度,禁止mysql外链,更改默认端口号
7 给程序mysql账号做降权,只给普通的增删查改权限。禁止给文件操作权限

XSS跨站攻击 解决方案
1 有文本写入的地方运用htmlspecialchars 转义
2 利用SSL禁止加载引用外部js
3 设置httponly 禁止获取cookie
4 已上是确保没有注入的情况下(如果存在注入,是可以利用16进制绕过htmlspecialchars 达到xss攻击的效果)
5 后台和前台最好使用2套路由规则不一样的程序,后台关键操作(备份数据库)应该设置二级密码,和增加请求参数的复杂度,防止CSRF

PHP 安全
1 上传文件的地方增加后缀过滤,过滤时不要做“逻辑非”判断。
2 禁止上传后缀php,htaccess的文件,不要使用客户端提交过来的数据获取文件名后缀,应该用程序做添加后缀以及随机文件名
3 统一路由,限制越权访问
4 PHP降权处理,web目录限制创建文件夹和文本(程序所需要的文件夹除外,一般都会有个缓存目录需要可写权限)
5 对IIS/nginx 文件解析漏洞利用做过滤
6 找回密码使用手机验证码找回,邮箱找回应该用额外的服务器。(防止通过找回密码的功能得到真实ip)。最后发送给用户邮箱的重置密码的链接需要有个复杂的加密参数
7 用户登录系统应该做单一登录功能,如果用户已登录,其他人再次登录是应该给与提示。
8 webroot目录对外防问的只能有一个index.php(入口文件),其它所有目录,禁止外部防问,所有 资源(上传)文件,在nginx 加上防盗链功能

1 安全常识
1 web应用使用站库分离,更改环境web目录的默认路径
2 当使用集成环境时,安装完成后应该删掉php探针,以及phpmyadmin,phpinfo(探针可以查看你的web路径,phpmyadmin可以暴力破解)
2 用户密码最好采用 密码加盐 之后的md5值
3 用户登陆的地方增加验证码,怎加错误次数限制,防止暴力破解
4 使用cdn加速隐藏真实ip
5 用户登陆的时候,不要传递明文账号密码,防止C端嗅探,通过ARP欺骗获取用户以及管理员明文账号密码
6 禁用php系统命令行数exec,system 等
7 服务器上装安全狗等安全防护软件
8 web目录 禁止存放.rar,zip文件

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1665
14
CakePHP 教程
1424
52
Laravel 教程
1322
25
PHP教程
1270
29
C# 教程
1249
24
MySQL:数据库,PHPMYADMIN:管理接口 MySQL:数据库,PHPMYADMIN:管理接口 Apr 29, 2025 am 12:44 AM

MySQL和phpMyAdmin可以通过以下步骤进行有效管理:1.创建和删除数据库:在phpMyAdmin中点击几下即可完成。2.管理表:可以创建表、修改结构、添加索引。3.数据操作:支持插入、更新、删除数据和执行SQL查询。4.导入导出数据:支持SQL、CSV、XML等格式。5.优化和监控:使用OPTIMIZETABLE命令优化表,并利用查询分析器和监控工具解决性能问题。

作曲家:通过AI的帮助开发PHP 作曲家:通过AI的帮助开发PHP Apr 29, 2025 am 12:27 AM

AI可以帮助优化Composer的使用,具体方法包括:1.依赖管理优化:AI分析依赖关系,建议最佳版本组合,减少冲突。2.自动化代码生成:AI生成符合最佳实践的composer.json文件。3.代码质量提升:AI检测潜在问题,提供优化建议,提高代码质量。这些方法通过机器学习和自然语言处理技术实现,帮助开发者提高效率和代码质量。

怎样卸载MySQL并清理残留文件 怎样卸载MySQL并清理残留文件 Apr 29, 2025 pm 04:03 PM

要安全、彻底地卸载MySQL并清理所有残留文件,需遵循以下步骤:1.停止MySQL服务;2.卸载MySQL软件包;3.清理配置文件和数据目录;4.验证卸载是否彻底。

session_start()函数的意义是什么? session_start()函数的意义是什么? May 03, 2025 am 12:18 AM

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

给MySQL表添加和删除字段的操作步骤 给MySQL表添加和删除字段的操作步骤 Apr 29, 2025 pm 04:15 PM

在MySQL中,添加字段使用ALTERTABLEtable_nameADDCOLUMNnew_columnVARCHAR(255)AFTERexisting_column,删除字段使用ALTERTABLEtable_nameDROPCOLUMNcolumn_to_drop。添加字段时,需指定位置以优化查询性能和数据结构;删除字段前需确认操作不可逆;使用在线DDL、备份数据、测试环境和低负载时间段修改表结构是性能优化和最佳实践。

MySQL批量插入数据的高效方法 MySQL批量插入数据的高效方法 Apr 29, 2025 pm 04:18 PM

MySQL批量插入数据的高效方法包括:1.使用INSERTINTO...VALUES语法,2.利用LOADDATAINFILE命令,3.使用事务处理,4.调整批量大小,5.禁用索引,6.使用INSERTIGNORE或INSERT...ONDUPLICATEKEYUPDATE,这些方法能显着提升数据库操作效率。

如何使用MySQL的函数进行数据处理和计算 如何使用MySQL的函数进行数据处理和计算 Apr 29, 2025 pm 04:21 PM

MySQL函数可用于数据处理和计算。1.基本用法包括字符串处理、日期计算和数学运算。2.高级用法涉及结合多个函数实现复杂操作。3.性能优化需避免在WHERE子句中使用函数,并使用GROUPBY和临时表。

MySQL的字符集和排序规则如何配置 MySQL的字符集和排序规则如何配置 Apr 29, 2025 pm 04:06 PM

在MySQL中配置字符集和排序规则的方法包括:1.设置服务器级别的字符集和排序规则:SETNAMES'utf8';SETCHARACTERSETutf8;SETCOLLATION_CONNECTION='utf8_general_ci';2.创建使用特定字符集和排序规则的数据库:CREATEDATABASEexample_dbCHARACTERSETutf8COLLATEutf8_general_ci;3.创建表时指定字符集和排序规则:CREATETABLEexample_table(idINT

See all articles