自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(183)
  • 收藏
  • 关注

原创 v8 老版本(4.8)编译大坑记录

前言由于需要研究一下老版本(4.8) v8的一些漏洞,需要编译一个老版本的v8(d8?),但是发现这条路真的大坑无数,所以稍微记一下,由于是凭记忆记的,可能不是很全。。获取代码首先获取代码已经是个大坑。depot_tools正常获取代码的方法是不行的,需要用到google的depot_tools。具体获取方案新老v8差距不大,获取最新的即可。具体可以按照v8 wiki里的方...

2018-05-28 12:19:56 2132 1

原创 archlinux 小米笔记本air 13.3 独显版指纹识别 解决方案

问题买了个小米笔记本,发现有个指纹识别(surprise??),虽然说有个libfprint 以及archlinux官方的fprintd可以读取指纹,但是似乎arch官方的libfprint没有支持小米笔记本,但是其实libfprint最新版本已经有了支持,所以需要自己处理一下处理过程大概原理:因为第三方最新libfprint已经有了支持,但是arch所带的fprintd没有支持,...

2018-04-06 12:27:44 8428 4

原创 Anciety 0CTF/TCTF 2018 总结

前言这次跟着lotus-r3kapig打0CTF,题目挺好,学到很多东西,无奈最后实在是菜,题目要么被队友秒了,要么完全不知道怎么下手,确实很有总结的必要。Time basedDAY 1第一天比较操蛋是我们除了0ctf还有个nuit du ctf要打,两个时间是重合的,比较尴尬,还好nuit du ctf只有一天,难度也还比较有限,加之队友实在给力(感谢@F0r_1st 和...

2018-04-02 19:03:48 2530 2

原创 浅谈面向对象

前言本文仅仅是面向个别同学的,可能存在xjb乱说的情况,如果有欢迎指出,不过我不喜欢谁喷我,谁喷我我就删掉,或者当没看见。 由于我才疏学浅,本文也就是对我所感受到的东西进行一些总结,估计很大概率会乱说,所以觉得有所了解的同学就不用看啦,反正也不会有收获的。面向对象?好了现在我们可以开始瞎掰了。什么是面向对象?我稍微做了一下搜索,发现大多数人还是提到了经典的三个词: 封...

2018-02-24 22:05:30 600

原创 随便谈谈Rust错误处理

错误处理?其实我一直不能太分清楚什么是错误什么是异常,不过我倒是觉得区分这些个东西意义不大,重要的是认清本质。一个程序在运行过程中总会碰到一些错误,有的是因为用户的不当操作,有的是因为期望的结果没有发生,当然还有直接就是无法恢复的程序bug,无论如何,这些问题,如果我们考虑到了,都是需要一套解决方案的,所以我们就来稍微谈谈这些解决方法,还有我最近学到Rust的解决方法。从Error Cod...

2018-02-08 01:09:10 6139

原创 archlinux 安装latex使用中文

前言latex的安装其实感觉非常操蛋,不过还好我用的是archlinux..之前没有利用好archlinux自己的东西,导致安装浪费了很多时间还没有成功,后来发现archlinux自己已经做好了很多工作…安装texlivesudo pacman -S texlive-core texlive-langchinese这个时候还会出一个神奇的错误,缺少environ.sty,也就是environ.sty

2017-11-08 17:24:58 7140

原创 pwnable.tw calc writeup

题目main:int __cdecl main(int argc, const char **argv, const char **envp){ ssignal(14, timeout); alarm(60); puts("=== Welcome to SECPROG calculator ==="); fflush(stdout); calc(); return puts

2017-09-27 20:48:27 1626

原创 pwnable.tw orw writeup

题目题目比较简单就不复制了,首先seccomp设置了白名单,然后输入0xc8长度shellcode,直接跳到shellcode执行。分析既然是练习,就要彻底一点。 首先是seccomp dump的问题,目前采用的方法是IDApython脚本dump数据下来,然后输入scmp_bpf_disasm。IDApython的文档非常诡异,函数没有说明,函数的参数也不能直接看出来,所以搜了很长时间找了一个别

2017-09-27 09:08:32 1843

原创 pwnable.tw start writeup

题目.text:08048060.text:08048060 public _start.text:08048060 _start proc near.text:08048060 push esp.text:08048061 push offset _exit.te

2017-09-27 00:28:28 1401 1

原创 hitb-2017 1000levels writeup

题目分析题目设置的还是比较巧妙的。本身是一个二进制的文件,linux 64环境,保护情况如下: Arch: amd64-64-little RELRO: Partial RELRO Stack: No canary found NX: NX enabled PIE: PIE enabled功能一共三个: 1. go:

2017-08-28 11:00:37 1628

原创 bosten key party 2017 memo writeup

memo题目https://github.com/ctfs/write-ups-2017/tree/master/boston-key-party-2017/pwn/memo-300分析题目有些生硬,很多地方都不太能说通,不过就是练习一下,就当刷水题了。逻辑setvbuf等基本操作,以及使用prctl设置了no new privs,所以无法新建进程输入用户密码,密码可以不写,全局变量name和p

2017-07-27 19:47:16 1004

原创 bosten key party 2017 signed shell server writeup

signed shell server题目https://github.com/ctfs/write-ups-2017/tree/master/boston-key-party-2017/pwn/signed-shell-server-200分析先随便把玩一下,有两个功能,一个是sign,一个是execute,sign会给出一个命令的签名,然后execute给出命令,并给出签名,如果匹配成功就会使用

2017-07-27 15:03:11 686

原创 绿盟杯NSCTF(CCTF)2017 pwn writeup

前言比赛有无数值得吐槽的地方,其中最主要的是,题目给了pwn的libc,然而,特么是错的,也就是说虽然给了libc,但是其实还是靠运气/当做没有libc解,顺手记录一下这两个水题。pwn1分析mainint __cdecl main(){ alarm(0x1u); setbuf(stdin, 0); setbuf(stdout, 0); setbuf(stderr, 0); p

2017-07-22 01:12:36 5966

原创 defcon quals 2016 feedme writeup

题目基本信息一个32位的二进制文件,静态链接 checksec:[*] '/home/vagrant/ctf/practice/defcon-2016/pwn/feedme/feedme' Arch: i386-32-little RELRO: No RELRO Stack: No canary found NX: NX enable

2017-07-07 15:12:25 844

原创 利用ida pro的flare功能识别静态链接函数签名

前言在逆向分析的过程中,如果一个静态链接文件被去除了函数签名,那么整个文件将会变得极其难以识别,我们很难通过手动去识别各个库函数。好在ida pro提供了利用模式识别方式进行识别的功能,使得我们可以很快速的得到很多函数的签名。FLIRTIDA拥有一个FLIRT技术,全称Fast Library Identification and Recognition Technology,即快速库识别和检测技术

2017-07-07 12:51:57 4364

转载 Python沙箱?不存在的

http://bobao.360.cn/learning/detail/4059.html

2017-07-07 11:58:00 768

原创 汇编获取当前执行位置方法总结

call-popglobal _startsection .text_start: call next_ins next_ins: pop rax ; rax holds current pc ret; nasm -felf64 test.S && ld -o test test.o这种方法利用了call的时候会在栈上保存ip值,之后pop就可以使某寄存器获取

2017-07-05 20:48:45 2944

原创 pwn工具箱之house of spirit

house of spirit基本信息利用种类:堆利用堆利用种类:释放fake chunk利用思路:通过构造fake chunk,然后使得fake chunk被free,在下一次malloc时返回fake chunk利用难点需要能够控制被free的内容,才能构造fake chunk在free fake chunk的时候,libc会检查next size,也就是从当前位置开始算,加上一个c

2017-07-03 15:13:49 911

原创 pwn工具箱之house of force

house of force基本信息利用类型:堆利用堆利用类型:top chunk相关利用思想:通过修改top chunk大小,使得分配任意大小都是从top chunk里边切出来,这样分配一个大小占满想要写的位置和当前分配位置top chunk的差,下一个分配就可以分配出想要写的位置利用难点需要有办法能够更改到top chunk大小需要能够知道当前位置和要写位置的差值需要能够自由控制将

2017-07-03 14:40:53 940

原创 pwn工具箱之unsorted bin attack

unsorted bin attack基本信息利用类型:堆利用 堆利用类型:针对unsorted bin的利用,也就是需要用normal chunk或者large chunk释放得到的 利用思想:unsorted bin是一个双链表,在分配时会将unsorted bin中的chunk从unsorted bin中移除,是一个链表的unlink操作。如果能够控制unsorted bin chunk的

2017-07-03 13:03:26 2758

原创 使用virtualbox和gdb调试内核

前言最近终于打算着手开始学习内核的pwn了,基础知识接触了一些,但是问题最大的是,kernel的运行环境和一般的用户空间程序不一样,调试方法也不一样,所以打算记录一下自己学习如何进行kernel的调试,这才算是进入kernel exploit的第一步。另外,我发现了网上的教程或多或少都存在一些没说清楚的地方,导致不能完整的复现以达到目的,所以决定自己研究一下。光是一个kernel是没办法调试的,还需

2017-06-29 15:00:20 2328

原创 google ctf 2017 inst_prof writeup

题目题目本身比较神奇,当时看到这道题的时候还懵了一下,一下子没有太好的思路,不过后两天还有考试所以也没太静下心来想,今天刚考完了再来看这道题感觉其实难度并不是很大。题目给出了一个二进制文件,本能的checksec:[*] '/home/vagrant/ctf/contests/googlectf-2017/inst_prof/inst_prof' Arch: amd64-64-lit

2017-06-23 01:20:04 1154

原创 0ctf final world of fastbin writeup

https://github.com/D-I-E/writeups/tree/master/2017-ctfs/20170602-TCTF-Final/pwn-world_of_fastbins

2017-06-13 09:37:52 676

原创 0ctf final upxof writeup

https://github.com/D-I-E/writeups/tree/master/2017-ctfs/20170602-TCTF-Final/pwn-upxof

2017-06-13 09:37:21 782

原创 linux wine运行windows ida

前言由于ctf比赛需要,必须得使用ida,然而我本机一直运行的都是manjaro linux。我基本上是使用linux代替windows的,如果缺少这么一个功能,自然代替就无从谈起了。之前一直使用的都是虚拟机,然而最新的manjaro linux更新之后,virtualbox的guest addition应该是和xorg-server存在一些不可告人的错误,只要安装了guest addition就会

2017-05-24 14:52:39 4798

原创 arch linux youcompleteme libtinfo.so.5 no such file or directory 解决

问题描述arch linux中youcompleteme不工作,查看debug info之后发现libtinfo.so.5出现no such file or directory.问题解决安装libtinfo已经解决不了了,aur中的libtinfo是libtinfo.so.6,所以解决方法是在youcompleteme的install.py中添加参数--system-libclang,当然首先应该确

2017-05-23 21:19:37 1618

原创 2017 rctf RNote2 writeup

QIRA我们在写一些exploit的时候,经常会碰见出现的内存不如预期的情况,这个时候我们就会使用调试器查看到底是什么地方出了问题。这个出错的地方肯定是比现在你查看内存的地方要晚了,也就是说,我们得,倒回去看内存,这在一般的调试器中是实现不了的。qira就是这么一个调试器,它可以做到记录下整个过程,使得调试的过程变得更加简单。总的来说,qira的作用: 1. 进行正常调试 2. 调试时如果发现内

2017-05-23 15:43:23 1253

原创 超越时空的调试器-qira

QIRA我们在写一些exploit的时候,经常会碰见出现的内存不如预期的情况,这个时候我们就会使用调试器查看到底是什么地方出了问题。这个出错的地方肯定是比现在你查看内存的地方要晚了,也就是说,我们得,倒回去看内存,这在一般的调试器中是实现不了的。qira就是这么一个调试器,它可以做到记录下整个过程,使得调试的过程变得更加简单。总的来说,qira的作用: 1. 进行正常调试 2. 调试时如果发现内

2017-05-23 13:59:48 2212

原创 MARKER_EXPR = originalTextFor(MARKER_EXPR())("marker") TypeError解决方法

问题描述安装qira的时候出现了这个错误,大概如下Processing ./qiradbCollecting https://pypi.python.org/packages/source/p/pyparsing/pyparsing-1.5.7.tar.gz#md5=9be0fcdcc595199c646ab317c1d9a709 (from -r requirements.txt (line 1

2017-05-22 23:23:49 899

原创 hitcon 2016 pwn babyheap writeup

NoticeFor English information, just get a closer look at my exp.py.题目Heap so fun! Baby, don’t do it first. nc 52.68.77.85 8731 note : the service is running on ubuntu 16.04地址:https://github.com/ctfs/w

2017-05-22 16:32:22 977

原创 elf增加一个可执行段以注入代码的一些思考

注入代码需要什么向elf中注入代码为patch带来了极高的灵活性,使得对函数进行hook从而达到更改参数,在线更改值以及监视函数执行等一系列 行为提供了可能。可是向segment中注入代码并不如想象的那么简单,有一些东西需要注意才能够真正达到效果。elf可执行文件执行的关键其实是segment,在执行的过程中section相对并不重要,即使section有一些损坏,只要segment,包括 pr

2017-05-22 16:31:45 3851 5

原创 manjaro linux 安装搜狗拼音输入法

安装fcitxsudo pacman -S fcitx安装搜狗输入法yaourt sogou可以搜到一个搜狗输入法,安装fcitx之后可以安装这个输入法配置在~/.xprofile中添加export GTK_IM_MODULE=fcitxexport QT_IM_MODULE=fcitxexport XMODIFIERS=@im=fcitx如果还是无法使用,可能需要安装fcitx-gtk2sud

2017-05-22 16:30:13 20667

原创 pwn工具箱之house of lore

前言我看了一些网上对于这些技术的解释,但是发现他们大多比较绕,对于理解其中心思想造成了难度,所以 我在这里把他们记录下来,把这些技术的中心思想记下来,作为自己的pwn工具箱,在以后解决pwn问题的 时候能够随时拿出来发挥作用。我在这里关注的目标是其利用的思想,和其他的一些post不同,利用条件等等这些我个人认为不是能够直 接被总结的,pwn本身的方法多种多样,十分灵活,如果用一些“第一个chu

2017-05-22 16:29:39 1389

原创 pwn工具箱之fastbin attack

fastbin attack基本信息利用类型: 堆利用堆利用类型: 针对fastbin的利用利用思想: 利用fastbin的free只检查是否和上一个freechunk相等,使得同一个chunk两次进入free list,造成UAF,可以更改fastbin free chunk的fd信息,最终分配一个特定地址利用难点需要能够两次free同一个chunk更改fd的时候,为了能够在之后的ma

2017-05-22 16:29:05 2225

原创 2017 bctf boj writeup

BCTF 2017 BOJThis is a very interesting challenge for me. We were given a working oj on http://oj.bctf.xctf.org.cn, there was only a single classical problem a + b on it. I tried several times to play

2017-05-22 16:28:32 959

原创 python decorator记录

装饰器decorator装饰器,在设计模式中有一种模式叫做装饰器模式,虽说不完全是设计模式中的那个, 但是其思路是一致的。目的都是需要添加功能,但是又不希望更改原来的代码。比如我已经有一个函数do_something(),然后我希望添加一些功能,但是又不应该 直接去更改这个函数的代码,我们就可以通过装饰器的方式,在前后进行添加,并且 将这个函数包裹起来。由于python的函数式特性,我们可以很

2017-05-22 16:27:32 386

原创 64位arch linux keypatch 安装

idaKeypatch是ida的一个插件,安装需要ida,linux版本的ida在吾爱上有一个6.4版本的,当然最好是正版。IDA的安装与这个post关系不大,这里我就不再详细说了。keystonekeypatch依赖于keystone。下面的内容包括本机的keystone和ida的keystone,由于64位linux下ida用的python 不是本机的python,所以方法不一样。如果只用ke

2017-05-22 16:27:03 1715

原创 manjaro linux(archlinux)alsa没有声音解决方法

问题描述新安装的manjaro linux,基于arch linux,所以可能arch linux也适用。 主要是发现右下声音虽然可以调整,但是没有声音。 speaker-test确实是没有声音出现。alsamixer选择声卡之后是可以调整音量的。 speaker-test出现speaker-test 1.1.3Playback device is defaultStream paramet

2017-05-22 16:26:26 12665 2

原创 ctf pwn 个人经验记录

前言记录一下自己在做pwn的过程当中学到的一些东西,以前不知道的东西等等,碰到的坑也会记录在 这里,主要目的是帮助自己记录一下经验。其实每一道题基本上能学到的新东西是有限的,记录下来避免什么时候想不起来。顺序比较乱,基本上根据我做题的顺序定的,比较随意。pwnother place(not from ctf)多用gdb调试,有思路可以先写出来调试一下看看效果再说遇见pie考虑写malloc_h

2017-05-22 16:23:07 8844 1

原创 2017 429 ichunqiu ctf smallest(pwn300) writeup

Challenge - smallest (pwn 300) - 429 ichunqiu ctf 2017吐槽这次这道smallest确实很有创造力,算是这次比赛我感觉比较好的地方了。这次比赛本身槽点是无数的,10点开始的比赛,11点都进不去平台,紧急修复到12点,然后12点半在网站通知比赛时间到1点,中途一直不肯决定 比赛到底推迟到几点进行,一早上的课都不敢好好上,确实是非常的坑。然后在做这道

2017-05-22 16:21:20 2272

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除