使用 ChatGPT 进行逆向的一次尝试

admin 2022年12月22日11:31:39评论154 views字数 1856阅读6分11秒阅读模式

前言

最近 ChatGPT 很火,笔者也进行了尝试,发现惊为天人,可谓颠覆性的产品。下面是通过 ChatGPT 进行一道简单的 CTF 逆向题的过程。

正文

题目选取了攻防世界的一道简单逆向,题目名称为”logmein”。

首先拖动文件到 ida 打开,代码如下:

使用 ChatGPT 进行逆向的一次尝试

直接复制这部分代码发送给 ChatGPT

使用 ChatGPT 进行逆向的一次尝试

它会给你解释这段代码,这时候可以让它给你用 python 把代码写出来,便于理解

使用 ChatGPT 进行逆向的一次尝试

它给出的代码如下:

def main():    v9 = 0    v8 = ":"AL_RT^L*.?+6/46"    v7 = "ebmarah"    v6 = 7    print("Welcome to the RC3 secure password guesser.")    print("To continue, you must enter the correct password.")    print("Enter your guess: ", end="")    guess = input()    v3 = len(guess)    if v3 < len(v8):        sub_4007C0(v8)    for i in range(len(guess)):        if i >= len(v8):            sub_4007C0()        if guess[i] != chr(ord(v7[i % v6]) ^ ord(v8[i])):            sub_4007C0()    sub_4007F0()

此时可以帮它优化一下代码:

def sub_4007C0():    print('error')    exit()

def sub_4007F0(): print('correct')
def main(): v9 = 0 v8 = ":"AL_RT^L*.?+6/46" v7 = "ebmarah" v7 = v7[::-1] v6 = 7 print("Welcome to the RC3 secure password guesser.") print("To continue, you must enter the correct password.") print("Enter your guess: ", end="") guess = input() v3 = len(guess) if v3 < len(v8): sub_4007C0(v8) for i in range(len(guess)): if i >= len(v8): sub_4007C0() if guess[i] != chr(ord(v7[i % v6]) ^ ord(v8[i])): sub_4007C0() sub_4007F0()

main()

然后可以运行一下看看,能不能运行,手动测试能运行之后,告诉 ChatGPT 我给它修正了代码:

使用 ChatGPT 进行逆向的一次尝试

接下来尝试引导它解出密码:

使用 ChatGPT 进行逆向的一次尝试

尝试一段时间无果,遂让它给我写成解密代码:

使用 ChatGPT 进行逆向的一次尝试

继续尝试让它运行代码,告诉我结果,然而并没有成功:

使用 ChatGPT 进行逆向的一次尝试

但是,现在已经可以通过它给我写的解密代码,手动运行解出答案了!

使用 ChatGPT 进行逆向的一次尝试

完整代码如下:

def decrypt(ciphertext: str, key: str, v7: str) -> str:    v7 = v7[::-1]    v6 = 7    plaintext = ""    for i in range(len(ciphertext)):        plaintext += chr(ord(v7[i % v6]) ^ ord(key[i]))    return plaintext

print(decrypt(":"AL_RT^L*.?+6/46", ":"AL_RT^L*.?+6/46", "ebmarah"))

小结

从本次尝试中可以看出 ChatGPT 强大的能力,本次实验选用了一道简单的逆向题目,同时也进行了一些人工干预,但是毫无疑问 ChatGPT 成功写出了逆向代码,这对于逆向新手来说是一个巨大的帮助,相信随着不断的探索,ChatGPT 必然能发挥更大的作用。

最后,本文旨在讨论 ChatGPT 在逆向中的应用,请勿滥用 AI 影响比赛平衡。

原文地址:https://r0yanx.com/2022/12/09/%E4%BD%BF%E7%94%A8ChatGPT%E8%BF%9B%E8%A1%8C%E9%80%86%E5%90%91%E7%9A%84%E4%B8%80%E6%AC%A1%E5%B0%9D%E8%AF%95/


 热文推荐  


欢迎关注bgbing安全

原文始发于微信公众号(bgbing安全):使用 ChatGPT 进行逆向的一次尝试

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月22日11:31:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   使用 ChatGPT 进行逆向的一次尝试http://cn-sec.com/archives/1476506.html

发表评论

匿名网友 填写信息