日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[Bugku][Crypto][CTF][2020]Crypto 1-20 write up

發布時間:2023/12/10 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [Bugku][Crypto][CTF][2020]Crypto 1-20 write up 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

工具:CaptEncoder
https://www.freebuf.com/sectool/188397.html
Convert:https://pan.baidu.com/s/17YPXfvBHl_HyA00AffTBvg 密碼:skqw
推薦網站:http://ctf.ssleye.com/

Crypto 1
關鍵字: 莫斯 /.-
步驟:莫斯解碼得:FLAG%u7bD3FCBF17F9399504%u7d,%u7b web解碼得{,%u7d web解碼得}。中間的大寫轉換為小寫,組合起來就是flag。
莫斯轉碼:https://www.atool99.com/morse.php

Crypto 2
關鍵字: 柵欄密碼 兩個一組
步驟:在線柵欄 直接解密

Crypto 3
關鍵字: Ook.
步驟: ook解碼,https://www.splitbrain.org/services/ook在線工具,直接ook!to text

Crypto 4
關鍵字: [±<>] brainfuck
知識點: brainfuck語言用> < + - . , [ ]八種符號來替換C語言的各種語法和命令
步驟:https://www.splitbrain.org/services/ook,然后Brainfuck to Text

Crypto 5
關鍵字: 莫斯密碼
知識點:
步驟:查表一一對應 或者在線 http://ctf.ssleye.com/morse.html
https://blog.csdn.net/qq_42777804/article/details/90742966

Crypto 6
關鍵字:base64
步驟:AA和==相似 A超出base64范圍
移4位后 base64解碼

import base64 #'miwen.txt' miwen = open('miwen.txt').readline() res = '' # 存儲結果 for i,enu in enumerate(miwen):res += chr(ord(enu)-4) print('ascii碼偏移后結果:'+res) res = base64.b64decode(res).decode() print('base64解碼后結果:'+res)

Crypto 7
關鍵字: 移位密碼
步驟:按照 2 1 6 5 3 4移位

# 此腳本用來根據順序調整密文以得到明文 miwen = open('miwen.txt').readline() tem = '' # 臨時存儲 resList = [] # 結果數組 res = '' # 最終結果 for i,enu in enumerate(miwen): # 先把密文每六個一組分好tem += enuif len(tem)==6 or i == len(miwen) - 1:resList.append(tem)tem = '' for i in range(len(resList)):res += resList[i][1]+resList[i][0]+resList[i][4]+resList[i][5]+resList[i][3]+resList[i][2] print(res)

Crypto 9 一段base64 Hex to text
步驟:1.Base64解密 2.unescape 3.Hex to text .4.unescape
5.ascii碼轉字符 6.Decode HTML

https://blog.csdn.net/qq_40980391/article/details/79194128

Crypto 8 .!?
關鍵字: short ook編碼
步驟:

Crypto 10
關鍵字:累次加密

步驟:看到這串字符…像常見的提交flag{xxx}格式…
先看一下ascii的編碼吧,試一下是否和flag有關系~
gndk的10進制的ASCII碼分別是:103 110 100 107
flag的10進制的ASCII碼分別是 :102 108 97 103
發現ASCII以此減少 1 2 3 4,所以以此類推后面會繼續減少…

# 此腳本用于解決累次加密 miwen = open('miwen.txt').readline() for j in range(10):for i,enu in enumerate(miwen):print(chr(ord(enu)-i-j),end = '')print()

Crypto11 托馬斯.杰斐遜
步驟:寫腳本進行移位
含有bugku的即為答案
https://www.cnblogs.com/0yst3r-2046/p/11810574.html

Crypto 12 告訴你個秘密
知識點: 鍵盤密碼
步驟:1. hex后 base64
2.r5yG lp9I BjM tFhBT6uh y7iJ QsZ bhM 圍著的字母大寫
flag{TONGYUAN}

Crypto 13 不是md5
關鍵字: hex
666c61677b616537333538376261353662616566357d

Crypto 14 貝斯家族
關鍵字: base91
知識點: base91字符較多

