第一次做逆向

題目來源:ctf.show

1、下載附件,發現一個exe和一個txt文件

看看病毒加沒加殼,發現沒加那就直接放IDA

放到IDA找到main主函數,按F5反編譯工具就把他還原成類似C語言的代碼

然后我們看邏輯,將flag.txt文件的內容進行加密處理,并將結果寫入enflag.txt文件,所以上面那兩個文件enflag是被加密過的

?繼續看這段代碼,輸入的是Str,輸入Str這個值要干什么不知道,進去看看

發現這是從sub_401A70里面返回,然后進去看看具體做了什么

看不懂就扔豆包里看看代碼具體實現什么功能:

  • 輸入處理

    • 接收用戶輸入的字符串 Str(例如密碼或 flag)。
    • 獲取 Str 的長度,用于后續循環處理。
  • 加密轉換

    • 異或操作:對輸入字符串 Str 的每個字符與固定值 0x1F(十進制 31)進行異或運算。
    • 累加修改:將異或結果累加到另一個字符串 Str1 的對應位置上(Str1[i] += Str[i] ^ 0x1F)。
  • 結果驗證

    • 將處理后的 Str1 與預設的目標字符串 "DH~mqqvqxB^||zll@Jq~jkwpmvez{" 進行比較。
    • 若匹配成功,輸出正確信息(如 Correct!);否則輸出錯誤信息(Error!)。

所以黃色的那段字符串就是密鑰,我們寫個腳本給他解回去

出來這么一段字符串,然后我們得返回去看他之后有干了什么

?其實看到這就能猜出來是個加密操作了,str是密鑰,v13是一開始寫入flag.txt里的內容,v12是將v13加密之后寫入enflag.txt的內容,v15和v14都沒有用,我們繼續點進去看

發現返回sub_4014E0這個函數,對應著剛才的值a1,a4,a5

?看黃色那段,用到的函數就有sub_4010EB這個函數

看這段,RC4加密,前三段強特征(可以搜一下RC4加密)

知道是RC4加密我們拿廚師解一下

拿到flag

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/905845.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/905845.shtml
英文地址,請注明出處:http://en.pswp.cn/news/905845.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

docker(四)使用篇二:docker 鏡像

在上一章中,我們介紹了 docker 鏡像倉庫,本文就來介紹 docker 鏡像。 一、什么是鏡像 docker 鏡像本質上是一個 read-only 只讀文件, 這個文件包含了文件系統、源碼、庫文件、依賴、工具等一些運行 application 所必須的文件。 我們可以把…

k8s 1.10.26 一次containerd失敗引發kubectl不可用問題

k8s 1.10.26 一次containerd失敗引發kubectl不可用問題 開機k8s 1.10.26時,報以下錯誤 [rootmaster ~]# kubectl get no E0515 08:03:00.914894 7993 memcache.go:265] couldnt get current server API group list: Get "https://192.168.80.50:6443/api?…

今日積累:若依框架配置QQ郵箱,來發郵件,注冊賬號使用

QQ郵箱SMTP服務器設置 首先,我們需要了解QQ郵箱的SMTP服務器地址。對于QQ郵箱,SMTP服務器地址通常是smtp.qq.com。這個地址適用于所有使用QQ郵箱發送郵件的客戶端。 QQ郵箱SMTP端口設置 QQ郵箱提供了兩種加密方式:SSL和STARTTLS。根據您選…

無縫部署您的應用程序:將 Jenkins Pipelines 與 ArgoCD 集成

在 DevOps 領域,自動化是主要目標之一。這包括自動化軟件部署方式。與其依賴某人在部署軟件的機器上進行 rsync/FTP/編寫軟件,不如使用 CI/CD 的概念。 CI,即持續集成,是通過代碼提交創建工件的步驟。這可以是 Docker 鏡像&#…

4.2.3 Thymeleaf標準表達式 - 5. 片段表達式

