1. 程式人生 > 實用技巧 >【ctfshow】內部賽 密碼 簽到

【ctfshow】內部賽 密碼 簽到

這次的題目學到了好多編碼,寫下來總結一下吧。

1.base64編碼

MyU1RCU1Q2FtbldvNCUyOEYlMjMlMjZXYUo0Y3QrayUyMyslMjFEc0Zja0tVNjVHJTVDUGlZWFM0JTI0RmNqdyU1RGE0Y0V6ayUyNSslMjE5JTVCSVFTYWQlM0M0JTIxJTNBZ283WEMzekUlM0UlM0RCJTVEJTVDMyU1REYuayUyNCslMjFVZkdIazNYJTIxNCUyMWhobEkrUi5ISG4lM0QlMjFVNDUlMjdGKmslMjMqbiUzRkFHR2p3WCUyNjQlMjFRJTNEayUyMytCSlRGJTIxU1BhSzRjRXJpWlhkJTNGOUUlM0RrJTNCWCUyNDRCJTVDTG1wWEMzJTdDRiUyM1NQWm80QiUzQW9wJTVEWCUyMy5ESCUyQ2srWCUyODMlNUQlNUNhbW5XbzQlMjhGJTIzJTI2V2FKNGN0K2slMjMrJTIxRHNHR2pvVTY1RyU1Q1BpWVhTNCUyNEZjJTNDdiU1RGE0Y0V6ayUyNSslMjElM0Y5RFhTYWQlM0M0JTIxJTNBZ283WEM0JTIxRSUzRSUzREIlNUQlNUMzJTVERi5rJTI0KyUyMVAlMkNHSGszWCUyMTQlMjFoaG1uV04uSEhuJTNEJTIxVTQ1JTI3RiUyNmxIKm4lM0ZBR0dqd1glMjY0JTIxUSUzRGslMjMrQkpURiUyMVNQYUs0QkY2aVpYZCUzRjlFJTNEayUzQlglMjU0JTIxJTI0NG1wWEMzJTdDRiUyM1NQJTVEJTVDMnklM0FvcCU1RFglMjMuREglMkNrK1psMyU1RCU1Q2FtbldvNCUyOEYlMjMlMjZXUkQ0Y3QrayUyMyslMjFEc0dHandVNjVHJTVDUGlZWFM0JTI0RmQlM0N2JTVEYTRjRXprJTI1KyUyMTklNURFJTNEU2FkJTNDNCUyMSUzQWdvN1hDMyU3Q0UlM0UlM0RCJTVEJTVDMyU1REYuayUyNCslMjFVZkdIazNYJTIxNCUyMWhobW5XJTVFLkhIbiUzRCUyMVU0NSUyN0YlMjZsR1dvJTNGQUdHandYJTI2NCUyMVElM0RvNytCSlRGJTIxU1BhSzRCUTlpWlhkJTNGOUUlM0RrJTNCWCUyNTQlMjEvS21wWEMzJTdDRiUyM1NQWm41aCUzQW9wJTVEWCUyMy5ESCUyQ2srWm0zJTVEJTVDYW1uV280JTI4RiUyMyUyNldVMzRjdCtrJTIzKyUyMURzRmNrU1U2NUclNUNQaVlYUzQlMjZGJTIxJTI2RyU1RGE0Y0V6ayUyNSslMjE5JTVERFhTYWQlM0M0JTIxJTNBZ283WDM0LkUlM0UlM0RCJTVEJTVDMyU1REYuayUyNFglMjMlMjhlR0hrM1glMjE0JTIxaGhsSSpuLkhIbiUzRCUyMVU0NSUyN0YlMjZsSipuJTNGQUdHandYJTI2NCUyMSU1Q1BmaytCSlRGJTIxU1BhSzRCUTFpWlhkJTNGOUUlM0RrJTNCWCUyNDRCRXptcFhDMyU3Q0YlMjNTUCU1RCU1QzQlMjElM0FvcCU1RFglMjMuREglMkNrK1puMyU1RCU1Q2FtbldvNCUyOEYlMjMlMjZXUkQ0Y3QrayUyMyslMjFEc0dHandVNjVHJTVDUGlZWFM0JTI0RiUyNCUyNkclNURhNGNFemslMjUrJTIxJTNGOURYU2FkJTNDNCUyMSUzQWdvN1hDM3pFJTNFJTNEQiU1RCU1QzMlNURGLmslMjRYJTIzLkJHSGszWCUyMTQlMjFoaG1uV04uSEhuJTNEJTIxVTQ1JTI3RiUyNmslMjZXbyUzRkFHR2p3WCUyNjQlMjFROXNLK0JKVEYlMjFTUGFLNEJROWlaWGQlM0Y5RSUzRGslM0JYJTI0NEIlNUNMbXBYQzMlN0NGJTIzU1AlNUQlNUMyeSUzQW9wJTVEWCUyMy5ESCUyQ2szWCUyMTMlNUQlNUNhbW5XbzQlMjhGJTIzJTI2V1glMjE0Y3QrayUyMyslMjFEc0ZkJTI2T1U2NUclNUNQaVlYUzQlMjRGZCUyNkclNURhNGNFemslMjUrJTIxOSU1RERYU2FkJTNDNCUyMSUzQWdvN1hDM3hFJTNFJTNEQiU1RCU1QzMlNURGLmslMjQrMi4=

  首先看到的內容中,大小寫都有,也有‘=’ ,猜測是base64 。 先base64解碼

