NSSCTF Round#23 Misc个人专项赛

立山  金牌会员 | 2024-5-20 09:02:19 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 913|帖子 913|积分 2739

画师

flag为有意义单词
flag
  1. <mxfile host="app.diagrams.net" modified="2024-04-22T09:08:59.622Z" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 Edg/124.0.0.0" etag="MTy_pS9izUer-qoD0v4x" version="24.2.5" type="device">
  2.   <diagram name="第 1 页" id="zEMwM2VCor-ZNyr7IRSY">
  3.     <mxGraphModel dx="1321" dy="760" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
  4.       <root>
  5.         <mxCell id="0" />
  6.         <mxCell id="1" parent="0" />
  7.         <mxCell id="KFWuwmgogRQ2IQqMv47f-1" value=""  parent="1" vertex="1">
  8.           <mxGeometry x="540" y="30" width="20" height="180" as="geometry" />
  9.         </mxCell>
  10.         <mxCell id="KFWuwmgogRQ2IQqMv47f-2" value=""  parent="1" edge="1">
  11.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  12.             <mxPoint x="40" y="121" as="sourcePoint" />
  13.             <mxPoint x="120" y="121" as="targetPoint" />
  14.           </mxGeometry>
  15.         </mxCell>
  16.         <mxCell id="KFWuwmgogRQ2IQqMv47f-3" value=""  parent="1" edge="1">
  17.           <mxGeometry width="100" height="100" relative="1" as="geometry">
  18.             <mxPoint x="30" y="50" as="sourcePoint" />
  19.             <mxPoint x="140" y="170" as="targetPoint" />
  20.             <Array as="points">
  21.               <mxPoint x="120" y="170" />
  22.             </Array>
  23.           </mxGeometry>
  24.         </mxCell>
  25.         <mxCell id="KFWuwmgogRQ2IQqMv47f-4" value=""  parent="1" edge="1">
  26.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  27.             <mxPoint x="170" y="160" as="sourcePoint" />
  28.             <mxPoint x="210" y="50" as="targetPoint" />
  29.             <Array as="points">
  30.               <mxPoint x="180" y="50" />
  31.             </Array>
  32.           </mxGeometry>
  33.         </mxCell>
  34.         <mxCell id="KFWuwmgogRQ2IQqMv47f-5" value=""  parent="1" edge="1">
  35.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  36.             <mxPoint x="250" y="100" as="sourcePoint" />
  37.             <mxPoint x="310" y="100" as="targetPoint" />
  38.             <Array as="points">
  39.               <mxPoint x="280" y="160" />
  40.             </Array>
  41.           </mxGeometry>
  42.         </mxCell>
  43.         <mxCell id="KFWuwmgogRQ2IQqMv47f-7" value=""  parent="1" edge="1">
  44.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  45.             <mxPoint x="250" y="161" as="sourcePoint" />
  46.             <mxPoint x="360" y="161" as="targetPoint" />
  47.           </mxGeometry>
  48.         </mxCell>
  49.         <mxCell id="KFWuwmgogRQ2IQqMv47f-8" value=""  parent="1" edge="1">
  50.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  51.             <mxPoint x="414" y="100" as="sourcePoint" />
  52.             <mxPoint x="464" y="150" as="targetPoint" />
  53.             <Array as="points">
  54.               <mxPoint x="414" y="130" />
  55.             </Array>
  56.           </mxGeometry>
  57.         </mxCell>
  58.         <mxCell id="KFWuwmgogRQ2IQqMv47f-9" value=""  parent="1" edge="1">
  59.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  60.             <mxPoint x="410" y="100" as="sourcePoint" />
  61.             <mxPoint x="460" y="200" as="targetPoint" />
  62.             <Array as="points">
  63.               <mxPoint x="470" y="100" />
  64.             </Array>
  65.           </mxGeometry>
  66.         </mxCell>
  67.         <mxCell id="KFWuwmgogRQ2IQqMv47f-10" value=""  parent="1" edge="1">
  68.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  69.             <mxPoint x="414" y="151" as="sourcePoint" />
  70.             <mxPoint x="460" y="151" as="targetPoint" />
  71.           </mxGeometry>
  72.         </mxCell>
  73.         <mxCell id="KFWuwmgogRQ2IQqMv47f-11" value=""  parent="1" edge="1">
  74.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  75.             <mxPoint x="630" y="330" as="sourcePoint" />
  76.             <mxPoint x="690" y="330" as="targetPoint" />
  77.             <Array as="points">
  78.               <mxPoint x="660" y="390" />
  79.             </Array>
  80.           </mxGeometry>
  81.         </mxCell>
  82.         <mxCell id="KFWuwmgogRQ2IQqMv47f-12" value=""  parent="1" edge="1">
  83.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  84.             <mxPoint x="640" y="391" as="sourcePoint" />
  85.             <mxPoint x="740" y="391" as="targetPoint" />
  86.           </mxGeometry>
  87.         </mxCell>
  88.         <mxCell id="KFWuwmgogRQ2IQqMv47f-19" value=""  parent="1" edge="1">
  89.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  90.             <mxPoint x="610" y="140" as="sourcePoint" />
  91.             <mxPoint x="660" y="110" as="targetPoint" />
  92.             <Array as="points">
  93.               <mxPoint x="660" y="120" />
  94.             </Array>
  95.           </mxGeometry>
  96.         </mxCell>
  97.         <mxCell id="KFWuwmgogRQ2IQqMv47f-20" value=""  parent="1" edge="1">
  98.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  99.             <mxPoint x="670" y="140" as="sourcePoint" />
  100.             <mxPoint x="610" y="170" as="targetPoint" />
  101.             <Array as="points">
  102.               <mxPoint x="610" y="140" />
  103.             </Array>
  104.           </mxGeometry>
  105.         </mxCell>
  106.         <mxCell id="KFWuwmgogRQ2IQqMv47f-21" value=""  parent="1" edge="1">
  107.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  108.             <mxPoint x="610" y="140" as="sourcePoint" />
  109.             <mxPoint x="670" y="110" as="targetPoint" />
  110.             <Array as="points">
  111.               <mxPoint x="610" y="110" />
  112.               <mxPoint x="610" y="110" />
  113.             </Array>
  114.           </mxGeometry>
  115.         </mxCell>
  116.         <mxCell id="KFWuwmgogRQ2IQqMv47f-22" value=""  parent="1" edge="1">
  117.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  118.             <mxPoint x="210" y="500" as="sourcePoint" />
  119.             <mxPoint x="270" y="565" as="targetPoint" />
  120.             <Array as="points">
  121.               <mxPoint x="230" y="610" />
  122.             </Array>
  123.           </mxGeometry>
  124.         </mxCell>
  125.         <mxCell id="KFWuwmgogRQ2IQqMv47f-28" value=""  parent="1" edge="1">
  126.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  127.             <mxPoint x="470" y="380" as="sourcePoint" />
  128.             <mxPoint x="410" y="330" as="targetPoint" />
  129.             <Array as="points">
  130.               <mxPoint x="440" y="270" />
  131.             </Array>
  132.           </mxGeometry>
  133.         </mxCell>
  134.         <mxCell id="KFWuwmgogRQ2IQqMv47f-29" value=""  parent="1" edge="1">
  135.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  136.             <mxPoint x="470" y="331" as="sourcePoint" />
  137.             <mxPoint x="400" y="331" as="targetPoint" />
  138.           </mxGeometry>
  139.         </mxCell>
  140.         <mxCell id="KFWuwmgogRQ2IQqMv47f-35" value=""  parent="1" edge="1">
  141.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  142.             <mxPoint x="250" y="371" as="sourcePoint" />
  143.             <mxPoint x="320" y="371" as="targetPoint" />
  144.           </mxGeometry>
  145.         </mxCell>
  146.         <mxCell id="KFWuwmgogRQ2IQqMv47f-36" value=""  parent="1" edge="1">
  147.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  148.             <mxPoint x="710" y="110" as="sourcePoint" />
  149.             <mxPoint x="770" y="110" as="targetPoint" />
  150.             <Array as="points">
  151.               <mxPoint x="740" y="170" />
  152.             </Array>
  153.           </mxGeometry>
  154.         </mxCell>
  155.         <mxCell id="KFWuwmgogRQ2IQqMv47f-37" value=""  parent="1" edge="1">
  156.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  157.             <mxPoint x="720" y="171" as="sourcePoint" />
  158.             <mxPoint x="820" y="171" as="targetPoint" />
  159.           </mxGeometry>
  160.         </mxCell>
  161.         <mxCell id="KFWuwmgogRQ2IQqMv47f-38" value=""  parent="1" edge="1">
  162.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  163.             <mxPoint x="50" y="290" as="sourcePoint" />
  164.             <mxPoint x="100" y="340" as="targetPoint" />
  165.             <Array as="points">
  166.               <mxPoint x="100" y="290" />
  167.               <mxPoint x="50" y="340" />
  168.             </Array>
  169.           </mxGeometry>
  170.         </mxCell>
  171.         <mxCell id="KFWuwmgogRQ2IQqMv47f-40" value=""  parent="1" edge="1">
  172.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  173.             <mxPoint x="140" y="330" as="sourcePoint" />
  174.             <mxPoint x="170" y="300" as="targetPoint" />
  175.             <Array as="points" />
  176.           </mxGeometry>
  177.         </mxCell>
  178.         <mxCell id="KFWuwmgogRQ2IQqMv47f-41" value=""  parent="1" edge="1">
  179.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  180.             <mxPoint x="200" y="380" as="sourcePoint" />
  181.             <mxPoint x="140" y="300" as="targetPoint" />
  182.           </mxGeometry>
  183.         </mxCell>
  184.         <mxCell id="KFWuwmgogRQ2IQqMv47f-50" value=""  parent="1" edge="1">
  185.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  186.             <mxPoint x="549.5" y="330" as="sourcePoint" />
  187.             <mxPoint x="549.5" y="390" as="targetPoint" />
  188.           </mxGeometry>
  189.         </mxCell>
  190.         <mxCell id="KFWuwmgogRQ2IQqMv47f-55" value=""  parent="1" edge="1">
  191.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  192.             <mxPoint x="84" y="500" as="sourcePoint" />
  193.             <mxPoint x="134" y="550" as="targetPoint" />
  194.             <Array as="points">
  195.               <mxPoint x="84" y="530" />
  196.             </Array>
  197.           </mxGeometry>
  198.         </mxCell>
  199.         <mxCell id="KFWuwmgogRQ2IQqMv47f-56" value=""  parent="1" edge="1">
  200.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  201.             <mxPoint x="80" y="500" as="sourcePoint" />
  202.             <mxPoint x="130" y="600" as="targetPoint" />
  203.             <Array as="points">
  204.               <mxPoint x="140" y="500" />
  205.             </Array>
  206.           </mxGeometry>
  207.         </mxCell>
  208.         <mxCell id="KFWuwmgogRQ2IQqMv47f-57" value=""  parent="1" edge="1">
  209.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  210.             <mxPoint x="84" y="551" as="sourcePoint" />
  211.             <mxPoint x="130" y="551" as="targetPoint" />
  212.           </mxGeometry>
  213.         </mxCell>
  214.         <mxCell id="KFWuwmgogRQ2IQqMv47f-58" value=""  parent="1" edge="1">
  215.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  216.             <mxPoint x="350" y="509" as="sourcePoint" />
  217.             <mxPoint x="410" y="509" as="targetPoint" />
  218.             <Array as="points">
  219.               <mxPoint x="380" y="569" />
  220.             </Array>
  221.           </mxGeometry>
  222.         </mxCell>
  223.         <mxCell id="KFWuwmgogRQ2IQqMv47f-59" value=""  parent="1" edge="1">
  224.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  225.             <mxPoint x="360" y="570" as="sourcePoint" />
  226.             <mxPoint x="460" y="570" as="targetPoint" />
  227.           </mxGeometry>
  228.         </mxCell>
  229.         <mxCell id="KFWuwmgogRQ2IQqMv47f-60" value=""  parent="1" edge="1">
  230.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  231.             <mxPoint x="520" y="579.5" as="sourcePoint" />
  232.             <mxPoint x="550" y="509.5" as="targetPoint" />
  233.             <Array as="points">
  234.               <mxPoint x="550" y="499.5" />
  235.             </Array>
  236.           </mxGeometry>
  237.         </mxCell>
  238.         <mxCell id="KFWuwmgogRQ2IQqMv47f-61" value=""  parent="1" edge="1">
  239.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  240.             <mxPoint x="550" y="579.5" as="sourcePoint" />
  241.             <mxPoint x="580" y="509.5" as="targetPoint" />
  242.             <Array as="points">
  243.               <mxPoint x="580" y="499.5" />
  244.             </Array>
  245.           </mxGeometry>
  246.         </mxCell>
  247.         <mxCell id="KFWuwmgogRQ2IQqMv47f-63" value=""  parent="1" vertex="1">
  248.           <mxGeometry x="540" y="300" width="20" height="20" as="geometry" />
  249.         </mxCell>
  250.         <mxCell id="KFWuwmgogRQ2IQqMv47f-64" value=""  parent="1" edge="1">
  251.           <mxGeometry width="50" height="50" relative="1" as="geometry">
  252.             <mxPoint x="520" y="579.5" as="sourcePoint" />
  253.             <mxPoint x="520" y="509.5" as="targetPoint" />
  254.           </mxGeometry>
  255.         </mxCell>
  256.         <mxCell id="KFWuwmgogRQ2IQqMv47f-65" value=""  parent="1" vertex="1">
  257.           <mxGeometry x="670" y="440" width="20" height="220" as="geometry" />
  258.         </mxCell>
  259.         <mxCell id="wNboY0RjY8ZMtIGdafHw-1" value=""  parent="1" vertex="1">
  260.           <mxGeometry x="280" y="240" width="120" height="60" as="geometry" />
  261.         </mxCell>
  262.       </root>
  263.     </mxGraphModel>
  264.   </diagram>
  265. </mxfile>