在本次實戰中,我們通過 Thymeleaf 的片段表達式實現了模板的模塊化和復用。首先,我們定義了一個導航欄片段 navbar,并通過參數 activeTab 動態高亮當前激活的標簽。然后,我們在多個頁面(如主頁、關于頁和聯系頁&#x…

網安面試經(1)

1.說說IPsec VPN 答:IPsec VPN是利用IPsec協議構建的安全虛擬網絡。它通過加密技術,在公共網絡中創建加密隧道,確保數據傳輸的保密性、完整性和真實性。常用于企業分支互聯和遠程辦公,能有效防范數據泄露與篡改,但部署…

【C++/Qt shared_ptr 與 線程池】合作使用案例

以下是一個結合 std::shared_ptr 和 Qt 線程池(QThreadPool)的完整案例,展示了如何在多線程任務中安全管理資源,避免內存泄漏。 案例場景 任務目標:在后臺線程中處理一個耗時的圖像檢測任務,任務對象通過 …

【Unity】 HTFramework框架(六十五)ScrollList滾動數據列表

更新日期:2025年5月16日。 Github 倉庫:https://github.com/SaiTingHu/HTFramework Gitee 倉庫:https://gitee.com/SaiTingHu/HTFramework 索引 一、ScrollList滾動數據列表二、使用ScrollList1.快捷創建ScrollList2.ScrollList的屬性3.自定義…

經典案例 | 筑基與躍升:解碼制造企業產供銷協同難題

引言 制造企業如何在投產初期突破管理瓶頸,實現高效運營?G公司作為某大型集團的新建子公司,面對產供銷流程缺失、跨部門協同低效等難題,選擇與AMT企源合作開展流程優化。 項目通過端到端流程體系搭建、標準化操作規范制定及長效管…

【Python 操作 MySQL 數據庫】

在 Python 中操作 MySQL 數據庫主要通過 pymysql 或 mysql-connector-python 庫實現。以下是完整的技術指南,包含連接管理、CRUD 操作和最佳實踐: 一、環境準備 1. 安裝驅動庫 pip install pymysql # 推薦(純Python實現&#xff0…

記錄vsCode連接gitee并實現項目拉取和上傳

標題 在 VSCode 中上傳代碼到 Gitee 倉庫 要在 VSCode 中將代碼上傳到 Gitee (碼云) 倉庫,你可以按照以下步驟操作: 準備工作 確保已安裝 Git確保已安裝 VSCode擁有 Gitee 賬號并創建了倉庫 可以參考該文章的部分:idea實現與gitee連接 操…

【信息系統項目管理師】第6章:項目管理概論 - 31個經典題目及詳解

更多內容請見: 備考信息系統項目管理師-專欄介紹和目錄 文章目錄 第一節 PMBOK的發展【第1題】【第2題】【第3題】【第4題】【第5題】【第6題】第二節 項目基本要素【第1題】【第2題】【第3題】【第4題】【第5題】【第6題】【第7題】【第8題】【第9題】【第10題】第三節 項目經…

簡單介紹C++中線性代數運算庫Eigen

Eigen 是一個高性能的 C 模板庫,專注于線性代數、矩陣和向量運算,廣泛應用于科學計算、機器學習和計算機視覺等領域。以下是對 Eigen 庫的詳細介紹: 1. 概述 核心功能:支持矩陣、向量運算,包括基本算術、矩陣分解&…

生產級編排AI工作流套件:Flyte全面使用指南 — Core concepts Launch plans

生產級編排AI工作流套件:Flyte全面使用指南 — Core concepts Launch plans Flyte 是一個開源編排器,用于構建生產級數據和機器學習流水線。它以 Kubernetes 作為底層平臺,注重可擴展性和可重復性。借助 Flyte,用戶團隊可以使用 P…

Python 之類型注解

類型注解允許開發者顯式地聲明變量、函數參數和返回值的類型。但是加不加注解對于程序的運行沒任何影響(是非強制的,且類型注解不影響運行時行為),屬于 有了挺好,沒有也行。但是大型項目按照規范添加注解的話&#xff…

rocketmq并發消費

netty的handler 在netty的網絡模型中,在想bootstrap設置handler時, 都是在等待 事件 的到來,才會被調用的方法,都是被動的, 服務端等待 request 的到來,進行read, 然后主動調用writeAndFlush寫出去。 客戶…

React 播客專欄 Vol.9|React + TypeScript 項目該怎么起步?從 CRA 到配置全流程

👋 歡迎回到《前端達人 React 播客書單》第 9 期(正文內容為學習筆記摘要,音頻內容是詳細的解讀,方便你理解),請點擊下方收聽 你是不是常在網上看到 .tsx 項目、Babel、Webpack、tsconfig、Vite、CRA、ESL…

【PmHub后端篇】PmHub中基于自定義注解和AOP的服務接口鑒權與內部認證實現

1 引言 在現代軟件開發中,尤其是在微服務架構下,服務接口的鑒權和內部認證是保障系統安全的重要環節。本文將詳細介紹PmHub中如何利用自定義注解和AOP(面向切面編程)實現服務接口的鑒權和內部認證,所涉及的技術知識點…

芯片測試之X-ray測試

原理: X-ray是利用陰極射線管產生高能量電子與金屬靶撞擊,在撞擊過程中,因電子突然減速,其損失的動能會以X-Ray形式放出。而對于樣品無法以外觀方式觀測的位置,利用X-Ray穿透不同密度物質后其光強度的變化,…

QBasic 一款古老的編程語言在現代學習中的價值(附程序)

QBasic(Quick Beginner’s All-purpose Symbolic Instruction Code)是微軟公司于 1991 年推出的一款簡單易學的編程語言,作為BASIC語言的變種,它曾廣泛應用于教育領域和初學者編程入門。盡管在當今Python、Java等現代編程語言主導…