开源项目 | CTFCrackTools - CTF工具框架

admin 2021年8月13日07:18:50评论1,002 views字数 1871阅读6分14秒阅读模式

CTFCrackTools

项目地址:https://github.com/0Chencc/CTFCrackTools

点击原文链接即可访问github仓库

CTFCrackTools - CTF工具框架

语言:Kotlin/Java

环境:JDK1.8

使用方法:

开源项目 | CTFCrackTools - CTF工具框架

(最后的插件调大家可能没看懂,可以看下文)

为什么需要Ta

工具开发的目的起初就是为了方便CTFer在比赛中使用。所以我收集了一些当下比较频繁出现的密码,一起加入到本框架中。并且提供了自定义插件添加的功能。

介绍

随着一代又一代版本的优化。我们从比较丑的UI走到了现在这个看起来还算可以的UI。但是我没有放弃对2.0版本的更新,在本项目中的README中,我留下了2.0的传送门。

目前支持Crypto类型的工具,我会在下方提供插件的编写方法。

其实熟悉的朋友都知道,这款工具开发到现在已经时长2年了。以及我最近也一直在更新,为什么我选择在这个时候才发公众号呢。因为我解决了目前所有影响体验的东西。

优化

1.由于大部分用户要求2.0版本。我将3.0版本增加了之前2.0版本的顶部菜单栏功能。希望能优化体验。

2.解决了在Linux/MacOS下生成setting.json文件会出现在文件夹根目录的问题

3.解决了当一行的字数超过一定时,输入框没有限制宽度,不会换行的问题。现在会自动换行

4.修复若干密码解码时的BUG

······

多套主题

本框架支持多套外观使用,将Setting.json中的Theme改为1,2,3分别对应三套主题,什么都不填,或者随便填。都会使用默认主题,为第4套主题。

注意,代码为1的主题,仅支持JDK8及以下JDK版本。不支持JDK9和JDK10。

插件编写

考虑到多数CTFer在python方面的功底很好,所以我选择用python来作为本框架的插件语言。使用了jython来支持python在java虚拟机的运行。


开源项目 | CTFCrackTools - CTF工具框架

(该代码就是我在上文中使用方法所使用的插件)

编写方法:


#-*- coding:utf-8 -*-'''{  title:插件标题  type:插件类型  author:作者昵称  dialog:插件变量  detail:插件详情}'''def main(a):    return a

type:为什么需要写插件类型呢,我其实有个野心。是打算尽可能的把能遇到的题目类型的解密方式都写进去,比如pwn这些。

dialog:这个呢,其实我考虑到了有些解密方式需要多个密钥。故此设计了这个,如果声明了多个密钥,则程序会弹出多个输入框。

main:本工具插件调用十分简单,但是限制就是,必须传入数据。

因为工具调用其实就是通过def mian(a)传入数据然后获取return的数据。


放一个例子,由团队的奶权师傅写的维吉利亚密码:

#!/usr/bin/env python# -*- coding: utf-8 -*-'''{Title:VigenereDecryptoAuthor:naiquanType:cryptoDialog:keyDetail:维吉利亚密码解码}'''def vigenereDecrypto(ciphertext,key):    ascii='ABCDEFGHIJKLMNOPQRSTUVWXYZ'    keylen=len(key)    ctlen=len(ciphertext)    plaintext = ''    i = 0    while i < ctlen:        j = i % keylen        k = ascii.index(key[j])        m = ascii.index(ciphertext[i])        if m < k:            m += 26        plaintext += ascii[m-k]        i += 1    return plaintextdef main(ciphertext,key):    return vigenereDecrypto(ciphertext.replace(" ","").upper(),key.replace(" ","").upper())

声明了key这个密钥。

那么我在运行过程中,调用该插件的话,会出现

开源项目 | CTFCrackTools - CTF工具框架

调用该插件的全过程

开源项目 | CTFCrackTools - CTF工具框架

The End

从2年前到现在,这款工具曾经出现在很多人的硬盘里,也因为很多工具的兴起使大家开始替换这款工具。我从曾经开发这款工具就一直坚持开源,在未来的以后也不会闭源。这款工具也见证了CTF行业的发展。我对CTF也很热爱,可惜当时困在高中学业里,在封闭学校我无法进行知识更新。我会在大学的生活里继续学习,希望这款工具,以及我本人,不会被时代淘汰。

谢谢大家这么长久以来的支持。

本文始发于微信公众号(米斯特安全团队):开源项目 | CTFCrackTools - CTF工具框架

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年8月13日07:18:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   开源项目 | CTFCrackTools - CTF工具框架http://cn-sec.com/archives/354014.html

发表评论

匿名网友 填写信息