步驟:http://www.atoolbox.net/Tool.php?Id=935
@iH<,{bdR2H;i6*Tm,Wx2izpx2!

Crypto 15 python(N1CTF)
知識點: Feistel加密 DES算法
步驟:https://www.cnblogs.com/0yst3r-2046/p/12123653.html

Crypto 16 進制轉換
關鍵字:
步驟: b開頭是二進制,o開頭是八進制,d開頭是十進制,x開頭是十六進制。

# 此腳本針對不同進制字符,統一轉換成十進制,再轉成字符 miwen = open('text.txt').readline().split(' ') res = '' for i in range(len(miwen)):if miwen[i][0] == 'b':res += chr(int(miwen[i][1:],2))elif miwen[i][0] == 'd':res += chr(int(miwen[i][1:],10))elif miwen[i][0] == 'o':res += chr(int(miwen[i][1:],8))elif miwen[i][0] == 'x':res += chr(int(miwen[i][1:],16)) print(res)

Crypto 17 affine加密
關鍵字: 仿射加密
知識點: affine加密,仿射加密,其實也就是明文和密文之間有一個一次函數變化,y=kx+b,只不過為了讓y能轉換成對應的密文,要對kx+b取余。
步驟:
一般常用的字符集就是a-z,分別對應0-26。
并且,一次函數能用于做密碼是因為他有個特性,就是每一個x對應唯一的y,所以為了保證取余之后也能保持這種特性,就要求k與字符集的大小(這里是26)互質。
兩種方法,一種是用解密函數,一種是暴力破解,哪種都可以。

# 此腳本用于暴力破解仿射加密 # 加密函數:y=17x-8 # 密文: szzyfimhyzd miwen = "szzyfimhyzd"def baoLi(miwen): # 暴力解密miwen = miwen.lower() # 全部轉換成小寫res = ''for i,enu in enumerate(miwen): # 遍歷每一個字母for j in range(26): # 遍歷字母表if (17 * j - 8) % 26 == ord(enu) - 97: # 比對加密結果res += chr(j + 97)break # 成功直接跳出return res #仿射密碼解密 #改進歐幾里得算法求線性方程的x與y def get(a, b):if b == 0:return 1, 0else:k = a //bremainder = a % bx1, y1 = get(b, remainder)x, y =y1, x1 - k * y1return x, y def jiemi(miwen): # 解密函數解密miwen = miwen.lower()res = ''k = 17b = -8#求a關于26的乘法逆元x, y = get(k, 26)a1 = x % 26for i, enu in enumerate(miwen):res += chr((a1 * (ord(enu)- 97 - b) % 26)+ 97)return resprint("暴力解密結果:"+baoLi(miwen)) print("解密函數解密:"+jiemi(miwen))

Crypto 18 Crack it
關鍵字: shadow join
步驟:https://blog.csdn.net/Onlyone_1314/article/details/89287327?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-5.not_use_machine_learn_pai&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-5.not_use_machine_learn_pai

Crypto 19 rsa
關鍵字: RSA
知識點:

步驟:
1.給出了N、e、密文,RsaCtfTool把N分解成大素數,求出p、q
2.知道p、q,求出d后,解密函數是M =C^D mod N
https://blog.csdn.net/shenzhang7331/article/details/84311280
最后一行修改 print(n2s(m))

Crypto 20 來自宇宙的信號
關鍵字: 銀河字母

步驟:百度搜索銀行字母 一一對應

總結

  • 有兩種符號組成,每幾個一組,每組符號個數不一定相同的加密結果,考慮摩斯密碼;
  • 每組有五個字符,一共有三種類型的字符,可能是short ook加密,一般是.!?這三種字符;
  • 每組有五個字符,一共有七種類型的字符,可能是brainfuck加密,一般是±[]<>.這七種字符;
  • \123\123\123,類似的反斜杠加數字的組合,是escape加密結果;
  • &#102;&#55;,類似的組合是encode HTML的結果;
  • &#x26;&#x23;,類似的組合是encode HTML的結果;
  • \u0053\u0074,類似的組合是escape加密結果;
  • \u0053\u0074,類似的組合是escape加密結果;

參考博客:https://www.cnblogs.com/qiaowukong/p/13657062.html

總結

以上是生活随笔為你收集整理的[Bugku][Crypto][CTF][2020]Crypto 1-20 write up的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。