CTF学习之CODE

今年,国内各种CTF比赛应接不暇,第一次参加CTF是因为百度举办的BCTF。当时和几个好友一起参加了,过程相当的有趣,因此走上了这条不归路。

CTF真的是很考验脑力的一个东西,题目涉及的范围相当之广,每次参加CTF我都有一个很强烈的感受:知识完全不够用,还是关掉浏览器滚回去好好学习!

今天,又是SCTF开赛,排行榜上各种大神我等只能膜拜,决心好好学习,系统的学一下,今天先从CODE开始。

我想,在CTF里面比较常见的要属摩斯码了。就是由点和横线组成的特殊符号串。如下图:

图中已经给的很清楚了,对照着解就可以了。

排名第二的当属base64了,出现的次数好像比上面的要多啊:)不管了。

base64最显著的特征是什么呢?聪明的你们一定知道,那就是:如果字符串后面有一个=或者两个==那么肯定是base64这货无疑了。

但是,注意并不代表着没有这两个就不是base64了,要仔细的分析。base64另一个主要特征就是字符串的个数必定是4的倍数,那么

问题来了:如果不够怎么办呢?哈哈,前面说的=号就派上用场了,当个数不足4的倍数的时候就使用=号来填充。

一般解base64可以使用Python或者直接使用Firefox的hackbar扩展或者可以使用这个链接来进行解码。

其实这个网站提供了很多种编码的解码方法,可以收藏一下:)

还有一种使用比较少的code,叫braille。

有一定的方向性,很好记吧。

还有一种,很简单,就是手机键盘,给你一串数字,在手机上敲出来。

还有这一种,很少使用了,不过还是了解一下比较好。Semaphore,根据旗帜的不同位置来判断是哪个字母。

最后一个了:Bacon cipher

好了,差不多就写到这,只是基础,高级赛棍可以无视了!

时间: 2024-11-03 01:18:25

CTF学习之CODE的相关文章

小白的CTF学习之路2——二进制数据基础与运算(上)

今天的第二更,被我拖到了傍晚,嘿嘿,二进制这方面让本就数学不好的我很头疼,所以研究了一段时间 在学习之前我们先了解几个问题: 32位是几个字节? 01011100对于十进制是多少? 00001111向左位移两位结果是多少?有什么规律? 以补码形式表示的8位二进制数11111111,十进制为多少? 二进制和十进制有什么区别? 在学习前肯定会对问题里的一些属于感到蒙蔽,不要急,按照我写的一步一步往下看,再回头看这些问题,就会迎刃而解 为什么要用二进制? 可能有些人不了解我们放着好好地十进制不用为什么

7. 由一道ctf学习变量覆盖漏洞

0×00 背景 近期在研究学习变量覆盖漏洞的问题,于是就把之前学习的和近期看到的CTF题目中有关变量覆盖的题目结合下进一步研究. 通常将可以用自定义的参数值替换原有变量值的情况称为变量覆盖漏洞.经常导致变量覆盖漏洞场景有:$$使用不当,extract()函数使用不当,parse_str()函数使用不当,import_request_variables()使用不当,开启了全局变量注册等. 本篇收集了几个CTF中的题目作为例子,对$$,extract(),parse_str()的问题进行总结. 0×

MVC学习6 学习使用Code First Migrations功能 把Model的更新同步到DB中

 参考:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-new-field-to-the-movie-model-and-table 转:http://www.it165.net/pro/html/201403/10653.html 本文内容: 1,学习Entity Framework Code First 迁移功能(Migrations) 2,更新Model Class(Model

CTF学习路线指南(附刷题练习网址)

PWN,Reverse:偏重对汇编,逆向的理解: Gypto:偏重对数学,算法的深入学习: Web:偏重对技巧沉淀,快速搜索能力的挑战: Mic:则更为复杂,所有与计算机安全挑战有关的都算在其中 常规做法; A方向:PWN+Reverse+Gypto,随机搭配: B方向:Web+Misc组合: 都要学的内容: Linux基础.计算机组成原理,操作系统原理,网络协议分析: A方向: IDA工具使用(f5插件),逆向工程,密码学,缓冲区溢出等 书籍推荐: <RE for Beginners(逆向工程

小白的CTF学习之路1——程序与CPU

刚刚注册了这个博客园,尽量保持每日一更(*/ω\*) 今天看了po学院的教学视频,了解了程序是什么,如何在CPU当中工作的等各种之前未曾想过的问题,特此记录,以防忘记 首先我们学习程序与CPU之前需要了解这么几个问题: 1.什么是程序? 2.程序是由什么组成? 3.什么是机器语言? 3.运行中的程序存储在什么位置? 4.什么是内存地址? 5.程序的解释和运行的计算机部件叫什么? 我们带着问题来学习,将会有很大的效果 首先我们需要了解CPU是什么? CPU(Central Processing U

MVC5 Entity Framework学习之Code First迁移和部署

到目前为止,应用程序一直在本地IIS Express 上运行.为了让其他人能够通过互联网访问你的应用程序,你需要将它部署到WEB服务器. 本文章包含以下内容: 启用Code First迁移,迁移功能能够让你不必重建数据库就可以更改数据模型并将其部署到生产环境. 将应用程序部署到Windows Azure(可选) 1.启用Code First迁移 当你在开发应用程序时,你会对数据模型进行频繁的更改,随着每一次的更改,数据模型与数据库架构将不再一致.你已经对Entity Framework进行了配置

小白学习之Code First(二)

Code First约定: 注:EDMX模板 (SSDL:存储模型=>数据库表 ,CSDL:概念模型=>实体,C-S模型=>存储和概念模型之间的映射关系) System.Data.Entity.ModelConfiguration.Conventions 命名空间 此命名空间包含描述一组规格的类,在使用code first的时候,这些规则用于自动基于类定义配置概念模型(实体类) 在上下文中我们创建了DbSet类集合,CodeFirst会根据DbSet为我们创建数据库表 1 public

算法学习 - Gray Code(格雷码)的解释和c++实现

Gray Code(格雷码) 典型的二进制格雷码(Binary Gray Code)简称格雷码.当初是为了通信,现在则常用于模拟-数字转换和位置-数字转换中. 特点是:一组数的编码中,若任意两个相邻的代码只有一位二进制数不同,则称这种编码为格雷码. 格雷码属于可靠性编码,是一种错误最小化的编码方式. 格雷码是一种绝对编码方式. 由于格雷码是一种变权码. 格雷码的十进制数奇偶性与其码字中1的个数的奇偶性相同. 十进制转换为格雷码 好的上面我们已经介绍那么多了,那么我来说下如何把一个十进制的数字转换

小白学习之Code First(三)

上下文Context类中的base构造器的几个方法重置(1.无参 2.database name 3 . 连接字符串) 无参:如果基类base方法中无参,code first将会以 :{Namespace}.{Context class name} 为名字创建一个服务 1 public class CSContext:DbContext 2 { 3 public CSContext():base("name=ConnStr") //创建名为配置文件中指定的数据库 4 { 5 } 6 /