如何安全地为 Homebrew 替换中国大陆镜像源

关于 Homebrew 在国内换源的文章一搜一大把,洒家并不想复制镜像的帮助页面再制造一篇,而是想讨论一下如何在不降低安全性的情况下使用镜像源。 注:“不降低”指的是换源后,安全性和不换源相同。原始源仓库被上传恶意代码、SHA-256 hash 碰撞攻击等场景则不在本文讨论范围之内。 概述 “Homebrew”的意思是家酿啤酒。毕竟是家酿的,Homebrew 还是比不上 APT 这种正规的包管理器,很多设计相当凑合。它有以下特点: Homebrew 本身和它的各个索引仓库(tap)是通过 Git 管理的 没有 GPG...

Comments

使用 Pelican 搭建静态博客的经验和细节

在迁移到这里之前,洒家使用了 3 年博客园平台(链接)。个人认为博客园、CSDN 这种博客网站有很多缺点,例如不能真正掌握自己的数据,不方便定制,环境和氛围不好。此外,还经常有各种爬虫网站不加署名地转载我的文章(感谢百度,盗版排名高于正版)。2017 年 4 月,洒家终于忙中偷闲,改用 Pelican 静态网站生成器,把博客独立出来,迁移到了 GitHub Pages。希望这个博客可以见证一只菜鸟小白的成长。 这篇文章主要讨论我自己搭建博客的一些经验和细节,不讨论关于...

Comments

Arch 系 Linux pip 安装到 /usr/local 的方法

在 Linux 系统目录结构中,由系统包管理程序管理的文件一般存放在 /、/usr 中,/usr/local 则存放不受系统包管理程序管理的文件,例如通过 make install 手动安装的程序、使用 pip 等其他程序安装的程序。Debian/Ubuntu 等发行版对 python 包进行了一定的修改,由 pip 安装的包默认会安装在 /usr/local 中。而 Arch/Manjaro 等发行版保持了上游的“原汁原味”,对上游的代码做了最小的修改,因此保留了 Python 默认的行为。在这些发行版中,pip 安装的包会安装在...

Comments

使用主动探测方法识别 Shadowsocks 服务

Anyone, from the most clueless amateur to the best cryptographer, can create an algorithm that he himself can't break. (Schneier's law) 近期(2020-2-12),奇虎 360 核心安全团队(Qihoo 360 Core Security)公开了针对 Shadowsocks 的主动探测研究报告。洒家去年也研究过这个问题,于是随便搞篇文章,分析一波有关 Shadowsocks...

Comments

Patch docker-compose 防止启动时卡住

本文主要解决 docker-compose 命令启动时,随机卡住几秒至几分钟才有反应的问题。本文主要复制/翻译洒家在这个 issue 中的评论。 TL;DR 如果你只在 Linux 本机使用 docker-compose,不使用 docker-compose 的远程功能(例如 -H 参数,DOCKER_HOST 环境变量),按下面方式 patch 1 行代码即可解决问题。 首先定位 docker-compose 使用的 docker 库文件位置。根据 Python 的版本,一般位于...

Comments

从 V2Ray 客户端看本地 HTTP 服务安全

这是洒家半年前研究的,没啥重要的原创内容,一直懒得写,前几天想起来,于是搞篇文章瞎扯一番。本文主要以 V2RayX、V2RayU 等图形化客户端为例,研究本地 HTTP 服务的未授权访问漏洞,及其利用方法。 漏洞及其背景 V2RayX 客户端配置文件未授权访问漏洞 V2RayX 是一种 macOS 版 V2Ray 客户端,目前最新版本为 v1.5.1,发布于 2019-2-14。 首先我们要知道,所有的 V2Ray GUI 客户端实际上都是对 V2Ray Core 的一个包装,负责把用户设置转换为配置文件,并管理 v2ray...

Comments

如何用树莓派制作智能物联网闹钟

洒家去年买了一台树莓派 3B,买来之后装上系统玩了几天,就一直挂在墙上吃灰,不知道拿它干什么。终于有一天,洒家突发奇想,不如拿以前玩剩下的电子元件做一个智能闹钟。 一开始洒家用的是 1602 液晶屏。它只能显示 2 行字,每行 16 个字符,而且只能显示英文、数字等字符,无法显示汉字。成品除了基本的显示时间日期功能外,还有闹钟、天气预报等功能。电路焊在了洞洞板上,然后用螺丝和铜柱随便固定在旧光盘上: [图片] 这个版本有一个严重缺点,不能用代码控制背光,夜里睡觉时感觉很刺眼。洒家最近升级了一波硬件,买了一块 12864...