2.Escape加密/UnEscape解密

base64 解碼得到

3%5D%5CamnWo4%28F%23%26WaJ4ct+k%23+%21DsFckKU65G%5CPiYXS4%24Fcjw%5Da4cEzk%25+%219%5BIQSad%3C4%21%3Ago7XC3zE%3E%3DB%5D%5C3%5DF.k%24+%21UfGHk3X%214%21hhlI+R.HHn%3D%21U45%27F*k%23*n%3FAGGjwX%264%21Q%3Dk%23+BJTF%21SPaK4cEriZXd%3F9E%3Dk%3BX%244B%5CLmpXC3%7CF%23SPZo4B%3Aop%5DX%23.DH%2Ck+X%283%5D%5CamnWo4%28F%23%26WaJ4ct+k%23+%21DsGGjoU65G%5CPiYXS4%24Fc%3Cv%5Da4cEzk%25+%21%3F9DXSad%3C4%21%3Ago7XC4%21E%3E%3DB%5D%5C3%5DF.k%24+%21P%2CGHk3X%214%21hhmnWN.HHn%3D%21U45%27F%26lH*n%3FAGGjwX%264%21Q%3Dk%23+BJTF%21SPaK4BF6iZXd%3F9E%3Dk%3BX%254%21%244mpXC3%7CF%23SP%5D%5C2y%3Aop%5DX%23.DH%2Ck+Zl3%5D%5CamnWo4%28F%23%26WRD4ct+k%23+%21DsGGjwU65G%5CPiYXS4%24Fd%3Cv%5Da4cEzk%25+%219%5DE%3DSad%3C4%21%3Ago7XC3%7CE%3E%3DB%5D%5C3%5DF.k%24+%21UfGHk3X%214%21hhmnW%5E.HHn%3D%21U45%27F%26lGWo%3FAGGjwX%264%21Q%3Do7+BJTF%21SPaK4BQ9iZXd%3F9E%3Dk%3BX%254%21/KmpXC3%7CF%23SPZn5h%3Aop%5DX%23.DH%2Ck+Zm3%5D%5CamnWo4%28F%23%26WU34ct+k%23+%21DsFckSU65G%5CPiYXS4%26F%21%26G%5Da4cEzk%25+%219%5DDXSad%3C4%21%3Ago7X34.E%3E%3DB%5D%5C3%5DF.k%24X%23%28eGHk3X%214%21hhlI*n.HHn%3D%21U45%27F%26lJ*n%3FAGGjwX%264%21%5CPfk+BJTF%21SPaK4BQ1iZXd%3F9E%3Dk%3BX%244BEzmpXC3%7CF%23SP%5D%5C4%21%3Aop%5DX%23.DH%2Ck+Zn3%5D%5CamnWo4%28F%23%26WRD4ct+k%23+%21DsGGjwU65G%5CPiYXS4%24F%24%26G%5Da4cEzk%25+%21%3F9DXSad%3C4%21%3Ago7XC3zE%3E%3DB%5D%5C3%5DF.k%24X%23.BGHk3X%214%21hhmnWN.HHn%3D%21U45%27F%26k%26Wo%3FAGGjwX%264%21Q9sK+BJTF%21SPaK4BQ9iZXd%3F9E%3Dk%3BX%244B%5CLmpXC3%7CF%23SP%5D%5C2y%3Aop%5DX%23.DH%2Ck3X%213%5D%5CamnWo4%28F%23%26WX%214ct+k%23+%21DsFd%26OU65G%5CPiYXS4%24Fd%26G%5Da4cEzk%25+%219%5DDXSad%3C4%21%3Ago7XC3xE%3E%3DB%5D%5C3%5DF.k%24+2.

  得到這個我是很懵逼的,第一次接觸這玩意。百度了一下,看到如下解釋


