MISC – 3


Crack it


题目描述:

破解该文件,获得密码,flag格式为:flag{***********}

解题过程

shadow文件破解。在linux中,口令文件在/etc/passwd中,早期的这个文件直接存放加密后的密码,前两位是”盐”值,是一个随机数,后面跟的是加密的密码。为了安全,现在的linux都提供了 /etc/shadow这个影子文件,密码放在这个文件里面,并且是只有root可读的。

 

 

进制转换


题目描述

二进制、八进制、十进制、十六进行,你能分得清吗?

解题过程

自己写的脚本不堪入目,学习一波省赛的姿势

import binascii

text = "d87 x65 x6c x63 o157 d109 o145 b100000 d116 b1101111 o40 x6b b1100101 b1101100 o141 d105 x62 d101 b1101001 d46 o40 d71 x69 d118 x65 x20 b1111001 o157 b1110101 d32 o141 d32 d102 o154 x61 x67 b100000 o141 d115 b100000 b1100001 d32 x67 o151 x66 d116 b101110 b100000 d32 d102 d108 d97 o147 d123 x31 b1100101 b110100 d98 d102 b111000 d49 b1100001 d54 b110011 x39 o64 o144 o145 d53 x61 b1100010 b1100011 o60 d48 o65 b1100001 x63 b110110 d101 o63 b111001 d97 d51 o70 d55 b1100010 d125 x20 b101110 x20 b1001000 d97 d118 o145 x20 d97 o40 d103 d111 d111 x64 d32 o164 b1101001 x6d o145 x7e"
solution = ''
text2 = text.split(' ')
for x in text2:
    if x[0] == 'b': #binary
        solution += chr(int(x[1:],2))
    elif x[0] == 'x': # hexadecimal
        solution += x[1:].decode("hex")
    elif x[0] == 'd': # decimal
        solution += chr(int(x[1:]))
    elif x[0] == 'o': # octal
        solution += chr(int(x[1:],8))

print solution

basic


题目描述

黑,白,黑白,黑黑白白。

解题过程

比赛的时候拿的去年脚本,新脚本发现比较简单

from PIL import Image

x = 150
y = 900


im = Image.new("RGB", (x, y))
file = open('basic.txt')

for i in range(0, x):
    for j in range(0, y):
        line = file.readline().replace('(','').replace(')','') 
        rgb = line.split(",")
        im.putpixel((i, j), (int(rgb[0]), int(rgb[1]), int(rgb[2])))

im.show()  

去年脚本

from PIL import Image

pic = Image.new("RGB",(150,900))
fo = open("basic.txt","r")
pics = []
i = 0
while True:
	if i == 135000:
		break
	a = fo.readline()
	pics.append(a)
	i = i + 1
	str = ""
i = 0
for y in range (0,150):
	for x in range (0,900):
		s = pics[i].split(',')
		pic.putpixel([y,x],(int(s[0]),int(s[1]),int(s[2])))
		i = i + 1

pic.show()
pic.save("flag3.png")

Crypto – 3


affine


题目描述

y = 17x-8

flag{szzyfimhyzd}

解题过程

仿射密码 c = (17m – 8) % 26

a = 'szzyfimhyzd'
a1=[]
for i in a:
    a2 = ord(i)-97
    a1.append(a2)
print a1
for i in a1:
    for j in range(0,26):
        c = (17*j-8)%26
        if(c==i):
            print chr(j+97),

 

rsa


题目描述

请破解密文

解题过程

 

 

神秘的代码


题目描述

xor

发表评论

电子邮件地址不会被公开。 必填项已用*标注