正在查看前端下的文章

PurgeCSS:自动移除未使用的CSS

PurgeCSS简介

PurgeCSS 是一个用来删除未使用的 CSS 代码的工具。可以将它作为你的开发流程中的一个环节。

阅读更多

Cheerio: 快, 灵活, 轻, 特别为服务器端设计的 jQuery 核心实现

1
2
3
4
5
6
7
8
const cheerio = require('cheerio')
const $ = cheerio.load('<h2 class="title">Hello world</h2>')

$('h2.title').text('Hello there!')
$('h2').addClass('welcome')

$.html()
//=> <html><head></head><body><h2 class="title welcome">Hello there!</h2></body></html>

阅读更多

一步步学习Webassembly逆向分析方法

在强网杯2019线上赛的题目中,有一道名为Webassembly的wasm类型题,作为CTF新人,完全没有接触过wasm汇编语言,对该类型无从下手,查阅相关资料后才算入门,现将Webassembly的静态分析和动态调试的方法及过程整理如下,希望能够对于CTF萌新带来帮助,同时如有大佬光顾发现错误,欢迎拍砖予以斧正。

处理wasm文件

在逆向wasm的过程中,由于其执行的是以栈式机器定义的虚拟机的二进制指令格式,因此直接进行逆向分析难度较大,需要对wasm文件进行处理,增强可操作性,提高逆向的效率。在此参考了《一种Wasm逆向静态分析方法》一文,主要利用了WABT(The WebAssembly Binary Toolkit)工具箱实现。

阅读更多

一种Wasm逆向静态分析方法

前言

WebAssembly(缩写为Wasm)是基于堆栈的虚拟机的二进制指令格式。Wasm被设计为可编程C/ C ++ /Rust等高级语言的可移植目标,可在Web上部署客户端和服务器应用程序。

随着wasm的逐渐流行,在最近的ctf比赛中出现了很多wasm类型的逆向题。没接触过wasm的人会比较苦手。即使对wasm有一定的了解,由于wasm的汇编语言可读性十分差,逆向起来会非常的痛苦。本文以刚刚结束的defconquals中的一道题和其他一些题为例,介绍一种wasm的优化分析方法,初步探究wasm逆向。

阅读更多

用idawasm IDA Pro逆向WebAssembly模块

简介

本文介绍idawasm,为WebAssembly提供加载器和处理器的IDA Pro插件。Idawasm可以允许在所有支持IDA Pro的操作系统上,下载地址为https://www.github.com/fireeye/idawasm

去年的Flare-On challenge大赛上出现了一个新的文件格式:WebAssembly (“wasm”) 模块。因此,需要逆向基于WebAssembly栈的虚拟机中二进制文件中包括的关键逻辑。那么首先就要了解一下wasm:

阅读更多

WebAssembly实践

前言

JavaScript 最初被设计出来的时候,作者一定想不到 Web 会发展到今天的规模。随着前端技术发展,浏览器端应用越来越复杂,JavaScript的性能问题逐渐突出。Chrome的 V8 引擎对 JavaScript 预编译速度做了极大提升,但这还不够。因为 JavaScript的动态类型特性,始终无法回避类型推断。要进一步提高 Web端应用的性能,开发者向其它方向做出了努力,那就是向强类型靠近,彻底避免类型推断。前有Mozilla 的 asm.js,后有 Google 的NaCl,今有四大浏览器(Chrome/Firefox/Edge/Safari)厂商联手推出的 WebAssembly。自2017年11月四大浏览器开始全面支持 WebAssembly以来,WebAssembly 获得了广泛应用和更多关注。酷家乐几何中间件团队对WebAssembly 进行了一些实验,得到一些很有实践意义的结论。

本文重点讨论如何实践,过于细节的机制和原理等内容不在本文讨论范围内。如想了解更多细节,请关注几何中间件团队的WebAssembly 后续文章,或查阅文末给出的参考文献。

阅读更多

JavaScript之再学习

概览

JavaScript 是一种面向对象的动态语言,它包含类型、运算符、标准内置( built-in)对象和方法。它的语法来源于 Java 和 C,所以这两种语言的许多语法特性同样适用于 JavaScript。需要注意的一个主要区别是 JavaScript 不支持类,类这一概念在 JavaScript 通过对象原型(object prototype)得到延续。另一个主要区别是 JavaScript 中的函数也是对象,JavaScript 允许函数在包含可执行代码的同时,能像其他对象一样被传递。

阅读更多

轻量级滚动动画JavaScript库aos.js

一、简介

aos.js是一款效果超赞的页面滚动的 JavaScript 动画库插件。该动画库可以在页面滚动时提供28种不同的元素动画效果,以及多种easing效果。在页面往回滚动时,元素会恢复到原来的状态。

阅读更多

全功能JavaScript灯箱画廊插件lightgallery.js

一、简介

阅读更多

Hexo博客主题之hexo-theme-matery的介绍

阅读更多