escape的加密解密
在很多指令碼語言的應用當中,escape函式是一個可轉換編碼的函式,比如javascript 的 ajax 中,向a.php傳遞引數?city=北京,可先將"北京"用escape重新編碼,再進行傳遞,在伺服器端接收後再解碼才不會出現亂碼。escape一般用於傳遞URL引數和類似urlencode base64_encode函式是類似的。如上?city=北京

escape採用ISO Latin字符集對指定的字串進行編碼。所有的空格符、標點符號、特殊字元以及其他非ASCII字元都將被轉化成%xx格式

的字元編碼(xx等於該字元在字符集表裡面的編碼的16進位制數字)


瞭解了之後,那就解碼吧。

http://tool.chinaz.com/Tools/escape.aspx

結果為

3]\amnWo4(F#&WaJ4ct+k#+!DsFckKU65G\PiYXS4$Fcjw]a4cEzk%+!9[IQSad<4!:go7XC3zE>=B]\3]F.k$+!UfGHk3X!4!hhlI+R.HHn=!U45'F*k#*n?AGGjwX&4!Q=k#+BJTF!SPaK4cEriZXd?9E=k;X$4B\LmpXC3|F#SPZo4B:op]X#.DH,k+X(3]\amnWo4(F#&WaJ4ct+k#+!DsGGjoU65G\PiYXS4$Fc<v]a4cEzk%+!?9DXSad<4!:go7XC4!E>=B]\3]F.k$+!P,GHk3X!4!hhmnWN.HHn=!U45'F&lH*n?AGGjwX&4!Q=k#+BJTF!SPaK4BF6iZXd?9E=k;X%4!$4mpXC3|F#SP]\2y:op]X#.DH,k+Zl3]\amnWo4(F#&WRD4ct+k#+!DsGGjwU65G\PiYXS4$Fd<v]a4cEzk%+!9]E=Sad<4!:go7XC3|E>=B]\3]F.k$+!UfGHk3X!4!hhmnW^.HHn=!U45'F&lGWo?AGGjwX&4!Q=o7+BJTF!SPaK4BQ9iZXd?9E=k;X%4!/KmpXC3|F#SPZn5h:op]X#.DH,k+Zm3]\amnWo4(F#&WU34ct+k#+!DsFckSU65G\PiYXS4&F!&G]a4cEzk%+!9]DXSad<4!:go7X34.E>=B]\3]F.k$X#(eGHk3X!4!hhlI*n.HHn=!U45'F&lJ*n?AGGjwX&4!\Pfk+BJTF!SPaK4BQ1iZXd?9E=k;X$4BEzmpXC3|F#SP]\4!:op]X#.DH,k+Zn3]\amnWo4(F#&WRD4ct+k#+!DsGGjwU65G\PiYXS4$F$&G]a4cEzk%+!?9DXSad<4!:go7XC3zE>=B]\3]F.k$X#.BGHk3X!4!hhmnWN.HHn=!U45'F&k&Wo?AGGjwX&4!Q9sK+BJTF!SPaK4BQ9iZXd?9E=k;X$4B\LmpXC3|F#SP]\2y:op]X#.DH,k3X!3]\amnWo4(F#&WX!4ct+k#+!DsFd&OU65G\PiYXS4$Fd&G]a4cEzk%+!9]DXSad<4!:go7XC3xE>=B]\3]F.k$+2.

 又是一臉懵逼

3.base92加密/解密

(對base加密家族不是多麼瞭解,只能先空著,等徹底明白了,回來再補。)

直觀感受是 比 base64 多了些特殊符號,哈哈,

解密地址 http://ctf.ssleye.com/base92.html

結果如下

257532363446257532363438257532363443257532363438257532363531257532363439257532363446257532363532257532363443257532363530257532363445257532363444257532363438257532363446257532363531257532363441257532363531257532363533257532363438257532363530257532363442257532363443257532363438257532363530257532363530257532363441257532363441257532363532257532363445257532363442257532363532257532363439257532363531257532363441257532363446257532363443257532363531257532363438257532363442257532363442257532363439257532363530257532363441257532363439257532363531257532363442257532363446257532363530257532363441257532363443257532363533257532363443257532363441257532363532257532363438257532363531257532363531257532363532257532363530257532363439257532363439257532363443257532363445257532363530257532363532257532363443257532363443257532363444257532363441257532363530257532363443

  

4. 十進位制 轉換為16進位制

上面的結果是0-9的十進位制數,要得到最後的字串,得往16進位制上靠。 這裡要先取兩個十進位制數為一組,再轉16進位制。

指令碼程式碼如下。

import re
for i in re.findall(r".{2}","上面的結果"):
    print(chr(int(i,16)),end="")

  re.findall 是python的正則匹配,https://www.cnblogs.com/xieshengsen/p/6727064.html 這篇文章解釋得挺詳細的。

第二行 進行進位制轉換,再轉字串。

結果為

%u264F%u2648%u264C%u2648%u2651%u2649%u264F%u2652%u264C%u2650%u264E%u264D%u2648%u264F%u2651%u264A%u2651%u2653%u2648%u2650%u264B%u264C%u2648%u2650%u2650%u264A%u264A%u2652%u264E%u264B%u2652%u2649%u2651%u264A%u264F%u264C%u2651%u2648%u264B%u264B%u2649%u2650%u264A%u2649%u2651%u264B%u264F%u2650%u264A%u264C%u2653%u264C%u264A%u2652%u2648%u2651%u2651%u2652%u2650%u2649%u2649%u264C%u264E%u2650%u2652%u264C%u264C%u264D%u264A%u2650%u264C

 5. url 解碼。

這個url的格式有些特別,是因為他的結果是一些表情符號。

http://tool.chinaz.com/tools/urlencode.aspx

解碼結果為

♏♈♌♈♑♉♏♒♌♐♎♍♈♏♑♊♑♓♈♐♋♌♈♐♐♊♊♒♎♋♒♉♑♊♏♌♑♈♋♋♉♐♊♉♑♋♏♐♊♌♓♌♊♒♈♑♑♒♐♉♉♌♎♐♒♌♌♍♊♐♌

  沒想到這玩意居然是全世界通用的,,,長知識了。

6.十二進位制轉16進位制

十二星座的符號,聯想到十二進位制,分別對應 0123456789ab

白羊座 ♈ U+2648(3月21日 - 4月20日)
金牛座 ♉ U+2649(4月21日 - 5月21日)
雙子座 ♊ U+264A(5月22日 - 6月21日)
巨蟹座 ♋ U+264B(6月22日 - 7月22日)
獅子座 ♌ U+264C(7月23日 - 8月22日)
處女座 ♍ U+264D(8月23日 - 9月22日)
天秤座 ♎ U+264E(9月23日 - 10月23日)
天蠍座 ♏ U+264F(10月24日 - 11月22日)
射手座 ♐ U+2650(11月23日 - 12月21日)
摩羯座 ♑ U+2651(12月22日 - 1月20日)
水瓶座 ♒ U+2652(1月21日 - 2月19日)
雙魚座 ♓ U+2653(2月20日 - 3月20日)

  十二星座的順序依次為白羊座、bai金牛座、雙子座、巨蟹座、獅子座、處女座、天秤座、天蠍座、射手座、摩羯座、水瓶座、雙魚座。 水瓶座雖然是在一月份,但他卻不對應0。。。我也不知道為什麼是這個順序,才疏學淺,見諒。

他們對應的12進製為

7040917a486507929b083408822a63a1927490331821937824b42a099a811468a445284

  

轉16進位制 ,地址 https://tool.lu/hexconvert/

結果為

3636364336313637374234393546344334463536343535463333333634343744

7. 轉ASCII

此16進位制對應的文字字串 ,也就是轉 ASCII碼

https://www.bejson.com/convert/ox2str/

結果

666C61677B495F4C4F56455F3336447D

 到這又是一臉懵逼

8. base 16 解密

我是萬萬沒想到,還有個這玩意。可能根本原因就是對base家族不是那麼熟悉吧,後面需要補一補了。

https://www.qqxiuzi.cn/bianma/base.php?type=16

結果

flag{I_LOVE_36D}