Comments

如何打造北半球第二好用的语言包

洒家好久不写博客,最近从垃圾堆里翻出博客代码,修整一番。语音包是很久之前做出来的,最近没有队友不怎么打游戏,这里只是写篇娱乐文章刷一下存在感。 介绍 用到的设备和部分软件 运行游戏(CS:GO)的电脑(Windows) 控制放语音的电脑(屏幕越大越好,平板,手机也能凑合用) Web 服务器(可以用虚拟机,最好在本地或局域网) 浏览器 Voicemeeter 虚拟声卡等软件 Matlab 效果展示...

Comments

Tokyo Westerns 2017 Web

最近洒家参加了 Tokyo Westerns CTF 2017,做了几道 Web 题。洒家去年也参加了这个 CTF,但是今年情况发生了很多变化。今年的 CTF 采用了动态分数制,Web 题目数量减少,除了热身题只有两道,难度也都增加了很多。而洒家前一段时间在忙考研/保研等一堆破事,长时间没有关注信息安全,连 Web 题的初步操作都不熟练了。 这里已经有了写得相当不错的 write up,因此以下内容写得简略一些,详情可以看这些 write up。 Super Secure Storage...

Comments

TCTF 2017 Final 部分 Web 题 Writeup

近期洒家参加了 TCTF 决赛 RisingStar CTF,其中有几道 Web 题还是很有意思的,在此做一下详细的记录。 关于比赛 说起来这还是洒家第一次坐飞机,飞机上景色不错,起飞和降落的时候加速度给人很爽的感觉。然而飞到深圳,一出地铁洒家就慌了,真不是埋汰他,这城市是真滴很热。不过这里也有好的地方,每个建筑物里面肯定有空调。所以洒家这几天除了比赛和参观都不出门,什么景点都没看。 赛场上见识了很多国内和国际的大佬,后者有 Shellphish、LC⚡BC 等,以及有女装大佬的 Binja。 [图片] 比赛中洒家主要负责 Web...

Comments

DDCTF 2017 两道 Web 题 Writeup

上个月洒家参加了 DDCTF 玩了几把,其中有几道 Web 题还是很有意思的,在此做一下详细的记录。 绕过 CSP 的 XSS 分析 这题出得还是有点意思的。题目是一个 Message Board,可以给 admin 发送 message。发送完毕后提示 Success! wait for admin reading your message.,并不知道发送到哪了。同时题目设置了 CSP: Content-Security-Policy: default-src 'self'; script-src 'self' ...

Comments

微信运动刷步数 通杀 Android iOS

理论上此方案支持所有计步软件,支持所有操作系统和型号的设备(笑)。 方案 需要的材料 减速步进电机 单片机 移动电源 铅笔、绳子、胶带、纸盒 操作步骤 把手机放到盒子里 接通电源 开始刷步 效果 [视频]

Comments

BCTF 2017 Web 题目总结

毕竟还是图样图森破,这次比赛最后我们只做出来了一部分题目,很可惜火日菊苣出的两道题目都没做出来。 [图片] Baby Sqli/ Kitty Shop/ Reverse: Flag Shop 这也是一套略显莫名其妙的题目。 Baby Sqli 这次比赛大有 Web、Reverse、Crypto 结合的意思? 首先是 Baby Sqli,这题首先有一个登录页面,有 WAF,username 没有过滤 '。测了一堆 Payload 发现 username 是 admin'#,password 随意,可以成功登录。...

Comments

SQL 盲注逐位获取数据

在某些 SQL 盲注情况下,不能用常见的二分法爆库。这里是一种按 bit 爆破每一个字符的方法。我在 0CTF 2017 想到了这种方法,然后在 BCTF 2017 找到 Payload 之后改了代码就解出了题目。当然,这种思路毕竟还是 too simple,早已经有人想到了这种方法。 0CTF 2017 Web Temmo's Tiny Shop 以下内容摘自我的旧博客,略有删改 洒家参加了 0CTF 2017,做了一些题目。赛后过了好几天,看网上已经有了一些写得不错的 Writeup,这里就写一写洒家的一些不一样的思路。...

Comments

WPScan 初体验

近日在朋友圈看某位 dalao 在 Ubuntu 上安装 WPScan 花了一个小时,于是洒家随手在 Kali Linux 上输入了 wpscan,发现 Kali 里面已经装好了。于是决定玩两把 WPScan。 WordPress 博客平台代码量多,也曾经爆出过大量漏洞。遇到 WordPress 先用傻瓜式工具扫描一下是一个不错的开始。 安装靶机 洒家使用了 wpscanteam 官方出品的 Docker 镜像 wpscanteam/vulnerablewordpress,pull 完毕后运行,转发 80 和 3306 端口。...

