首页 | 月光中的污点

月光中的污点

云在青天水在瓶

置顶内容

文章列表

2017-10-16

Web 漏洞分析与防御之点击劫持(三)

## 一、全称 点击劫持,顾名思义,用户点击某个按钮,却触发了不是用户真正意愿的事件。 ## 二、原理 用户在登陆 A 网站的系统后,被攻击者诱惑打开第三方网站,而第三方网站通过 iframe 引入了 A 网站的页面内容,用户在第三方网站中点击某个按钮(被装饰的按钮),实际上是点击了 A 网站的按钮。 ## 三、演示攻击 演示图如下: ![image](http://images.extlight.com/web-security-5.gif) <!-- more --> 用户登录论坛系
阅读全文
2017-10-15

使用 Ant 实现远程部署 Tomcat 项目

## 一、背景 笔者用 Hexo 搭建此博客系统,搭建过程非常方便。但是,有个麻烦的操作就是每次发布文章都需要重新 clean 和 generate。由于笔者使用的是云服务器,使用 Tomcat 运行博客系统,因此每次还得需要挑选新博文相关的文件远程上传到服务器上。为此,笔者通过 ant 实现自动部署项目。 ## 二、编码 ### 2.1 搭建环境 1) 安装 jdk 和 ant,并配置环境变量。 2) 下载 [catalina-ant.jar](http://www.java2s.com
阅读全文
2017-10-14

Maven 插件实现 Tomcat 热部署

## 一、前言 传统的部署项目方式:关闭 web 容器,将项目放入到 web 容器,启动 web 容器这个三个步骤。步骤不多,但是需要手动完成,频繁的操作总会让人心累。为了“解放双手”,实现自动化部署,本篇介绍通过使用 Maven 实现 Tomcat 的热部署。 ## 二、准备 > 本次测试使用一台ip为 192.168.2.25 的虚拟机,系统为 centos 7.2,tomcat 使用 8.5 版本。 ### 2.1 配置 tomcat 账号密码 为了能安全地连接远程的 tomcat
阅读全文
2017-10-13

CSS3 动画简单入门

## 一、基本介绍 ``` html transform # 变形 transition # 过渡 animation # 自定义动画 perspective # 指定透视距离,用于 3D 效果 ``` <!-- more --> ## 二、transform ### 2.1 移动(translate) 功能:让元素进行位移 语法: ``` html translateX(x) # X 轴(水平)方向位移 tran
阅读全文
2017-10-11

Web 漏洞分析与防御之 CSRF(二)

## 一、全称 跨站请求伪造(Cross-site Request Forgery) ## 二、原理 在用户登陆目标网站后,后端会返回用户登陆的凭证到前端(浏览器的 cookie)。攻击者诱使用户点击某个超链接,该超链接会发送恶意请求(会携带用户的 cookie),从而冒充用户完成业务请求(发帖、盗取用户资金等)。 <!-- more --> ## 三、攻击方式 笔者以网站的发帖功能为案例对 CSRF 攻击进行简单的讲解。 ### 3.1 提交 form 表单 下图为模拟攻击演示图
阅读全文
2017-10-09

Web 漏洞分析与防御之 XSS(一)

## 一、全称 跨站脚本攻击(Cross Site Scripting) ## 二、原理 通过在网站中的输入框写入 script 脚本或引入 script 文件,如果网站未过滤输入内容,将会解析该脚本。 如果脚本的功能是获取网站的 cookie,cookie 中又保留一些敏感信息,则后果有可能很严重。 ## 三、类型 * 反射型攻击:脚本当作 url 的参数进行注入执行 * 存储型攻击:脚本被存储到 DB 后,读取时被解析执行 <!-- more --> ## 四、注入点 ##
阅读全文
2017-10-08

原生 Javascript 编写俄罗斯方块

## 一、背景 在网上能查找到通过 Javascript 编写俄罗斯方块的资料,而且更牛的是只需要不到百行的代码就实现了,笔者非常佩服这些牛人。佩服之余,笔者也想尝试通过 Javascript 编写俄罗斯方块。在翻阅网上的资料和代码中,发现这些代码的可读性不高,因此不能让读者很好地去理解和学习代码。因此,笔者通过本文介绍自己如何通过面向对象的思想实现该游戏。 ## 二、项目介绍 ### 2.1 效果展示 ![](http://images.extlight.com/tetris-1.gif)
阅读全文
2017-10-07

MySQL 性能优化技巧

## 一、背景 最近公司项目添加新功能,上线后发现有些功能的列表查询时间很久。原因是新功能用到旧功能的接口,而这些旧接口的 SQL 查询语句关联5,6张表且编写不够规范,导致 MySQL 在执行 SQL 语句时索引失效,进行全表扫描。原本负责优化的同事有事请假回家,因此优化查询数据的问题落在笔者手中。笔者在查阅网上 SQL 优化的资料后成功解决了问题,在此从**全局角度**记录和总结 MySQL 查询优化相关技巧。 ## 二、优化思路 **数据查询慢,不代表 SQL 语句写法有问题。** 首
阅读全文
2017-10-02

Centos 7.2 安装和卸载 MySQL 5.7

![](http://images.extlight.com/mysql-1.jpg) ## 一、背景 闲暇之余在虚拟机安装了 Centos 7.2 系统,按照 [《简单安装MySQL(RPM方式)》](http://www.cnblogs.com/moonlightL/p/7265595.html) 这篇文章安装 MySQL ,发现由于包依赖的问题安装失败,于是索性在官网查询相关文档进行 MySQL 的安装。 ## 二、安装 ### 2.1 下载 本次安装选择 ***[Installi
阅读全文
2017-09-27

Elasticsearch 基础入门

![](http://images.extlight.com/elasticSearch-15.jpg) ## 一、什么是 ElasticSearch ElasticSearch是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful web 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
阅读全文