- 博客(22)
- 收藏
- 关注
原创 实习面试题
前段时间去面了一个实习,虽然没有要我,但是还是记录下当时的几个面试题吧。1、硬件断点和软件断点的区别硬件断点:依赖于顾名思义,他依赖于硬件,DRX调试寄存器。有数量上的限制,X86中好像最多4个,不过他的优点是比较精确,可以精确到字节,由于是依赖硬件的,所以他不改变指令,不会被程序自校验检测到。软件断点:区别与上面的,不需要硬件支持,所以没有数量上的限制,想要多少就设置多少,他是通过改变内存分页的属
2017-09-12 09:58:49 1230
原创 pwnable.tw第一题start
这应该是我做的第一道pwn的题了(虽然也是看了很多别人的WriteUp),想了两天,才终于弄清楚了,在这里记录一下。拿到手以后发现是一个ELF文件,就放进kali虚拟机里面运行一下先: 程序启动以后打印一段话,然后让你输入,就完事了。 再放入IDA中,观察: 检测栈有点问题,不能够F5,强行看汇编。。。 5个push是打印出来的那句话, Let’s start the CTF:下面一句
2017-08-09 01:04:14 5615 2
原创 PythonTip--8.8
Py扔铅球 题目描述: Py不但是编程大牛,而且是运动健将。比如说扔铅球,1000m,现在Py参加校园扔铅球比赛, 给你Py的身高a(双精度数),球落地点与Py头部的连线与水平线的夹角 b(弧度), 要你编写一个程序计算Py扔铅球的水平距离。 a,b都是浮点数,注意b是弧度,其中, 140 < a < 200, 0 < b < 1.5. 输出你求出的水平距离,保留到小数点后三位。
2017-08-08 23:12:38 1196
原创 PythonTip--8.7
取石子游戏 题目描述: 有两堆石子,数量任意,可以不同。游戏开始由两个人轮流取石子。游戏规定,每次有两种不同的取法, 一是可以在任意的一堆中取走任意多的石子;二是可以在两堆中同时取走相同数量的石子。最后把石子全部取完者为胜者。 现在给出初始的两堆石子的数目a和b,如果轮到你先取,假设双方都采取最好的策略,问最后你是胜者还是败者。 如果你是胜者,输出Win,否则输出Loose。
2017-08-07 23:00:11 385
原创 PythonTip--8.5
斐波那契数列 题目描述: 斐波那契数列为1,1,2,3,5,8…。数列从第三项起满足,该项的数是其前面两个数之和。 现在给你一个正整数n(n <10000), 请你求出第n个斐波那契数取模20132013的值(斐波那契数列的编号从1开始)。思路: 没啥纠结的,直接循环加就好了代码n = 10def func(n): a,b = 1,1 count =1 wh
2017-08-05 21:37:38 270
原创 PythonTip--8.4
整数解 题目描述: 给你两个整数a和b(-10000 < a,b<10000),请你判断是否存在两个整数,他们的和为a,乘积为b。 若存在,输出Yes 不存在,则输出No思路: 最最笨的方法应该就是直接循环了。。。 讲稍微优化一点的: 因为知道的一个是和,一个是积,又是求两个解,这样就可以想到初中学过的一元二次方程。ax^2 +b*X+c=0 和 = -b/a
2017-08-04 22:57:14 1371
原创 一道ctf中的编码问题
今天做CTF题的时候,感觉有一道题很有意思,记录一下。题目链接:一段base64给了一个txt文档,打开以后满屏都是字,太多了我就不贴上来了,根据题目名字,反正就随便找了一个在线base64的网站,放进去,出来的还是一大段。。。 贴一部分吧 \134\170\65\143\134\170\67\65\134\170\63\60\134\170\63\60\134\170\63\65\134\1
2017-08-03 23:05:03 5766
原创 PythonTip--8.3
最大非连续子序列 题目描述: 给你一个整数list L, 如 L=[2,-3,3,50], 求L的一个非连续子序列,使其和最大,输出最大子序列的和。 这里非连续子序列的定义是,子序列中任意相邻的两个数在原序列里都不相邻。 例如,对于L=[2,-3,3,50],输出52(分析:很明显,该列表最大非连续子序列为[2,50]).思路: 这道题用到了动态规划,具体是什么意思可以自行百
2017-08-03 10:24:38 709
原创 猜数字
这是2017第十届全国大学生信息安全竞赛的RE的第一道题,i春秋上有所有的Writeup,不过我还是自己做一下,记录一下。 一开始拿到题的时候没懂什么意思,于是偷偷看了一眼WriteUp,发现上面说是数独。。。虽然平时我也喜欢玩数独,但是数独的逆向还是第一次看到,脑子里第一个想的就是:还有这种操作? 放到IDA中,main函数F5一下: 看名字就可以发现好多都是Sudu,数独拼音。。。。
2017-08-02 13:53:55 617
原创 PythonTip--8.2
大幂次运算 题目描述: 给你两个正整数a(0 < a < 100000)和n(0 <= n <=100000000000),计算(a^n) % 20132013并输出结果思路: 第一个就是直接使用Python内置库里面的pow()函数,专门就是用来处理这个问题的。 第二个就是使用了一个公式: 将幂次分为两种情况,若为偶数则可以将幂次提取一个2出来,放入数a中,这样就可以
2017-08-02 10:20:38 751
原创 XCTF嘉年华体验赛
链接:http://oj.xctf.org.cn/web/practice/defensetrain/465f6bb8f4ad4d65a70cce2bd69dfacf/re1拿到题目放入Winhex,发现是ELF文件: 用IDA打开以后F5: 很简单。。。就是4位数,满足一定的要求。其中的atoi函数就是把字符串转换为数字。 代码:for v5 in range(0, 10000):
2017-08-01 11:48:32 1324
转载 zip总结
在CTF比赛的MISC和CRYPTO中,经常要和zip压缩包打交道,这里做一个zip方面的总结。 本文中用到的所有文件和工具都可在这个网盘中找到http://pan.baidu.com/s/1bWQxyA目录 隐写篇 0x01. 通过进制转换隐藏信息 0x02. 在图片中隐藏压缩包(图种) 加密篇 0x03. 伪加密 0x04. 爆破/字典/掩码攻击 0x05. 明文攻击 0x06
2017-08-01 10:12:37 5510 1
原创 PythonTip--8.1
加油站题目描述: 一个环形的公路上有n个加油站,编号为0,1,2,…n-1, 每个加油站加油都有一个上限,保存在列表limit中,即limit[i]为第i个加油站加油的上限, 而从第i个加油站开车开到第(i+1)%n个加油站需要cost[i]升油,cost为一个列表。 现在有一辆开始时没有油的车,要从一个加油站出发绕这个公路跑一圈回到起点。 给你整数n,列表limit和列表co
2017-08-01 10:01:35 513
原创 PythonTip--7.31
一马当先 题目描述: 下过象棋的人都知道,马只能走’日’字形(包括旋转90°的日),现在想象一下,给你一个n行m列网格棋盘, 棋盘的左下角有一匹马,请你计算至少需要几步可以将它移动到棋盘的右上角,若无法走到,则输出-1. 如n=1,m=2,则至少需要1步;若n=1,m=3,则输出-1。思路:使用广度优先队列搜索,先创建一个队列,将棋盘上的所有点一一加入,若到达终点则结束,否则继续。
2017-07-31 15:43:06 783
原创 回文子串
描述 给你一个字符串a和一个正整数n,判断a中是否存在长度为n的回文子串。如果存在,则输出YES,否则输出NO。 回文串的定义:记串str逆序之后的字符串是str1,若str=str1,则称str是回文串,如”abcba”.思路从字符串第0位开始,选取n位,记为s,逆序记为r,比较是否相同。代码def func(a,b): for i in range(len(a)-b+1):
2017-07-30 22:59:33 669
原创 dump
HBCTF的一道题,是个ELF文件,于是放入Linux虚拟机中,执行: chmod 777 dump然后就可以运行了: 被停止了,放入IDA中,可以在main函数中发现有一个跳转语句,IDA中有用红色标记: 用nop语句填充这一行,保存后用gdb调试。然后使用find flag: 将中间的不正常编码的去除,就可以得到正确的flag了。==============分割线==========
2017-07-30 22:17:29 318
原创 jctf2014RE200
拿到题以后放到IDA和OD中都没什么卵用,于是上网搜了一下,发现是PE头有问题,需要修改,于是放入Winhex中: DOS头的最后一个参数应该是指向PE头的位移,所以应该是E8,而PE头的起始位应该是50 45 00 00。修改以后保存,放入OD中,搜素字符串: 可以看到有个success应该就是成功的跳转,于是回车跳到那段程序,发现程序好长。。。汇编比较菜,果断放入IDA,搜素succes
2017-07-30 16:59:40 1565 1
原创 人民币金额打印
题目描述 银行在打印票据的时候,常常需要将阿拉伯数字表示的人民币金额转换为大写表示,现在请你来完成这样一个程序。 在中文大写方式中,0到10以及100、1000、10000被依次表示为: 零 壹 贰 叁 肆 伍 陆 柒 捌 玖 拾 佰 仟 万 以下的例子示范了阿拉伯数字到人民币大写的转换规则: 1 壹圆 11 壹拾壹圆 111 壹佰壹拾壹圆 101
2017-07-30 13:08:37 787
原创 南邮ctf攻防平台RE第四题WxyVM1
今天做了南邮攻防平台RE第四题,链接:http://ctf.nuptsast.com/用Winhex打开以后可以看出来是ELF文件,所以用IDA打开,找到main函数,F5。 可以看出来,程序的意思就是:输入flag,经过sub_4005B6那个函数进行运算,然后长度必须为24,再与最终答案进行比较,检测是否正确。 接下来看那个运行的函数: 6010C0是一个长度为15000的数组,每
2017-07-28 16:30:16 3278
原创 Easy kengen
题目链接 : http://reversing.kr/challenge.php 第二题 下载下来是一个压缩包,解压后有一个exe文件和一个txt文件。打开readme,可以看到下面内容: ***ReversingKr KeygenMe Find the Name when the Serial is 5B134977135E7D13***看意思应该就是在程序输入name,程序
2017-07-27 18:41:49 473
原创 reverse
今天开始记录学习逆向的过程。。。从http://reversing.kr/challenge.php的第一道题开始。先放到OD中,然后字符串检测:应该就是Congration那一行,所以回车进入。往上找,可以发现有很多判读语句,用来检测输入是否正确,若不正确则直接跳转到失败。F9运行程序,然后输入123456789作为Password,F8单步执行,一步一步观察。下
2017-07-27 14:17:58 551
转载 转载的ctf练习链接
正文如下:Author:4ido10nHome:http://www.secbox.cn/author/4ido10n学习的地方很多,不能一一列举,一些优秀的网址和博客可能也没有提到,大家补充吧:P就简单总结一些常用的吧,本人是十足的彩笔,还望大家多多指点,表哥们带我飞Orzhttp://www.sec-wiki.com/skill/ 安全技能(里面
2017-07-27 13:20:18 1488
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人