Comments

几种语言的 CGI 编程

为了了解 PHP、JSP、ASP 出现之前人们写网站的方法,洒家研究了一波 CGI,使用 C、Python、batch、shell script 语言写了几个简单的网页。 CGI 即通用网关接口,指 Web 服务器调用编程语言编写的程序的一个接口。洒家用的是 Apache 的 CGI,QUERY_STRING、REMOTE_ADDR、REQUEST_URI 等参数是通过环境变量传递给 CGI 程序的,请求主体(POST 数据)作为 CGI 程序的标准输入(stdin),而 CGI 程序的标准输出(stdout)作为 HTTP...

Comments

博客园站内短消息 XSS

洒家最近在博客园后台发送站内信(短消息)的时候发现了一个毫无技术含量的存储型 XSS,现已通知管理员且已修复。 注:这在以前是要提交乌云的节奏啊,可惜乌云倒闭了,那就直接私信管理员吧。 声明 本人所做以下所有实验均使用本人的账号,未攻击和窃取他人信息。 本文提供的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本人不承担任何法律及连带责任。 以前的文章写得真叫一个乱。(2020 年 10 月 27 日迁移老博客时注) 第一波 XSS 漏洞 发现漏洞 博客园默认不自带...

Comments

使用 nc 分析 HTTP 代理协议

最近洒家搞了一个代理服务器(参见折腾阿里云笔记)。以前 ƒɋ 的时候代理服务器都是开在 127.0.0.1,浏览器到代理服务器之间不会有中间人监听问题。现在代理服务器不在本机,洒家就突然想到了这些问题:HTTP 协议的代理服务器没有 HTTPS 站点的证书,无法和代理服务器建立 HTTPS 连接。但是浏览器成功地建立了 HTTPS 连接,代理服务器应该是一种透明代理的角色,那么 HTTP 协议是怎么实现透明代理的呢?使用 HTTP 的代理服务器,HTTPS 的通信安全吗? 以前洒家只知道 GET 方法的 HTTP 代理,如下图所示:...

Comments

Weevely:一个 PHP 混淆后门的代码分析

