📜  使用Python进行道德黑客攻击

📅  最后修改于: 2022-05-13 01:55:21.768000             🧑  作者: Mango

使用Python进行道德黑客攻击

作为一名加密世界的计算机科学工程师,应该知道黑客活动是如何进行的。我们必须站在保护我们的世界免受网络犯罪分子侵害的前沿。

能够访问您不应该访问的系统被称为黑客攻击。例如,未经授权登录电子邮件帐户被视为入侵该帐户。未经授权访问远程计算机就是入侵该计算机。所以你可以看到有很多方法可以侵入一个系统,黑客这个词可以指很多东西,但主要概念是一样的。获得访问权限或能够做你不应该做的事情被认为是黑客攻击。

道德黑客:
破解密码或窃取数据?不,远不止这些。道德黑客是扫描漏洞并发现计算机或网络上的潜在威胁。道德黑客会发现计算机、Web 应用程序或网络中的弱点或漏洞,并将其报告给组织。所以,让我们一步一步地探索更多关于道德黑客的信息。

这些是各种类型的黑客:

  • 黑帽黑客:
    在这里,组织不允许用户对其进行测试。他们不道德地进入网站并从管理面板窃取数据或操纵数据。他们只关注自己以及他们将从个人数据中获得的个人经济利益的优势。他们可以通过改变导致公司损失更大程度的功能对公司造成重大损害。这甚至会导致你产生极端的后果。
  • 白帽黑客:
    在这里,我们寻找错误并以合乎道德的方式向组织报告。我们被授权作为用户测试网站或网络中的错误并向他们报告。白帽黑客通常从组织本身获取所有需要的有关应用程序或网络的信息进行测试。他们利用自己的技能在网站上线或被恶意黑客攻击之前对其进行测试。
  • 3.灰帽黑客:
    他们有时会访问数据并违反法律。但从来没有像黑帽黑客一样的意图,他们经常为共同利益而运作。主要区别在于他们公开利用漏洞,而白帽黑客私下为公司利用漏洞。

注意:要了解有关黑客类型的更多信息,请单击此处。

为什么Python编程进行黑客攻击

Python是一种广泛使用的通用高级编程语言。 Python是一种非常简单但功能强大的脚本语言,它是开源的和面向对象的,它有很好的库,可用于黑客和编写除黑客程序之外的非常有用的普通程序。在未来和现在的时代, Python非常流行,而且很容易学习,学习用Python hack 会很有趣,你将以最好的方式学习Python编程。市场上对Python开发人员的需求很大。
注意:要了解有关Python的更多信息,请单击此处。

密码是如何被黑的

每个人都知道密码不是以纯文本形式存储在网站的数据库中的。现在我们将了解如何在找到哈希(md5)格式的密码时破解纯文本密码。因此,我们获取 input_hash(数据库中的哈希密码)并尝试将其与密码文件(pass_doc)中每个纯文本密码的 md5 哈希值进行比较,当哈希值匹配时,我们只需显示其中的纯文本密码密码文件(pass_doc)。如果输入密码文件中不存在密码,它会说没有找到密码,只有在没有发生缓冲区溢出时才会发生这种情况。这种类型的攻击可以被认为是字典攻击。

下面是实现。假设包含密码列表的文本文件是 password.txt。

Python3
import hashlib
print("**************PASSWORD CRACKER ******************")
        
# To check if the password
# found or not.
pass_found = 0                                     
 
input_hash = input("Enter the hashed password:")
 
pass_doc = input("\nEnter passwords filename including path(root / home/):")
  
try:
    # trying to open the password file.
    pass_file = open(pass_doc, 'r')             
except:
    print("Error:")
    print(pass_doc, "is not found.\nPlease give the path of file correctly.")
    quit()
 
 
# comparing the input_hash with the hashes
# of the words in password file,
# and finding password.
 
for word in pass_file:
    # encoding the word into utf-8 format
    enc_word = word.encode('utf-8') 
             
    # Hashing a word into md5 hash
    hash_word = hashlib.md5(enc_word.strip())  
  
    # digesting that hash into a hexa decimal value    
    digest = hash_word.hexdigest()        
      
    if digest == input_hash:
        # comparing hashes
        print("Password found.\nThe password is:", word)  
        pass_found = 1
        break
 
# if password is not found.
if not pass_found:
    print("Password is not found in the", pass_doc, "file")  
    print('\n')
print("*****************  Thank you  **********************")


输入:

Enter the hashed password :  061a01a98f80f415b1431236b62bb10b 
Enter passwords filename including path(root/home/) : password.txt

输出:

Password found.
The password is : vivek 

输入:

Enter the hashed password :  aae039d6aa239cfc121357a825210fa3 
Enter passwords filename including path(root/home/) : password.txt

输出

Password found.
The password is : jessica