BLCL的博客小馆

首页

关于

归档

函数式JavaScript源码

30s 源码刨析系列之函数篇

由浅入深、逐个击破 30SecondsOfCode 中函数系列所有源码片段,带你领略源码之美。前言本系列是对名库 30SecondsOfCode 的深入刨析。本篇是其中的函数篇,可以在极短的时间内培养你的函数式思维。内容根据源码的难易等级进行排版,目录如下:新手级普通级专家级正文新手级checkProp12345678910111213141516171819const checkProp = (predicate, prop) => obj => !!predicate(obj[prop]);const lengthIs4 = checkProp(l => l === 4, 'length');lengthIs4([]); // falselengthIs4([1, 2, 3, 4])..

更多
loading..
后端译文Nodejs

手撸一个静态文档生成器[译]

目前有很多优秀的静态文档生成器,它们的工作原理比你想象的要简单得多。前言原文: Build a static site generator in 40 lines with Node.js作者: Douglas Matoso翻译许可: image img 为什么要造这个轮子当我计划建立个人网站时,我的需求很简单,做一个只有几个页面的网站,放置一些关于自己的信息,我的技能和项目就够了。毫无疑问,它应该是纯静态的(不需要后端服务,可托管在任何地方)。我曾经使用过Jekyll, Hugo和Hexo这些知名的静态文档生成器,但我认为它们有太多的功能,我不想为我的网站增加这么多的复杂性。所以我觉得,针对我的需求,一个简单的静态文档生成器就可以满足。嗯,手动构建一个简单的生成器,应该不会那么难。正文需求分析..

更多
loading..

XSS GAME

