avatar
文章
24
标签
11

主页
归档
TAG
工具箱
riChar
主页
归档
TAG
工具箱

riChar

HGAME 2021 Week1 WP
发表于2021-02-09|更新于2021-02-16
ReezApk对输入先AES加密然后base64。 1234567891011121314from Crypto.Cipher import AESfrom Crypto.Hash import SHA256,MD5from base64 import *key=b"A_HIDDEN_KEY"aes_key=SHA256.new(key).digest()aes_iv=MD5.new(key).digest()flag='EEB23sI1Wd9Gvhvk1sgWyQZhjilnYwCi5au1guzOaIg5dMAj9qPA7lnIyVoPSdRY'flag=b64decode(flag)cipher=AES.new(aes_key,AES.MODE_CBC,aes_iv)flag=cipher.decrypt(flag)print(flag.decode()) HelloRe2flag分两段,第一段是直接明文比对, 第二段新建了一个进程,并有IsDebuggerPresent的简单反调。可以输入完第一段密码之后,IDAattach到新的线 ...
HGAME 2021 Week1 WP
发表于2021-02-09|更新于2021-02-09
Reapachexxtea加密,key为{1,2,3,4} 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061#include <stdio.h> #include <stdint.h> #define DELTA 0x9e3779b9 #define MX (((z>>5^y<<2) + (y>>3^z<<4)) ^ ((sum^y) + (key[(p&3)^e] ^ z))) /* v要加密的数组 n数组长度 正为加密 负为加密*/void btea(uint32_t *v, int n, uint32_t const key[4]) { uint32_t y, z, sum; unsigned p, rounds, e; if (n > 1 ...
2020 BMZCTF Re&Pwn WriteUp
发表于2020-12-25|更新于2020-12-28
Rere1main函数如下 对输入逐字符加密,先后进行了异或、取余、异或,由于取余操作不好直接逆向,所以这里采用对128个ascii码全部进行上述加密,然后只要查表就可以得到加密前的ascii码了。 123456789101112flag=[5070369,5070379,5070398,5070368,5070420,5070365,5070346,5070389,5070364,5070387,5070337,5070392,5070349,5070370,5070386,5070370,5070391,5070380,5070444,5070392,5070446,5070380,5070392,5070364,5070376,5070447,5070446,5070426]def en(a): a^=0x1A2B3C a%=0x1A2B0C a^=0x4D5E6F return akey={}for i in range(128): key[en(i)]=ifor i in flag: print(chr(key[i]) ...
Tern字幕翻译软件逆向记录
发表于2020-12-22|更新于2020-12-22
Tern(官网https://zh.tern.best)是一个字幕翻译的软件,他通过调用主流翻译平台的接口(需要自己注册)进行字幕翻译,说白了就是写了个gui。但是他免费版每月是限制字符数的。因此。。。 提取这是一个eletron应用,外面就是一层chrome的壳,真正逻辑在resources/app.asar,用npm安装asar工具对其解压。 12npm -g install asarasar e app.asar app 随便翻了翻,可以看到主要逻辑在js/app.cca879ab.js里,本来要读这个打包出来文件非常头疼,但是这个软件竟然把sourcemap也打包了出来,那就直接用工具恢复源文件吧。这里用的是reverse-sourcemap,用起来很方便,只要reverse-sourcemap <目标文件>就行了。 恢复之后就可以愉快的分析代码了(甚至还有详细的注释)。 分析在源代码里乱翻找到了js/webpak/src/config/index.js,好家伙,免费额度都直接写在这里了。 12345678910111213141516171819202122232 ...
ptmalloc学习笔记
发表于2020-12-07|更新于2020-12-07
最近在学习pwn中的堆利用,因此来系统的学习一下ptmalloc的机制。主要看的是Glibc内存管理–ptmalloc2源代码分析。 malloc这是照着书上画的流程图,可以快速了解malloc的整体逻辑。 graph TD malloc(malloc分配):::es -->calSize(将请求的大小计算成要分配的chunk大小) -->isFast(chunk_size tryFastbin(尝试从Fast bins中取) tryFastbin--T-->e1(结束):::es tryFastbin--F-->isSmall(chunk_size < 512B 判断是否在Small Bins范围中) isFast--F-->isSmall isSmall--T-->trySmallBins(找到具体所在的某个small bin尝试从尾部取) trySmallBins--T-->e2(结束):::es isSmall--F-->mergeFB(合并fast bins中相邻chunk,并链接到unsorted bin中) trySmallBins--F-->mergeFB -- ...
2020 NJUPT CTF - zstuCTF WriteUp
发表于2020-11-21|更新于2020-11-25
Rere1逐字符加密然后比对,只要逐字符爆破即可 exp: 12345678910111213141516171819202122232425262728#include<stdio.h>char encrypt(char a1,char a2){ char v2 = (~a2 | ~a1) & (~a2 | a1) & (a2 | a1) | (~a2 | ~a1) & (a2 | ~a1) & a2 & a1 | a2 & ~a1 | ~a2 & a1; return (~(32 * v2) | ~(v2 >> 3)) & (~(32 * v2) | (v2 >> 3)) & (32 * v2 | (v2 >> 3)) | (~(32 * v2) | ~(v2 >> 3)) & (32 * v2 | ~(v2 >> 3)) & (32 * v2 | (v2 >> 3));}int ...
Firefox启用DoH
发表于2020-11-20|更新于2020-11-20
简介DNS协议原本是没有加密的,导致可能会产生域名劫持、DNS污染,引发一些安全问题。而DoH(全称DNS over HTTPS)可以基于HTTPS的加密进行DNS查询,避免域名劫持。( Firefox配置打开about:config页面,搜索network.trr(trr全称 Trusted Recursive Resolver),重点是两个参数network.trr.mode和network.trr.uri。 network.trr.modenetwork.trr.mode官方给的定义是 0 - Off (default). use standard native resolving only (don't use TRR at all) 1 - Reserved (used to be Race mode) 2 - First. Use TRR first, and only if the name resolve fails use the native resolver as a fallback. 3 - Only. Only use TRR, never ...
Netplan虚拟机双网卡配置
发表于2020-11-15|更新于2020-11-15
背景由于笔记本电脑的网络环境总是会变化,导致虚拟机的网络ip不能固定,因此我给虚拟机设置了两块网卡,一块是Host-only,名为enp0s3,网段为192.168.137.0/24 ;另一块是网络地址转换(NET),用于访问互联网,名为eth0。 默认的设置会导致访问互联网时有时会走eth1,导致无法上网。也就是路由表配置错误。 一开始的路由表如下 1234567$ routeKernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Ifacedefault 192.168.137.1 0.0.0.0 UG 0 0 0 eth0default 10.0.3.2 0.0.0.0 UG 100 0 0 eth110.0.3.0 0.0.0.0 255.255.255.0 U 100 ...
glibc编译与调试
发表于2020-11-13|更新于2020-12-15
编译首先肯定是要下载glibc源码,可以去官网,国内也可以去清华镜像下载。 编译的时候要带有调试信息,并选择合适的输出目录。大概需要10min。 123456mkdir buildcd buildecho "CFLAGS += -fno-stack-protector" > configparms../configure CFLAGS="-O1 -g3 -ggdb" CXXFLAGS="-O1 -g3 -ggdb" --disable-werror --prefix=/home/richar/glibc/lib --enable-cetmakemake install 生成用于调试的程序对于一般的elf执行文件,肯定是默认到系统目录去找libc。有两种方式可以自己指定链接的libc位置,一种是在编译的时候加上选项,但这只能用于自己编译的程序。 1gcc -g3 -ggdb -o hello hello.c -Wl,-rpath=/home/richar/glibc/lib/lib -Wl,--dynamic-linke ...
第11届极客大挑战-Pwn WriteUp
发表于2020-10-24|更新于2020-11-15
数学咋样?也就20道加法,手算也可以(bushi。 还是用python写个脚本吧。。 12345678910111213141516from pwn import *import resh = remote("81.69.0.47",1111)sum=0while True: try: a=sh.recvline(keepends=False).decode() findings=re.findall(r"!\[.*\] num_1 = ([0-9]+), num_2 = ([0-9]+)",a) if len(findings)!=0: sum=int(findings[0][0])+int(findings[0][1]) print(a) if a=="I can't calculate the expression 'num_1 + num_2'.": sh.recvun ...
123
avatar
riChar
文章
24
标签
11
订阅
最新文章
HGAME 2021 Week1 WP2021-02-09
HGAME 2021 Week1 WP2021-02-09
2020 BMZCTF Re&Pwn WriteUp2020-12-25
Tern字幕翻译软件逆向记录2020-12-22
ptmalloc学习笔记2020-12-07
标签
ctfpwnrewp网络配置WebGoatrss搭建环境技巧glibc建站
归档
  • 二月 20212
  • 十二月 20203
  • 十一月 20204
  • 十月 202011
  • 九月 20204
网站资讯
文章数目 :
24
已运行时间 :
本站总字数 :
23.4k
©2020 - 2021 By riChar
框架 Hexo|主题 Butterfly
你好?