<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          MISC中常用python腳本

          共 4822字,需瀏覽 10分鐘

           ·

          2021-09-21 14:24

          作者:Crazy  編輯:白帽子社區(qū)運營團隊




              "白帽子社區(qū)在線CTF靶場BMZCTF,歡迎各位在這里練習(xí)、學(xué)習(xí),BMZCTF全身心為網(wǎng)絡(luò)安全賽手提供優(yōu)質(zhì)學(xué)習(xí)環(huán)境,鏈接(http://www.bmzclub.cn/)

          "    




          柵欄密碼

          #!/usr/bin/env python# -*- encoding: utf-8 -*-  string = input("輸入:")frequency = [] # 獲得柵欄的欄數(shù)result_len = len(string)        # 柵欄密碼的總長度  25for i in range(2, result_len):   # 最小柵欄長度為2   逐個測試2,3,4....    if(result_len % i == 0):        # 當(dāng)柵欄密碼的總長度 模 i 余數(shù)為0  則這個i就是柵欄密碼的長度        frequency.append(i) for numberOfColumn in frequency:   # 循環(huán)可能分的欄數(shù)    RESULT = []                 #  保存各欄數(shù)的結(jié)果    for i in range(numberOfColumn):     #   i : 開始取值的位置        for j in range(i, result_len, numberOfColumn):  # 開始取值, 隔欄數(shù)取一個值, 起始位置是i            RESULT.append(string[j])    print("".join(RESULT))


          凱撒密碼:

          #!/usr/bin/env python# -*- encoding: utf-8 -*- import string inputStr = input("輸入:").lower()caseS1 = string.ascii_lowercase * 2 for j in range(26):    result_list = []    for i, num in zip(inputStr, range(len(inputStr))):        status = caseS1.find(i)        if status != -1:            result_list.append(caseS1[status + j])        else:            result_list.append(inputStr[num])    print("".join(result_list), "向右偏移了{}位".format(j))


          ROT13

          #!/usr/bin/env python# -*- coding: utf-8 -*-  import strings1 = ""rot13_1 = string.ascii_lowercase[:13]rot13_2 = string.ascii_lowercase[13:]result = []for i in s1:    find_1 = rot13_1.find(i.lower())    if find_1 != -1:        if i.isupper():            result.append(rot13_2[find_1].upper())            continue        result.append(rot13_2[find_1])    find_2 = rot13_2.find(i.lower())    if find_2 != -1:        if i.isupper():            result.append(rot13_1[find_2].upper())            continue        result.append(rot13_1[find_2])    if find_1 == -1 and find_2 == -1:        result.append(i)     print("". join(result))


          4進制

          s='1212 1230 1201 1213 1323 1012 1233 1311 1302 1202 1201 1303 1211 301 302 303 1331'l=s.split(' ')for i in l:    tmp=0    for j in range(len(i)):        tmp+=(4**j)*int(i[-j-1])print (chr(int(tmp)),end='')


          小數(shù)轉(zhuǎn)字符串

          import structimport binascii s=[72065910510177138000000000000000.000000,71863209670811371000000.000000,18489682625412760000000000000000.000000,72723257588050687000000.000000,4674659167469766200000000.000000,19061698837499292000000000000000000000.000000]a=''b=''for i in s:    i=float(i)    tmp=struct.pack('<f', i).hex()#小端    a+=tmpfor j in s:    j=float(j)    tmp=struct.pack('>f', j).hex()#大端    b+=tmp print (binascii.a2b_hex(a))print (binascii.a2b_hex(b))


          培根密碼

          letters1 = [

          'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z',]letters2 = [ 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',]cipher1 = [ "aaaaa", "aaaab", "aaaba", "aaabb", "aabaa", "aabab", "aabba", "aabbb", "abaaa", "abaab", "ababa", "ababb", "abbaa", "abbab", "abbba", "abbbb", "baaaa", "baaab", "baaba", "baabb", "babaa", "babab", "babba", "babbb", "bbaaa", "bbaab",]cipher2 = [ "AAAAA", "AAAAB", "AAABA", "AAABB", "AABAA", "AABAB", "AABBA", "AABBB", "ABAAA", "ABAAA", "ABAAB", "ABABA", "ABABB", "ABBAA", "ABBAB", "ABBBA", "ABBBB", "BAAAA", "BAAAB", "BAABA", "BAABB", "BAABB", "BABAA", "BABAB", "BABBA", "BABBB",] def bacon1(string): lists = [] # 分割,五個一組 for i in range(0, len(string), 5): lists.append(string[i:i+5]) # print(lists) # 循環(huán)匹配,得到下標(biāo),對應(yīng)下標(biāo)即可 for i in range(0, len(lists)): for j in range(0, 26): if lists[i] == cipher1[j]: # print(j) print(letters1[j], end="") print("") def bacon2(string): lists = [] # 分割,五個一組 for i in range(0, len(string), 5): lists.append(string[i:i+5]) # print(lists) # 循環(huán)匹配,得到下標(biāo),對應(yīng)下標(biāo)即可 for i in range(0, len(lists)): for j in range(0, 26): if lists[i] == cipher2[j]: # print(j) print(letters2[j], end="") print("")


          在流量包中查找sql注入語句

          #請先將pcapng包另存為pcapkeystr=r'.php?id=1%27and%20(select%20ascii(substr((select%20skyflag_is_here2333%20from%20flag%20limit%200,1),{0}' l=[None]*33 with open(r'C:\Users\Crazy\Desktop\2.pcap','r',encoding='ISO-8859-1') as f:    for i in f.readlines():        for j in range(1,34,1):            if keystr.format(j)+',' in i:                    tmp=i                l[j-1]=tmp.split("=")[-1]for i in l:    tmp=i.split(r'%23')[0]    print (chr(int(tmp)),end='')


          將十六進制寫入文件

          s = '68656C6C6F20776F726C64'a = bytes.fromhex(s)with open('123.txt','wb') as f:    f.write(hex(s))



          往期精彩文章




          第五空間網(wǎng)絡(luò)安全大賽 WHT WRITEUP
          羊城杯-WP
          工作中最常用的Linux命令,排查問題必備
          Python腳本統(tǒng)計每個字符的次數(shù)/頻數(shù)(字頻統(tǒng)計)




          技術(shù)支持:白帽子社區(qū)團隊
          — 掃碼關(guān)注我們 



          瀏覽 50
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  人人舔人人草 | 免费有码精品一区四区 | A级免费电影 | 99热在线播放 | 思思热免费视频在线观看 |