欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

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

程序员文章站 2022-04-18 17:38:51
...
万一被抓包,或更改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文件