gsfish's blog

Have fun in the cyber space

QWBCTF 2018 Writeup

QWB{xxxxxxxxxxxxx}

0x00 Reverse simplecheck 下载下来发现是个 zip 文件,打开后发现是 apk,用 jeb 载入并反编译 发现 a 是验证函数,跟入 转成 C 语言,各个位独立,暴力解出 flag 0x01 Crypto streamgame1 根据 R=int(flag[5:-1],2) 以及 len(flag)==25 推测 flag 为 19 个二...

Python 中的函数式编程

Python 中一切好的特性都是从其他语言中借鉴来的

从设计上看,不管函数式语言的定义如何,Python 都不是一门函数式语言。Python 只是从函数式语言中借鉴了一些好的想法。 以下为 Python 中涉及函数式编程的主要工具: map reduce filter lambda map(func, seq) map(func, seq) (映射)函数接收两个参数,一个是函数,一个是序列,map 将传入的函数依次作...

字符编码学习总结

Humans use text. Computers speak bytes.

0x00 前言 有几个概念容易混淆: Unicode:指的是字符集。其为每一个文字符号分配了唯一的标识 UTF-8、UTF-16:指的是编码方式。其将字符集中的文字标识编码为用于传输或存储的字节序列 GBK、GB2312:为国家规范。既包含了中文字符集,同时也包含了相应的编码方式 0x01 Unicode Unicode 对世界上大部分的文字系统进行了整理、编码,使得...

基于 CNN 的 Webshell 检测平台的设计与实现

https://github.com/gsfish/cnn-webshell-detect

1 相关理论 1.1 卷积神经网络与特征提取 卷积神经网络中的卷积层能够很好地描述数据的局部特征,通过池化层可以进一步提取出局部特征中最具有代表性的部分。 由于大部分后门脚本为绕过防护软件的检测会采用字符串拼接、符号编码等方式对代码进行混淆,因此相关脚本在较短的执行周期内,容易出现重复或是相似的指令。 传统的静态检测通过匹配特征码、特征值、危险函数函数来检测恶意。该方法只能检测已知的...

某科学上网插件分析

穿越_v2.1

0x00 引子 今天一个朋友发过来一个 Chrome 插件,说是花了 39 块钱买的,装到 Chrome 里就能直接翻墙,让帮忙看看是否靠谱。 0x01 分析过程 拿到的是一个 crx 文件,其实就是一个特殊的压缩文件。crx 的逆向非常简单,直接将后缀改为 .zip 并解压即可得到所有源码。 插件的主要逻辑代码在 js 文件夹下,里面只有四个文件: background.js...

内网安全之域渗透

内网姿势系列

内网姿势系列: 内网安全之 ARP 欺骗 0x00 整体思路(持续更新) 0x01 环境判断(DOMAIN / WORKGROUP) net time /domain net config workstation systeminfo ipconfig /all 0x02 信息收集 net view /domain<:DOMAIN> net user /...

使用 VirtualBox + VHD 管理多系统

实体机多系统新姿势

经常用 VMware 运行虚拟机,一方面是因为有对于其他环境的需求,另一方面是因为虚拟机相对来说较为安全(虽然也有利用漏洞从虚拟机中逃逸的案例,例如前不久的 Pwn2Own 2017),并且快照的功能十分方便。然而,虚拟机在性能、硬件支持等方面也有其弊端。 最近了解到一个在 Windows 中潜藏已久的功能,即创建 VHD 虚拟硬盘。同时 VirtualBox 也支持创建管理 VHD 硬盘...

关于 Python 中主线程响应 SIGINT 解决方案

由于主线程开小差而引发的一个问题

0x00 引子 最近在 Freebuf 上的一篇文章的启发下用多线程改写了一个基于 Python 的 Struts2 S2-045 批量检测工具,使用的是 threading 模块。thread 和 threading 都允许程序员创建和管理线程,而 threading 对原生的 thread 做了进一步的封装,提供了更高级别,更强的线程管理的功能。 在这个项目中: 线程 1 为...

HCTF 2016 Writeup

hctf{xxxxxxxxxxxxx}

0x00 Level-1 MISC 杂项签到 这道题给了一个 pcapng 格式的数据包,在 Wireshark 中打开。 发现了两个 HTTP 包和很多的 TCP 包,HTTP 包观察了半天没发现什么,于是便从 TCP 包下手。使用 Wireshark 追踪 TCP 流,结果如下所示。 目测这是一连串与后门通信的过程,过程中查看了一个名为 flag 文件的内容。应该是用 B...

在 Linux 下使用 QQ

最近为了在 Linux 用上 QQ 折腾了好一阵子,特此记录

0x00 前言 由于目前腾讯已经停止了对 Linux 版 QQ 的支持,那么我们只好自己动手把小企鹅搬到 Linux 下了。 目前能想到的解决方法有以下两种: 在 VirtualBox 下安装 Windows 和安装增强扩展,再安装 QQ 并使用无缝模式来在 Ubuntu 下使用 QQ 使用 Wine 安装并运行 QQ 个人比较偏向于第二种解决方案,因为为了使用 QQ 而...