Sky's blog

Sky's blog

热爱Web的蒟蒻一叶飘零/Flappypig&Whitzard

RSA算法研究
RSA算法原理1.选定密钥长度2.生成n(n是两个大质数p、q的积,n的二进制表示时所占用的位数就是之前选定的密钥长度)3.随机选定一个e1(要求e1与(p-1)(q-1)互质)4.选择一个e2(要求(e2e1)mod((p-1)*(q-1))=1)5.公开(n,e1)为公钥6.保留(n,e2)为私钥 至此:明文:plain,密文:crypto故别人可以使用公钥对明文加密 crypto=plain^{e1}\mod n然后你可以使用私钥对密文解密 plain=crypto^{e2}\mod nRSA论证密钥长度目前来看1024位以上的RSA尚且是安全的,密钥长度越长越安全,因为由2...
GCTF的一道php反序列化题目
分析源码首页源码:1234567891011<?php//error_reporting(E_ERROR & ~E_NOTICE);ini_set('session.serialize_handler', 'php_serialize');header("content-type;text/html;charset=utf-8");session_start();if(isset($_GET['src'])){ $_SESSION['src'] = $_GET['src']; highlight_file(__FILE__); print_r($...
CRC32爆破总结
0x00 前言说到CRC想必大家都知道,它的全称是循环冗余校验(Cyclic Redundancy Check, CRC)可以根据数据求出对应的CRC,用来发现传送过程中是否有比特错误然而,我们也应当知道,正面根据数据可以算出对应的CRC,那么根据CRC能否求出数据呢?答案是肯定的,对于低位数的CRC肯定是可以爆破出来的:最近在各个CTF平台的加密题里,遇到不少CRC32爆破的题目,今天来做个总结 0x01 5位及5位以下的CRC32爆破相对4~5位的CRC爆破,时间上也并不算长这里注意一下,dic的顺序个人感觉挺重要的5位以下就算了,33~127直接循环也可以但是我觉得5位的,如果顺序...
陕西杯web详解
so easy(Bool注入)没有回显,构造盲注,用ascii比较,爆出密码ascii(mid(passwd,%d,1))=%d本来可以用这个方法比较,但是逗号被过滤了所以思考构造方法假设passwd=abc123123mid((passwd)from(-1)):3mid((passwd)from(-2)):23mid((passwd)from(-3)):123 倒叙输出from的位数观察可知123323123 倒着看的第一位都是3,显然不行,无法截取出来,于是想到反转123332321 然后取最后一位即可故构造为:REVERSE(MID((passwd)from(-%s))先反转mid...
微机实验代码
实验一微机实验(基于8086的阶乘)(仅限于8以内)12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 ;--------------------------------------------DATA SEGMENT INPUT_TI...
Bugku-writeup
0x00 签到题没什么好说的,自己加群吧 0x01 web2查看源代码就有flag,不解释 0x02 文件上传测试直接改后缀即可拿到flag 0x03 计算题1<input type="text" class="input" maxlength="1" /> 就是个前端限制,把maxlength改成99,直接做数学题吧,出flag 0x04 web3查看源代码,unicode编码转化,在线有工具,转了就出flag 0x05 sql注入带回显的宽字节注入,按照套路吧,爆库名,表名,字段名都告诉你了,爆出库名即可,后面的...
CUMTCTF-初赛
0x00 Basic签到题根据题目,百度得知,使用本地hosts文件进行域名解析。(虽然用hosts翻过墙,但并不知道原来是这么一回事)WIN10 hosts目录:C:\Windows\System32\drivers\etc 添加如上字段即可。再刷新DNS即可。 encode 101CUMTCTF=~[];CUMTCTF={___:++CUMTCTF,$$$$:(![]+"")[CUMTCTF],__$:++CUMTCTF,$_$_:(![]+"")[CUMTCTF],_$_:++CUMTCTF,$_$$:({}+"")[CUMTCTF],$$_$:(...
CBC字节翻转攻击
0x00 相关介绍首先让我们看看CBC是如何工作的:加密过程:Plaintext:待加密的数据。IV:用于随机化加密的比特块,保证即使对相同明文多次加密,也可以得到不同的密文。Key:被一些如AES的对称加密算法使用。Ciphertext:加密后的数据。在这里重要的一点是,CBC工作于一个固定长度的比特组,将其称之为块。在本文中,我们将使用包含16字节的块。所以正如你所见:前一块的密文用来产生后一块的密文。所以由此我们就可以得出解密过程:值得注意的地方:前一块的密文是用来产生下一块明文;这就是字节翻转攻击开始发挥作用的地方。如果我们改变前一块密文的一个字节,然后与下一个解密后的组块异或,...
椭圆加密算法ECC
0x00 心酸的开头今天下午本想做完一道加密,快乐的去学习,结果这个加密愣是给我做到晚上,一怒之下,决定写下来,总不能浪费一下午的时光吧~ 0x01 ECC简介参考链接:http://www.8btc.com/eccmath大体上的意思是说,给你一个曲线F:y^2=x^3+ax+b你确定下来a和b,然后找一个在曲线F上的点G(x1,y1)然后自己随机生成一个k(私钥)然后生成公钥S=kG注意,这里的kG可不是k*G这么简单,这是几何意义上的:S=G+G+G+G+……+G(K个G)然后把公钥丢出去,私钥留给自己和RSA差不多啦重点应该是在于如何求S1G(x1,y1),P(x2,y2) 重点...
2017-CUMTCTF-Final
WebAppl3’s Fish拿到题目是个游戏界面,想到校平台上的一道贪吃蛇题目,先抓包后改包,把分数改成5001发送无果,说token错误,但是并不存在post表单,所以猜想是js的题目。然后查看源代码,在<script type="text/javascript" src="js/data.js"></script>发现问题,关键代码如下:1234567891011121314151617181920$.ajax({ type: "GET", contentType: "...
avatar
一叶飘零
苟有恒,何必三更眠五更起。