过年期间玩了一下国外的一个 XSS GAME,收获颇丰,记录一下学习过程。本人对于 JavaScript 以及前端的理解不深,水平也不高,如果文章有疏漏之处,还请师傅们斧正。Introduction所有题目的目标都是实现alert(1337)即可,有着不同的难度Area 51<!-- Challenge --> <div id="pwnme"></div> <script> var input = (new URL(location).searchParams.get('debug') || '').replace(/[\!\-\/\#\&\;\%]/g, '_'); var template = document.createEl..

更多
loading..
TECHNOLOGYWindows云桌面阿里云

使用阿里云 ECS 搭建廉价的高性能云桌面

要想读懂本文,你需要:了解阿里云等云服务的基本 WEB 界面操作;了解 Windows 操作系统的中阶操作;了解基础的软件开发术语。前言本文面向的是需要使用高性能计算设备,但是身边只有低性能PC机的群体。最近由于 NCP 疫情,出不了门,返回不了工作地,想必不少人的高性能计算设备(好电脑)没带回家,但是,肯定也有人跟我一样,受不了笔记本电脑的龟速。我的配置需求是,能够流畅运行安装多个插件的 VSCode、能够同时打开数十个 Firefox 标签页、能够快速完成 node 项目构建。但是我身边只有一台五年前的 intel NUC (i3-4010U, 4GB RAM)。在详细了解了各大云服务商的云计算平台后,个人排除了华为云(弹性计算服务价格较高、云桌面售罄)、腾讯云(云计算服务类别过少)、天翼云(云桌面需..

更多
loading..
博客写作

如何优雅地写博客

分享我的写作经历。前言本文将以我个人写作方式的演变为主线,分三个不同的阶段讲述。请注意:文章的重点不在于 静态文档生成器,写作平台的选择。正文安逸的 PC 阶段初识 Hexo在大二刚开学的时候,我便萌生了建立个人博客的念头。当查阅很多资料后,发现了一款名叫Hexo的静态文档生成器广受好评,网上有关的文章也非常多,于是在大势所趋下,我走上了这漫长的建站之路。这里闲话两句:刚开始,我把大量的时间都用在网页交互上,现在回头一想,真是搞错了重点。对于一个博客来说,内容才是最重要的。CI 的增持在最初的写作流程很繁琐,主要分为下面几个步骤:调用Hexo命令新建文章启动Hexo的本地服务器编写好文章在本地服务器上检查是否有遗漏利用Hexo生成出站点网页将这些网页push到Github Page上很容易看出,在PC阶段..

更多
loading..
随笔Apple

Apple 一家建筑公司

我与墙的故事。前言本文只从技术发展角度出发,资本层面不允置评。正文筑墙的公司如果一家公司有自研的操作系统,有完善的设备生态,并且还拥有一大批成千上万的粉丝用户,那么很可能会发生一个现象:墙的出现。我说的墙指的是,如果你想在我的圈子牟利,你必须遵守我的规矩,必须用我提供的工具,且必须维护我的利益。这样的一堵墙不仅束缚了开发者,无形中还阻碍了它自身的发展。Apple,正是一家喜欢筑墙的公司。我的经历这两天,我针对网站在平板上的显示问题,特地去调整了一下Tomotoes的样式。结果便陷入了与墙的对抗之中。第一堵墙我遇到的第一堵墙是Apple专有的浏览器内核。因为Tomototes在平板下存在层叠渲染 Bug,我单纯地以为只是Safari的问题,结果当下载了好多个浏览器之后,惊奇地发现:网站显示的问题居然一致。不..

更多
loading..

36c3 Web 学习记录

签到选手不请自来,经过了好几天的琢磨,终于把这次比赛的题目都弄得差不多了,这里记录一下本次比赛 Web 题目的解法。如果师傅们有更好更有意思的解法,欢迎多多与菜鸡交流。非常感谢 @rebirth @wonderkun @wupco 等师傅在我学习本次比赛赛题时候不厌其烦地指导我。File MagicianDifficulty estimate: easySolved:133/321Points: round(1000 · min(1, 10 / (9 + [133 solves]))) = 70 pointsDescription:Finally (again), a minimalistic, open-source file hosting solution.Download:file magicia..

更多
loading..

Help you understand HTTP Smuggling in one article

This year’s Defcon 27 and Black Hat both mentioned HTTP DESYNC ATTACKS. I wanted to take the time to study it a few months ago, but I haven’t had much time. I recently took a look at it.Sorry for my bad English. If you can read Chinese, I recommend you to read this in Chinese. The Chinese part is here 一篇文章带你读懂 HTTP Smuggling 攻击.When I researched the other..

更多
loading..

一篇文章带你读懂 HTTP Smuggling 攻击

今年的 Defcon 27 与 Black Hat 上都有提到 HTTP DESYNC ATTACKS ,前几个月就想抽时间来研究研究了,奈何一直没什么时间,最近抽时间专门看了一下。在前些天研究的时候,恰巧 [emailprotected]知道创宇404实验室 也发表了协议层的攻击——HTTP请求走私文章,也带给了自己更多的启示,师傅的文章写的非常的不错,墙裂建议阅读,这里我结合师傅的文章跟自己的一些理解进行一些整理,本文亦可理解为那篇文章的补充与更详细的描述。整篇文章由于自己时间问题,前前后后拖了两个月左右,中间时间间隔可能比较久,所以文章会有比较多的疏漏,还请师傅们看后直接指出斧正。写作不易,还请师傅们多多担待。最近也一直在关注这方面的安全问题,欢迎一起学习讨论: ) 联系方式:emVkZHl1Lmx..

更多
loading..

XCTF Final NOXSS Write Up

这是本次比赛做起来最有跪感的一题了,当时比赛的时候怎么都弄不出来…赛后问了一下,主要还是差了一篇文章 Wykradanie danych w świetnym stylu – czyli jak wykorzystać CSS-y do ataków na webaplikację,这个标题是个波兰语,中文翻译过来就是使用 CSS 攻击 Web 应用程序,从文章内容也看到了 RPO 的攻击引述,也正是之前 noxss 2017 的解法。[TOC]Preparation所做的实验测试均在 Chrome 78.0.3904.97 版本上,Firefox 有一些场景未测试成功。我们需要的有 fontforge / nodejs / npm|yarn ,安装 fontforge on ubuntu,安装 node..

更多
1727374757678