JarvisOJ Basic部分题目wp

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/re_psyche/article/details/83820347

1 握手包
在kali linux平台下 有aircrack -ng工具 可以直接暴力破解跑字典破解密码
aircrack-ng -w 字典 包文件名字
例如:
aircrack-ng -w /root/dic/wordlist.txt /root/1.cap
跑出密码即可
2 德军的密码
只要知道这是费娜姆密码直接上脚本就可以了

#--encoding:utf-8--
table = {'A':'1000001','N':'1001110',
         'B':'1000010','O':'1001111',
         'C':'1000011','P':'1010000',
         'D':'1000100','Q':'1010001',
         'E':'1000101','R':'1010010',
         'F':'1000110','S':'1010011',
         'G':'1000111','T':'1010100',
         'H':'1001000','U':'1010101',
         'I':'1001001','V':'1010110',
         'J':'1001010','W':'1010111',
         'K':'1001011','X':'1011000',
         'L':'1001100','Y':'1011001',
         'M':'1001101','Z':'1011010'}
key_list=[]  
value_list=[]  
for key,value in table.items():  
    key_list.append(key)  
    value_list.append(value)
#print key_list, value_list
def get_key_of_value(value):  
    if value in value_list:  
        get_value_index = value_list.index(value)
        #print type(key_list[get_value_index])
        return key_list[get_value_index]  
    else:  
        print ("你要查询的值%s不存在" %get_value)  
def how_to(a,b):
    if a in ['0','1'] and b in ['0','1']:
        if a == '1' and b == '1':
            return '0'
        elif a == '0' and b == '0':
            return '0'
        else:
            return '1'
    else:
        return 0
def bin_turn(arg):
    binstring = ''
    for i in arg:
        binstring += table[i]
    return binstring
def encrypt(plain,key):
    binkey = bin_turn(key)
    binplain = bin_turn(plain)
    chiper = ''
    if len(binplain)==len(binkey):
        for i in range(0,len(binplain)):
            chiper += how_to(binkey[i],binplain[i])
            #print
        return chiper
    else:
        return 0
def decrypt(chiper,key):
    binkey = bin_turn(key)
    plain = ''
    if len(chiper)==len(binkey):
        for i in range(0,len(chiper)):
            plain += how_to(binkey[i],chiper[i])
            #print binkey[i]
        #print plain
        return plain
    else:
        return 0  
key = 'WELCOMETOCFF'
chiper = '000000000000000000000000000000000000000000000000000101110000110001000000101000000001'
binplain = decrypt(chiper,key)
#print type(binplain)
plain = ''
for i in range(0,len(binplain),7):
    plain += str(get_key_of_value(binplain[i:i+7]))
print (plain)

3 -.-字符串
看格式就知道是莫尔斯电码,直接在线解密即可

4 A Piece Of Cake
字母频率题
在线解密

5 Shellcode
说实话,搞逆向的(只针对我这个菜X)真不会这个题
网上找到:

#include<stdio.h>
char shellcode[] = "PYIIIIIIIIIIIIIIII7QZjAXP0A0AkAAQ2AB2BB0BBABXP8ABuJIYIhkmKzyCDq4l4FQyBlrRWEahI1tLKT16Pnk1ftLnkPvwlnkW6fhNkan5pNkgF6XPOR8T5HsCivaN19okQSPlKRLvD6DNk3uelNkpTthRXuQ9znk2jEHLK1Ja0FaXkhcTtBink4tlKUQhnvQYotqo0ylnLMTO0SDEWZahOtMwqhG8kXteksLwTdh1e8aLKsja4uQ8kavLKdLrklK0ZeL7qjKLKUTLKuQM8k9bdvDeL1qiSnR5XVIXTOyjENikrphNnrnVnhlBrzHooKOYoyok93u7tOKCNyHzBBSnguLgTcbyxlNKOYoYoMYaUTHphRL2LupQQ0htsFRTn541x3E2Se5T26PyKK8QLTddJlIZFBvyoSeUTLIkrv0oKy8ORpMmlk7Gl6DBrm8SoyoioyoaxrOqh0XwP1xu1Qw1upBbHrmrED3T34qiKOxQLTdEZOyZCaxQmRxgPUp0hpnPn4srRe8BDSo2PT7axqOCWROpophSYpnSo04u83K72Peu70hBpCsqDpF4qHIMXpLQ429k98aEaJr1BF3Ca3bIozp01IPf0Yof5GxAA";
int main()
{
   int (*ret)() =(int(*)())shellcode;
    ret();
  //shellcode();
    return 0;
}

有空持续更新。。。。

猜你喜欢

转载自blog.csdn.net/re_psyche/article/details/83820347
今日推荐