【问题标题】:Python searching through file with obfuscated charactersPython搜索带有混淆字符的文件
【发布时间】:2020-07-28 23:05:19
【问题描述】:

做一些challange,尽量使用Python来解决(据我所知,challange可以不使用Python完成)。 与隐写术有关的一项挑战是在图像中找到文件名和任何扩展名。使用 wordlist 进行 Steg 扫描可以解决这个问题,但有人向我提到,如果我将图像作为 word 文件打开,那么实际文本已经是可视的。

这是真的,但有超过 500 行: �~�b����:ӄ��M��Ɖ�� D�B`�“YOU_GOT_IT_RIGHT!”

我想看看是否有一种方法可以实现 Python 脚本来搜索文件,然后只显示所有英文字符(可能包括“!”、“_”、“{”、“}”)

任何帮助将不胜感激。

【问题讨论】:

  • 是的,这绝对是可能的,但由于 StackOverflow 不是代码编写服务,您应该尝试自己编写代码,如果遇到问题,请在此处询问。
  • 他们似乎有一点编程经验@barny,我们不要假设他们试图狡猾。我希望我的回答为他们指明了正确的方向。 :)
  • 根本不是作业,它来自网络挑战(Hackthebox 等),我已经使用上述方法(steg)解决了这个问题,但我试图通过 Python 找到一种方法。

标签: python steganography


【解决方案1】:

“所有英文字符”,假设您的意思是所有 ASCII 字符;其中包括大写和小写拉丁字母、数字和英文特殊符号:您可以使用 python 内置函数 filterstring.printables 迭代文件的内容,如下所示:

    filtered_contents = ''.join(filter(lambda s: s in string.printables, file_contents))

您的问题非常模糊,如果不为您解决问题,很难给您答案。有关作业帮助的问题,请参考community's on topic guidelines

请求家庭作业帮助的问题必须包括您已完成的作业的摘要 到目前为止已经解决了问题,并描述了你遇到的困难 已经解决了。

如果您对 Python 有一点了解,但在整理想法时遇到问题,我建议您探索python docs. 每当我遇到困难时,我发现手头有它非常有帮助。如果你想学习python,我推荐谷歌搜索。网上有大量的自助学习资源! :)

【讨论】:

  • 自订作业。仅仅因为它是选修课并不会改变它的本质。我总是这样为自己创造更多的工作。
  • “自订作业”我喜欢这个。你说得对。感谢您的意见,非常感谢。
【解决方案2】:

设法找到解决方案,并增加了能够传递任何文件的功能。 谢谢你的建议:)

import re
import json
import sys
import argparse

filename = str(sys.argv[1])

with open(filename,"r") as file:
    data = file.read()
    data = ''.join(i for i in data if ord(i)<128)
    print(data)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-14
    • 2012-03-14
    • 1970-01-01
    • 2016-09-10
    • 1970-01-01
    • 2010-11-02
    • 2021-09-27
    相关资源
    最近更新 更多