最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python滲透測試linux密碼激活的示例

 更新時間:2021年05月25日 11:13:50   作者:Fly&L  
這篇文章主要介紹了python滲透測試linux密碼激活的相關(guān)知識,通過一個crypt的示例給大家介紹的非常詳細,對大家學(xué)習(xí)python滲透知識有很大的幫助,需要的朋友可以參考下

上篇文章給大家介紹過 Python腳本破解Linux口令(crypt模塊)    感興趣的朋友點擊查看。

linux密碼破解

這段代碼通過分別讀取兩個文件,一個為加密口令文件(cryptPass),另一個為用于猜測的字典文件(key.txt)。
在testPass()函數(shù)中讀取字典文件,并通過crypt.crypt()進行加密,加密時需要一個明文密碼以及兩個字節(jié)salt(加密口令的前兩個字母),通過salt和明文密碼加密形成 cryptWord。
最后將cryptWord和cryptPass進行對比,如果相等,則這個word就是該用戶的密碼,否則不是。

先看crypt的示例

在這里插入圖片描述

可以看到鹽是添加在密文的前兩位的,所以將加密口令的前兩位提取出來為salt即可。

在Linux系統(tǒng)中,用戶的密碼被加密存儲在了 /etc/shadow 文件中
如下是 /etc/shadow中root用戶的字段

在這里插入圖片描述

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

編程之前準備:
1、創(chuàng)建密碼字典key.txt 。
2、我們將 /etc/shadow 文件復(fù)制到python腳本所在目錄,修改文件名為 shadow.txt

import crypt   ##導(dǎo)入Linux口令加密庫
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()

在這里插入圖片描述

參考文章
相關(guān)知識
1、split()方法以及關(guān)于str.split()[0]等形式內(nèi)容的詳細講解

str.split(str="", num=string.count(str)).

參數(shù):
str :分隔符,默認為所有的空字符,包括空格、換行(\n)、制表符(\t)等。
num : 分割次數(shù)。默認為 -1, 即分隔所有。
返回值:
Python split() 通過指定分隔符對字符串進行切片,如果參數(shù) num 有指定值,則分隔 num+1 個子字符串,返回分割后的字符串列表。
代碼示例:

輸入
str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print str.split( );          # 以空格為分隔符,包含 \n
print str.split(' ', 1 );    # 以空格為分隔符,分隔成兩個
輸出
['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', '\nLine2-abc \nLine4-abcd']

2、關(guān)于str.split()[0]等形式內(nèi)容的詳細講解

•輸入與輸出
>>> str="hello boy<[www.doiido.com]>byebye"
>>> str.split("[")[1].split("]")[0]
'www.doiido.com'
>>> str.split("[")[1].split("]")[0].split(".")
['www', 'doiido', 'com']

解析:
str.split("[")[1]. split("]")[0]輸出的是 [ 后的內(nèi)容以及 ] 前的內(nèi)容。 str.split("[")[1]. split("]")[0]. split(".") 是先輸出 [ 后的內(nèi)容以及 ] 前的內(nèi)容,然后通過 . 作為分隔符對字符串進行切片。
下面再對上面的例子進一步操作加深理解:

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[0]

得到:‘hell'

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[1]

得到:' b'(這里b的前面有個空格!)

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[3]

得到:‘iid'(這里得到的iid是第3個o后和第4個o前之間的內(nèi)容)

str="hello boy<[www.doiido.com]>byebye"
str.split("[")[0]

