婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > Python腳本激活Linux密碼的方法(crypt模塊)

Python腳本激活Linux密碼的方法(crypt模塊)

熱門標(biāo)簽:電銷機(jī)器人的風(fēng)險(xiǎn) 地圖標(biāo)注線上如何操作 開封語(yǔ)音外呼系統(tǒng)代理商 開封自動(dòng)外呼系統(tǒng)怎么收費(fèi) 應(yīng)電話機(jī)器人打電話違法嗎 手機(jī)網(wǎng)頁(yè)嵌入地圖標(biāo)注位置 400電話辦理哪種 河北防封卡電銷卡 天津電話機(jī)器人公司

環(huán)境 Kali Linux ,python版本2.7.13 。

我們利用Linux系統(tǒng)中的 crypt 模塊模擬了Linux系統(tǒng)中用戶密碼的加密,在Windows中是不存在這個(gè)庫(kù)的。

在Linux系統(tǒng)中,用戶的密碼被加密存儲(chǔ)在了 /etc/shadow 文件中。

如下是 /etc/shadow中root用戶的字段

root:$6$ql1UU7ZPwONL9NzX$/bz0GQ8.Ne.zqpF.L5rqPok.Zep0ypRU1X8v.Omrqnv1k6hVDzqTS1Vezencaxltk52X94eZMT/teVHI1Jwf6.:17767:0:99999:7:::

第二個(gè)字段是密碼部分的,我們把它單獨(dú)拿出來

$6$ql1UU7ZPwONL9NzX$/bz0GQ8.Ne.zqpF.L5rqPok.Zep0ypRU1X8v.Omrqnv1k6hVDzqTS1Vezencaxltk52X94eZMT/teVHI1Jwf6.

密碼部分的格式為:$id$salt$encrypted  

  • id是指用的哈希算法,id為1是MD5,id為5是SHA-256,id為6是SHA-512
  • salt 為鹽值
  • encrypted 為hash值,這里的hash值是密碼和鹽值一起加密之后得到的

在了解了shadow 文件中密碼的加密方式之后,我們就可以開始編寫python腳本了。

在編寫之前,我們需要準(zhǔn)備好密碼字典文件 key.txt 。只有當(dāng)密碼字典足夠大時(shí),才有可能破解出密碼。

然后我們將 /etc/shadow 文件復(fù)制到python腳本所在目錄,修改文件名為 shadow.txt

在編寫時(shí),我們創(chuàng)建兩個(gè)函數(shù):main() 和 testPass() 。main() 函數(shù)打開 shadow.txt 文件中的內(nèi)容,讀取其中的用戶名字段和密碼字段cryptPass。testPass() 函數(shù)將密碼字段中的 $id$salt 提取出來賦值給 salt 。然后讀取 key.txt 中的密碼字段,賦值給 word 。再利用Linux系統(tǒng)中python的一個(gè)crypt庫(kù),將word和salt一起作為參數(shù)傳進(jìn)去進(jìn)行加密,得到 cryptWord 。最后將cryptWord和cryptPass進(jìn)行對(duì)比,如果相等,則這個(gè)word就是該用戶的密碼,否則不是。

# -*- coding: utf-8 -*-
"""
Created on Mon Oct 29 15:01:54 2018
@author: 小謝
"""
import crypt   ##導(dǎo)入Linux口令加密庫(kù)
def testPass(cryptPass):
    salt=cryptPass[cryptPass.find("$"):cryptPass.rfind("$")]  ##獲得鹽值,包含$id部分
    dictFile=open('key.txt','r')
    for word in dictFile.readlines():
        word=word.strip("\n")
        cryptWord=crypt.crypt(word,salt)                   ##將密碼字典中的值和鹽值一起加密
        if (cryptWord==cryptPass):                           ##判斷加密后的數(shù)據(jù)和密碼字段是否相等
            print "[+]Found Password:"+word+"\n"       ##如果相等則打印出來
            return 
    print "[-] Password Not Found.\n"
    return 
 
def main():
    passFile=open('shadow.txt')
    for line in passFile.readlines():      ##讀取文件中的所有內(nèi)容
        if ":" in line:
            user=line.split(":")[0]                     ##獲得用戶名
            cryptPass=line.split(":")[1].strip(' ')   ##獲得密碼字段
            print "[*] Cracking Password for:"+user
            testPass(cryptPass)
main()

腳本運(yùn)行截圖,破解出了用戶tom和用戶xie的密碼。 

以上就是Python腳本激活Linux口令(crypt模塊)的詳細(xì)內(nèi)容,更多關(guān)于python破解linux口令的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

您可能感興趣的文章:
  • python滲透測(cè)試linux密碼激活的示例
  • python獲取linux和windows系統(tǒng)指定接口的IP地址的步驟及代碼
  • 聊聊python在linux下與windows下導(dǎo)入模塊的區(qū)別說明
  • linux centos 7.x 安裝 python3.x 替換 python2.x的過程解析
  • 在Linux下使用命令行安裝Python

標(biāo)簽:宿遷 常州 六盤水 山東 蘭州 成都 江蘇 駐馬店

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Python腳本激活Linux密碼的方法(crypt模塊)》,本文關(guān)鍵詞  Python,腳本,激活,Linux,密碼,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python腳本激活Linux密碼的方法(crypt模塊)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Python腳本激活Linux密碼的方法(crypt模塊)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 丹东市| 滕州市| 营口市| 怀化市| 积石山| 肃北| 曲麻莱县| 新野县| 偃师市| 永年县| 都昌县| 大埔区| 石河子市| 三门县| 桂东县| 章丘市| 乌鲁木齐县| 黄浦区| 衡阳县| 新巴尔虎右旗| 扶绥县| 含山县| 碌曲县| 山东| 南溪县| 公安县| 林州市| 金堂县| 翁牛特旗| 六枝特区| 建昌县| 南开区| 彭州市| 金门县| 京山县| 平利县| 昭觉县| 平原县| 宜良县| 定边县| 凤阳县|