分类: 前端
点击劫持,顾名思义,用户点击某个按钮,却触发了不是用户真正意愿的事件。 用户在登陆 A 网站的系统后,被攻击者诱惑打开第三方网站,而第三方网站通过 iframe 引入了 A 网站的页面内容,用户在第三方网站中点击某个按钮(被装饰的按钮),实际上是点击了 A 网站的按钮。 演示图如下:
2017-10-16
29761 1
分类: 后端
笔者用 Hexo 搭建此博客系统,搭建过程非常方便。但是,有个麻烦的操作就是每次发布文章都需要重新 clean 和 generate。由于笔者使用的是云服务器,使用 Tomcat 运行博客系统,因此每次还得需要挑选新博文相关的文件远程上传到服务器上。为此,笔者通过 ant 实现自动部署项目。 安装 jdk 和 ant,并配置环境变量。 下载 catalina-ant.jar ,并将其添加到 CLASSPATH 中。如下图:
2017-10-15
26423 1
分类: 后端
传统的部署项目方式:关闭 web 容器,将项目放入到 web 容器,启动 web 容器这个三个步骤。步骤不多,但是需要手动完成,频繁的操作总会让人心累。为了“解放双手”,实现自动化部署,本篇介绍通过使用 Maven 实现 Tomcat 的热部署。 本次测试使用一台ip为 192.168.2.25 的虚拟机,系统为 centos 7.2,tomcat 使用 8.5 版本。 为了能安全地连接远程的 tomcat 服务器,我们需要在 tomcat 上配置账号和密码。
2017-10-14
29231 0
分类: 前端
跨站请求伪造(Cross-site Request Forgery) 在用户登陆目标网站后,后端会返回用户登陆的凭证到前端(浏览器的 cookie)。攻击者诱使用户点击某个超链接,该超链接会发送恶意请求(会携带用户的 cookie),从而冒充用户完成业务请求(发帖、盗取用户资金等)。 笔者以网站的发帖功能为案例对 CSRF 攻击进行简单的讲解。
2017-10-11
28655 0
分类: 前端
跨站脚本攻击(Cross Site Scripting) 通过在网站中的输入框写入 script 脚本或引入 script 文件,如果网站未过滤输入内容,将会解析该脚本。 如果脚本的功能是获取网站的 cookie,cookie 中又保留一些敏感信息,则后果有可能很严重。
2017-10-09
26634 0
分类: 前端
在网上能查找到通过 Javascript 编写俄罗斯方块的资料,而且更牛的是只需要不到百行的代码就实现了,笔者非常佩服这些牛人。佩服之余,笔者也想尝试通过 Javascript 编写俄罗斯方块。在翻阅网上的资料和代码中,发现这些代码的可读性不高,因此不能让读者很好地去理解和学习代码。因此,笔者通过本文介绍自己如何通过面向对象的思想实现该游戏。 地图:大小已经通过 css 样式确定(300px x 600px)。
2017-10-08
24234 0
分类: 数据库
最近公司项目添加新功能,上线后发现有些功能的列表查询时间很久。原因是新功能用到旧功能的接口,而这些旧接口的 SQL 查询语句关联5,6张表且编写不够规范,导致 MySQL 在执行 SQL 语句时索引失效,进行全表扫描。原本负责优化的同事有事请假回家,因此优化查询数据的问题落在笔者手中。笔者在查阅网上 SQL 优化的资料后成功解决了问题,在此从全局角度记录和总结 MySQL 查询优化相关技巧。 数据查询慢,不代表 SQL 语句写法有问题。 首先,我们需要找到问题的源头才能“对症下药”。笔者用一张流程图展示 MySQL 优化的思路:
2017-10-07
42795 1
分类: 数据库
闲暇之余在虚拟机安装了 Centos 7.2 系统,按照 《简单安装MySQL(RPM方式)》 这篇文章安装 MySQL ,发现由于包依赖的问题安装失败,于是索性在官网查询相关文档进行 MySQL 的安装。 本次安装选择 Installing MySQL on Linux Using the MySQL Yum Repository 方式
2017-10-02
29864 0