得到:‘hello boy<'(這里得到的hello boy<是第一個[之前的內(nèi)容)
解析:
str.split(“o”)[0]得到的是第一個o之前的內(nèi)容
str.split(“o”)[1]得到的是第一個o和第二個o之間的內(nèi)容
str.split(“o”)[3]得到的是第三個o后和第四個o前之間的內(nèi)容
str.split("[")[0]得到的是第一個 [ 之前的內(nèi)容
[n] 取值范圍(n,n+1)
注意:[ ]內(nèi)的數(shù)值必須小于等于split("")內(nèi)分隔符的個數(shù),否則會報錯

3、補充

str="hello boy<[www.doiido.com]>byebye"
str.split("o")[0:2]
得到的結(jié)果:
['hell', ' b']

解析:
str.split(“o”)[0:2]得到的是第一個o之前的內(nèi)容 + 第一個o和第二個o之間的內(nèi)容,這里第三個o前內(nèi)容取不到,是一個左閉右開區(qū)間。
[n:m]取值范圍(n,n+1)^(n+1,m)
引申:

str="hello boy<[www.doiido.com]>byebye"
print(str.split("o")[0:-1])
print(str.split("o")[0:-2])
print(str.split("o")[0:-3])
運行結(jié)果:
['hell', ' b', 'y<[www.d', 'iid', '.c']
['hell', ' b', 'y<[www.d', 'iid']
['hell', ' b', 'y<[www.d']

`str.split("o")[1:3]`取得的結(jié)果為
[' b', 'y<[www.d']

注:注意空格!注意空格!注意空格!

以上就是python滲透測試linux密碼激活的示例的詳細內(nèi)容,更多關(guān)于python滲透測試linux密碼破解的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python正則分析nginx的訪問日志

    python正則分析nginx的訪問日志

    最近工作中遇到一個需求,是要分析nginx的訪問日志,覺著利用python來實現(xiàn)比較合適,所以下面這篇文章主要介紹了利用python正則如何分析nginx的訪問日志,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-01-01
  • Python簡單實現(xiàn)阿拉伯?dāng)?shù)字和羅馬數(shù)字的互相轉(zhuǎn)換功能示例

    Python簡單實現(xiàn)阿拉伯?dāng)?shù)字和羅馬數(shù)字的互相轉(zhuǎn)換功能示例

    這篇文章主要介紹了Python簡單實現(xiàn)阿拉伯?dāng)?shù)字和羅馬數(shù)字的互相轉(zhuǎn)換功能,涉及Python針對字符串與列表的遍歷、運算等相關(guān)操作技巧,需要的朋友可以參考下
    2018-04-04
  • Windows+Anaconda3+PyTorch+PyCharm的安裝教程圖文詳解

    Windows+Anaconda3+PyTorch+PyCharm的安裝教程圖文詳解

    這篇文章主要介紹了Windows+Anaconda3+PyTorch+PyCharm的安裝教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-04-04
  • TensorFlow實現(xiàn)Softmax回歸模型

    TensorFlow實現(xiàn)Softmax回歸模型

    這篇文章主要介紹了TensorFlow實現(xiàn)Softmax回歸模型,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python實現(xiàn)的括號匹配判斷功能示例

    Python實現(xiàn)的括號匹配判斷功能示例

    這篇文章主要介紹了Python實現(xiàn)的括號匹配判斷功能,涉及Python棧與列表的存儲、遍歷、判斷等相關(guān)操作技巧,需要的朋友可以參考下
    2018-08-08
  • Python中多繼承與菱形繼承問題的解決方案與實踐

    Python中多繼承與菱形繼承問題的解決方案與實踐

    在Python這個靈活且功能強大的編程語言中,多繼承是一個既強大又復(fù)雜的概念,它允許一個類繼承自多個父類,從而能夠復(fù)用多個父類的屬性和方法,本文將深入解釋Python中的多繼承概念,詳細剖析菱形繼承問題,并探討Python是如何解決這一難題的,需要的朋友可以參考下
    2024-07-07
  • 使用Python提取文本中含有特定字符串的方法示例

    使用Python提取文本中含有特定字符串的方法示例

    這篇文章主要給大家介紹了關(guān)于如何使用Python提取文本中含有特定字符串的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Python中六大超時處理方法介紹

    Python中六大超時處理方法介紹

    在?Python?中,超時處理是一項非常常見的需求,尤其是在處理阻塞任務(wù)或并發(fā)任務(wù)時,本文整理了大家常用的六大超時處理方法,感興趣的小伙伴可以參考下
    2025-01-01
  • 基于python實現(xiàn)微信收紅包自動化測試腳本(測試用例)

    基于python實現(xiàn)微信收紅包自動化測試腳本(測試用例)

    這篇文章主要介紹了基于python實現(xiàn)微信收紅包自動化測試腳本,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-07-07
  • 解決python繪圖使用subplots出現(xiàn)標題重疊的問題

    解決python繪圖使用subplots出現(xiàn)標題重疊的問題

    這篇文章主要介紹了python繪圖使用subplots出現(xiàn)標題重疊的問題及解決方法,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-04-04

最新評論

赣榆县| 苍梧县| 巴青县| 枞阳县| 万载县| 二连浩特市| 淮安市| 共和县| 色达县| 浦东新区| 右玉县| 平乐县| 兴安盟| 安龙县| 花莲县| 丹阳市| 西畴县| 平罗县| 肇庆市| 富锦市| 商丘市| 宾川县| 寻甸| 凤城市| 林口县| 罗定市| 文登市| 庆云县| 霍山县| 朝阳区| 冷水江市| 七台河市| 涞水县| 梧州市| 伊金霍洛旗| 宣威市| 闽侯县| 玛曲县| 柘城县| 宜宾县| 东光县|