洒家的朋友的公司的某个站发现最近被上传了一个后门程序。为了取证我们抓取了 HTTP 请求流量,看到了一堆莫名其妙看似经过混淆的请求,响应也是看似 base64 的乱码。洒家用了 2 个小时静态分析了一遍,并写了利用脚本。后门程序看似是乱码,实际上经过了混淆,通过 eval() 可以执行任意 PHP 命令。由于混淆得很乱,做起来实在把洒家恶心了一番。 后门代码: <?php /** * Signature For Report ...

Comments

瘟疫公司 Android 中国版手动破解内购

警告 本文所发布的一切破解补丁、注册机和注册信息及软件的解密分析文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。请在 24 小时内删除所有相关文件,如果您喜欢该程序,请支持正版。 前言 近日,洒家下载了个瘟疫公司 Android 中国版,包名 com.easymobi.plagueinc.mi(.mi 小米版),版本 1.1.2(5),发现游戏需要内购而且价格不菲。 需求 root 权限 文件管理器(洒家使用的是 ES 文件浏览器) 破解 破解方法极其弱智,不需要逆向工程。洒家在...

Comments

TWCTF 2016 WriteUp

洒家近期参加了 Tokyo Westerns / MMA CTF 2nd 2016(TWCTF 2016)比赛,不得不说国际赛的玩法比国内赛更有玩头,有的题给洒家一种一看就知道怎么做,但是做出来还需要洒家拍一下脑瓜的感觉。总之很多题还是很有趣的,适合研究学习一番。 以下是洒家做出来的几道小题,类型仅限 Web 和 Misc,给各位看官参考。 Global Page Web Warmup Welcome to TokyoWesterns' CTF! http://globalpage.chal.ctf.westerns.tokyo/ ...

Comments

天朝使用 GAE 入门指南

警告 这篇文章内容可能已经过时。 引言 Across the Great Wall, we can reach every corner in the world. 洒家最近玩了几下 Google App Engine。由于众所周知的原因,天朝恶劣的网络环境十分影响程序猿的生产活动。另外,GAE 对新手来说需要摸索和练习才能掌握,洒家决定写上几笔。 以下是洒家的一点提示。 正文 代码的部署方式 Google App Engine 没有(洒家没有找到)网页版的上传代码方式,洒家唯一知道的上传代码方式是用 Google App...

Comments

折腾阿里云笔记

警告 这篇文章是洒家刚接触云计算时写的,内容已经过时,仅供怀旧。 但是说起来,这种瞎折腾、走弯路的过程也是一种乐趣。 近期洒家买了个阿里云云服务器 ECS 玩玩,虽然国内的服务器网速快,但是毕竟在天朝,有的地方玩得也是有些不爽。以下是洒家这两天折腾的记录。 域名 洒家只是搞一个自己用的服务器,因此只需一个免费域名:https://www.freenom.com/,用 Freenom DNS Server 填上自己的 IP 即可。 [图片] 绕过备案 洒家弄好之后,用域名访问,出现了喜闻乐见的温馨提示: 该网站暂时无法访问...

Comments

Docker 常用命令

这篇文章是洒家刚接触 Docker 时写的,部分操作即使在当时也不太恰当。推荐使用 Docker Compose 等容器编排工具,尽量不要直接使用 docker 命令。 由于 Docker 版本变化很快(笑),这篇文章的内容已经过时,可能不会再更新。建议查阅 Docker Documentation。 这篇文章最初发布于旧博客。2017 年 4 月 14 日搭建新博客时,对内容做了一些增改,作为测试文章发出来。 这篇文章针对 Ubuntu Server 16.04 和 Docker 1.12.6,主要参考《Docker...

Comments

Linux laptop-mode 电池供电时鼠标间歇失灵问题解决

警告 根据 ArchWiki - Laptop Mode Tools,USB 自动休眠功能已经从 usb-autosuspend 模块移动到了 runtime-pm,这篇文章已经过时。 这个问题网上已经有很多人讨论过了。例如解决 Ubuntu 在 laptop-mode(用电池的模式)下 USB 鼠标失效问题一文,把 USB 设备添加到了 AUTOSUSPEND_USBID_BLACKLIST 黑名单中。 我的目的则相对简单,完全禁用 usb-autosuspend 功能,就不必搞这么复杂了。 首先, sudo vim...

Comments

XSS Quiz 练习题做题过程及感悟

XSS Quiz Challenges 最近刚学 XSS。所以新手理解如有错误不当,欢迎批评指正。 警告 本文仅供怀旧,详见后记。 第 1 题 一开始做,使用了 Chrome 浏览器。第一题怎么都做不出来。突然想起来使用 IE,打开 IE11,才成功了。 <script>alert(document.domain);</script> [图片] 第 2 题 第二题,直接用这个不行。 [图片] 查看源代码。 [图片] 构造一个,把左边的 <input 封掉。...

Comments

Linux 系统搭建 LAMP 环境

警告 本文内容已经过时,并且有一些操作即使在当时也不太恰当。 知识背景 LAMP 指的 Linux(操作系统)、Apache HTTP 服务器,MySQL(有时也指 MariaDB,数据库软件)和 PHP(有时也是指 Perl 或 Python)的第一个字母,一般用来建立 Web 服务器。 Linux 是免费开源软件,这意味着源代码可用的操作系统。 Apache 是使用中最受欢迎的一个开放源码的 Web 服务器软件。 MySQL 是多线程、多用户的 SQL 数据库管理系统。 PHP,Perl 或 Python:PHP...

Comments

第二届 360 杯全国大学生信息安全技术大赛 几道小题解析

几道送分题: 第 2 题:网络与协议(10 分) 第 4 题:WEB 安全(10 分) 第 2 题 网络与协议(10 分) [图片] 直接用电脑的浏览器是无法获得通关密码的。这里我修改了 HTTP 请求时,发送的 User-Agent。 打开 WebScarab,刷新页面。弹窗: [图片] 从网上找到 iPhone 6 的 User-Agent: Mozilla/5.0 (iPhone; CPU iPhone6 OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko)...

Comments

HackThisSite JavaScript 题目破解过程与解析

HackThisSite JavaScript mission 1-7 题目来源:https://www.hackthissite.org/missions/javascript/ 2020 年 10 月 28 日迁移老博客时注:这篇文章是洒家刚接触计算机和信息安全时的社团作业,那时候 URL decode 全靠往百度地址栏复制,F12 也不会按,属实怀旧了一波。 第 1 关 [图片] 我先尝试输入 123456,当然失败了。 搜索按钮的文字: [图片] 找到代码,发现有一个名为 check 的函数: [图片] 再次搜索:...

Comments