复制代码

将透明度改为100%

以为是但是和flag{有点区别
垂直翻转一下

flag{easy_diagram}
easy_signin1

绝对的misc 由此而生的签到
教会ctfer们flag的是......
hint: image to 01 然后找一下2.png相对于1.png差别的地方
取黑白为二进制,对比差异
  1. from PIL import Image
  2. img1 = Image.open("1.png")
  3. img2 = Image.open("2.png")
  4. img1s = ''
  5. img2s = ''
  6. for i in img1.getdata():
  7.     if i == (255,255,255,255):
  8.         img1s += '0'
  9.     else:
  10.         img1s += '1'
  11. for i in img2.getdata():
  12.     if i == (255,255,255,255):
  13.         img2s += '0'
  14.     else:
  15.         img2s += '1'
  16. code = ''
  17. for i in range(len(img1s)):
  18.     if img1s[i] != img2s[i]:
  19.         code += img2s[i]
  20. with open('enc.c','w') as fw:
  21.     for i in range(0,len(code),8):
  22.         fw.write(chr(int(code[i:i+8],2)))
复制代码
或者
提示说:image to 01 然后找一下2.png相对于1.png差别的地方,一开始以为是异或,结果就是传统的找出2.png的二进制和1.png不一样的地方然后打印
  1. from PIL import Image
  2. import math
  3. import sys
  4. def is_black(pixel):
  5.     # 判断像素是否是黑色
  6.     # 如果红、绿、蓝通道的值都很低,则认为是黑色
  7.     return all(value < 10 for value in pixel[:3])
  8. def is_white(pixel):
  9.     # 判断像素是否是白色
  10.     # 如果红、绿、蓝通道的值都很高,则认为是白色
  11.     return all(value > 245 for value in pixel[:3])
  12. flag1=""
  13. flag2=""
  14. def scan_image(image_path):
  15.     global flag1
  16.     # 打开图像文件
  17.     image = Image.open(image_path)
  18.     # 获取图像的像素数据
  19.     pixels = image.load()
  20.     width, height = image.size
  21.     for y in range(height):
  22.         for x in range(width):
  23.             # 获取像素的RGB值
  24.             pixel = pixels[x, y]
  25.             # 判断像素是黑色还是白色
  26.             if is_black(pixel):
  27.                 flag1=flag1+"1"
  28.             elif is_white(pixel):
  29.                 flag1=flag1+"0"
  30.             else:
  31.                 print("err")
  32. def scan_image2(image_path):
  33.     global flag2
  34.     # 打开图像文件
  35.     image = Image.open(image_path)
  36.     # 获取图像的像素数据
  37.     pixels = image.load()
  38.     width, height = image.size
  39.     for y in range(height):
  40.         for x in range(width):
  41.             # 获取像素的RGB值
  42.             pixel = pixels[x, y]
  43.             # 判断像素是黑色还是白色
  44.             if is_black(pixel):
  45.                 flag2=flag2+"1"
  46.             elif is_white(pixel):
  47.                 flag2=flag2+"0"
  48.             else:
  49.                 print("err")
  50. # 调用函数扫描图像
  51. scan_image("1.png")
  52. scan_image2("2.png")
  53. for i in range(len(flag1)):
  54.     if flag1[i] != flag2[i]:
  55.         print(flag2[i],end="")
复制代码
得到
  1. 0010001101101001011011100110001101101100011101010110010001100101001111000110001001101001011101000111001100101111011100110111010001100100011000110010101100101011001011100110100000111110000010100111010101110011011010010110111001100111001000000110111001100001011011010110010101110011011100000110000101100011011001010010000001110011011101000110010000111011000010100111001101110100011100100110100101101110011001110010000001101011011001010111100100100000001111010010000000100010001000100011101100100000000010100000101001101001011011100111010000100000011011010110000101101001011011100010100000101001011110110000101000001001011100110111010001110010011010010110111001100111001000000110001101110010011110010111000001110100011011110101111101110100011110000111010000111011000010100000100101100011011010010110111000111110001111100110001101110010011110010111000001110100011011110101111101110100011110000111010000111011001000000000101000001010000010010110011001101111011100100010000000101000011010010110111001110100001000000110100100100000001111010010000000110000001110110010000001101001001000000011110000100000011000110111001001111001011100000111010001101111010111110111010001111000011101000010111001101100011001010110111001100111011101000110100000101000001010010011101100100000001010110010101101101001001010010111101100001010001000000010000000100000001000000010000000100000001000000010000001100011011010000110000101110010001000000110010101101110011000110111001001111001011100000111010001100101011001000101111101110100011110000111010000100000001111010010000001100011011010000110000101110010001010000110001101110010011110010111000001110100011011110101111101110100011110000111010001011011011010010101110100100000010111100010000001101011011001010111100101011011011010010010000000100101001000000110101101100101011110010010111001101100011001010110111001100111011101000110100000101000001010010101110100100000010111100010000001100011011100100111100101110000011101000110111101011111011101000111100001110100010110110010100001101001001000000010101100100000001100010010100100100000001001010010000001100011011100100111100101110000011101000110111101011111011101000111100001110100001011100110110001100101011011100110011101110100011010000010100000101001010111010010100100111011000010100010000000100000001000000010000000100000001000000010000000100000011000110110111101110101011101000010000000111100001111000010000001101001011011100111010000101000011001010110111001100011011100100111100101110000011101000110010101100100010111110111010001111000011101000010100100100000001111000011110000100000001000100010000000100010001110110000101000100000001000000010000000100000011111010010000000100000001000000000101000100000001000000010000000100000011100100110010101110100011101010111001001101110001000000011000000111011000010100111110100001010000010100010111100101111001000000110010101101110011000110111001001111001011100000111010001100101011001000101111101110100011110000111010000110001001000000011110100100000001100010011001000110010001011000011000100110010001101110010110000110001001100010011000100101100001100010011000100110001001011000011100100110110001011000011000100110001001101000010110000110001001100010011010100101100001100010011001000110111001011000011011100110111001011000011100100110000001011000011000100110001001110010010110000111001001100100010110000111000001110010010110000110001001100010011011100101100001100010011001000110110001011000011100000110101001011000011100000110111001011000011000100110001001101110010110000110001001100010011000100101100001100010011000100110001001011000011100000110110001011000011100000110100001011000011000100110010001100100010110000110001001100100011011100101100001100010011000100110001001011000011011100110101001011000011100000110001001011000011100100110111001011000011000100110010001100000010110000111001001101000010110000111001001100110010110000110001001100010011000000101100001110010011100000101100001101100011010100101100001110000011010000101100001100010011001000110111001011000011000100110000001101010010110000110110001110010010110000111000001101110010110000110001001100100011010100101100001110010011100000101100001100010011000000110111001011000011100000110111001011000011011100110000001011000011000100110000001110000010110000110001001100100011011100101100001110000011001100101100001110000011100000101100001100010011000000110101001011000011000100110000001101010010110000111001001110000010110000111001001101010010110000111000001110000010110000110001001100000011001000101100001110010011011000101100001100010011000100111000001011000011000100110000001101000010110000110001001100010011010000001010001011110010111100100000011001000110111001100011011100100111100101110000011101000110010101100100010111110111010001111000011101000010000000111101001000000110011001101100011000010110011101111011011101000110100001101001011100110101111101101001011100110101111101110100011010000110010101011111011001100110000101101011011001010101111101100110011011000110000101100111010111110110000101101110011001000101111101100011011000010110111001011111011110010110111101110101010111110110011001101001011011100110010001011111011101000110100001100101010111110111010001110010011101010110010101011111011001100110110001100001011001110111110100001010001011110010111100100000011001010110111001100011011100100111100101110000011101000110010101100100010111110111010001111000011101000011001000100000001111010010000000110111001101100010110000110001001100100011011100101100001100110011001100101100001101100011001100101100001100010011000000111000001011000011000100110010001101110010110000110001001100010011000000101100001100010011000000110010001011000011000100110010001100000010110000110001001100000011100100101100001100010011001000110100001011000011010100110110001011000011010000110111001011000011000100110001001110000010110000110001001100000011011100101100001100010011001000110101001011000011000100110010001100010010110000110001001100000011010000101100001110010011100000101100001100010011001000110011001011000011000100110000001101100010110000110001001100100011001100101100001101010011011100101100001101000011001000101100001100010011000100110111001011000011000100110010001101100010110000110011001110010010110000110100001110010010110000110001001100000011000100101100001100010011000100110101001011000011000100110000001100110010110000110001001100010011011100101100001100010011000100110111001011000011000100110000001110010010110000110001001100010011011100101100001110010011011000101100001101010011011100101100001101000011011000101100001100010011000000111001001011000011000100110001001101010010110000110001001100010011000000101100001100010011000000110100001011000011000100110000001101010010110000110001001100000011011000101100001100010011001000110011001011000011000100110000001100000010110000110001001100000011010100101100001101000011010000101100001101010011010100101100001100010011000100110100001011000011000100110010001101110010110000110100001101010010110000110110001100000010110000110001001100100011000100101100001100010011001000110010001011000011000100110001001100110010110000110001001100010011000000101100001100010011000000110100001011000011010000111000001011000011010100110011001011000011000100110001001100110010110000110001001100010011011100101100001100110011100100101100001101010011011000101100001100010011001000110101001011000011000100110000001101010010110000110001001100010011010000101100001100010011001000110001001011000011000100110000001100000010110000110001001100000011000100101100001101000011100100101100001101010011100000101100001100010011000000110000001011000011000100110010001101110010110000110101001101110010110000110101001100110010110000110001001100010011100000101100001101010011000000101100001101010011000100101100001100010011000000110110001011000011000100110000001101100010110000110001001100100011010000101100001100110011100000101100001101010011010000101100001100010011001000110111001011000011011000110000001011000011000100110000001110000010110000110001001100000011100100101100001100010011000100110010001011000011000100110001001101000010110000110001001100000011010100101100001100010011100100101100001100010011000100110100001011000011000100110001001100000010110000111001001110000010110000110001001100010011010000101100001100010011000100110101001011000011100000110001001011000011000100110001001101010010110000111000001101010010110000110110001101010010110000111001001110010010110000111000001101010010110000110110001101110010110000110100001101000010110000110011001101100010110000110001001100000011100000101100001100010011000000110010001011000011000100110000001101110010110000111001001100100010110000110011001100010010110000110100001101000010110000111000001110000010110000111000001110000010110000110001001100010011010100101100001101010011010100101100001101000011100000101100001101110011001100101100001110000011011000101100001101100011100000101100001110010011001100101100001100010011000100110010001011000011000100110010001100110010110000110111001110010010110000110001001100100011011100101100001100010011010100101100001101010011000100101100001100010011001000110000001011000011100100110110001011000011000100110010001100010010110000110111001101000010110000110001001100010011010000101100001110010011010000101100001100010011001000110000001011000011100000110010001011000011100100110001001011000011010000110001001011000011010000110100001011000011000100110000001101010010110000111000001100100010110000110111001100010010110000110011001101110010110000110001001100010011000000101100001100100011100000101100001101100011100100101100001110010011011000101100001100010011000000110000001011000011010000110010001011000011001000101100001101110011010100101100001100010011000100111000001011000011000100110010001100100010110000110011001101010010110000110100001110010010110000111000001110010000101000001010
复制代码
解密会得到一个cpp源码
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. string key = "";
  4. int main(){
  5.     string crypto_txt;
  6.     cin>>crypto_txt;
  7.     for (int i = 0; i < crypto_txt.length(); ++i){
  8.         char encrypted_txt = char(crypto_txt[i] ^ key[i % key.length()] ^ crypto_txt[(i + 1) % crypto_txt.length()]);
  9.         cout << int(encrypted_txt) << " ";
  10.     }   
  11.     return 0;
  12. }
  13. // encrypted_txt1 = 122,127,111,111,96,114,115,127,77,90,119,92,89,117,126,85,87,117,111,111,86,84,122,127,111,75,81,97,120,94,93,110,98,65,84,127,105,69,87,125,98,107,87,70,108,127,83,88,105,105,98,95,88,102,96,118,104,114
  14. // dncrypted_txt = flag{this_is_the_fake_flag_and_can_you_find_the_true_flag}
  15. // encrypted_txt2 = 76,127,33,63,108,127,110,102,120,109,124,56,47,118,107,125,121,104,98,123,106,123,57,42,117,126,39,49,101,115,103,117,117,109,117,96,57,46,109,115,110,104,105,106,123,100,105,44,55,114,127,45,60,121,122,113,110,104,48,53,113,117,39,56,125,105,114,121,100,101,49,58,100,127,57,53,118,50,51,106,106,124,38,54,127,60,108,109,112,114,105,19,114,110,98,114,115,81,115,85,65,99,85,67,44,36,108,102,107,92,31,44,88,88,115,55,48,73,86,68,93,112,123,79,127,15,51,120,96,121,74,114,94,120,82,91,41,44,105,82,71,37,110,28,69,96,100,42,2,75,118,122,35,49,89
复制代码
可以看到我们要异或的应该是0x44,所以我们把这个文件的每一字节提取出来然后去异或0x44并写入文件



得到

通过提示可以看到检察pngchunk


从这里开始往下复制,然后添加文件头89 50 4e 47 0d 0a 1a 0a即可得到

hint2提示抽象画,可以想到用npiet
去这里下载:http://www.bertnase.de/npiet/
然后看另一个png,10xbig_to_more_clear.png
用脚本放大十倍
  1. c = [122,127,111,111,96,114,115,127,77,90,119,92,89,117,126,85,87,117,111,111,86,84,122,127,111,75,81,97,120,94,93,110,98,65,84,127,105,69,87,125,98,107,87,70,108,127,83,88,105,105,98,95,88,102,96,118,104,114]
  2. m = 'flag{this_is_the_fake_flag_and_can_you_find_the_true_flag}'
  3. for i in range(len(m)):
  4.     print(chr(ord(m[i])^ord(m[(i+1)%len(m)])^c[i]),end='')
  5. # prisonrealmprisonrealmprisonrealmprisonrealmprisonrealmpri
  6. # key = prisonrealm
复制代码

得到字符串di`f{cfd7d1fd1ba254dcfa7f4155cfdadadc}
  1. key = 'prisonrealm'
  2. enc = [76,127,33,63,108,127,110,102,120,109,124,56,47,118,107,125,121,104,98,123,106,123,57,42,117,126,39,49,101,115,103,117,117,109,117,96,57,46,109,115,110,104,105,106,123,100,105,44,55,114,127,45,60,121,122,113,110,104,48,53,113,117,39,56,125,105,114,121,100,101,49,58,100,127,57,53,118,50,51,106,106,124,38,54,127,60,108,109,112,114,105,19,114,110,98,114,115,81,115,85,65,99,85,67,44,36,108,102,107,92,31,44,88,88,115,55,48,73,86,68,93,112,123,79,127,15,51,120,96,121,74,114,94,120,82,91,41,44,105,82,71,37,110,28,69,96,100,42,2,75,118,122,35,49,89]
  3. # flag[-1] = '}' 即flag[-1] = 125
  4. flag = []
  5. for i in range(len(enc)):
  6.     flag.append(enc[i]^ord(key[i%len(key)]))
  7. t = [0]*len(flag)
  8. t[0] = 125 ^ flag[-1]
  9. t[1:len(flag)] = flag[:-1]
  10. print()
  11. for i in range(len(flag)-1):
  12.     print(chr(t[i]),end='')
  13.     t[i+1] = flag[i]^t[i]
  14. print('}')
  15. # The-absolute-powerhouse,the-resulting-loneliness,the-person-who-teaches-you-to-love-is......NSSCTF{e@sy_s1gnin_0n_th1s_h@ppy_S3nday_@nd_w1sh_y03_hav3_fun!}
复制代码
flag{dge8f3hf3da45cd414f7affc5db5dadd}
NSSCTF{dge8f3hf3da45cd414f7affc5db5dadd}

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

立山

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表