精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

初探CTF中特殊框架逆向

開發 架構
Qt 是一個1991年由Qt Company開發的跨平臺C++圖形用戶界面應用程序開發框架。它既可以開發GUI程序,也可用于開發非GUI程序,比如控制臺工具和服務器。

最近做題,逐漸遇到一些非 IAT32 ASR arm32,64(Linux)框架之外的 各種框架的re程序逆向分析。雖然題目難度不大,但著實令人耳目一新。而且這會不會是出題人釋放的信號,代表著未來re出題的新方向呢?本著認真嚴謹的態度,我想應該把它們做一個總結。

QT框架程序逆向

QT框架簡介

Qt 是一個1991年由Qt Company開發的跨平臺C++圖形用戶界面應用程序開發框架。它既可以開發GUI程序,也可用于開發非GUI程序,比如控制臺工具和服務器。Qt是面向對象的框架,使用特殊的代碼生成擴展(稱為元對象編譯器(Meta Object Compiler, moc))以及一些宏,Qt很容易擴展,并且允許真正地組件編程。另一方面,QT實現了全面支持iOS、Android、WP,它提供給應用程序開發者建立藝術級的圖形用戶界面所需的所有功能。

Qt框架應用還是很廣泛的,為了大家有一個直觀的概念,我用Everything搜索了下我電腦上的qt5core.dll,部分結果如下圖所示:

QT對象樹

Qt提供了一種機制,能夠自動、有效的組織和管理繼承自QObject的Qt對象,這種機制就是對象樹。

如圖所示,QObject 對象有且僅有一個父對象,但可以有很多個子對象。按照這種形式排列就會形成一個對象樹的結構,最上層是父對象,下面是子對象,在再下面是孫子對象,以此類推。當父對象析構的時候,這個子對象列表中的所有對象都會被析構,當析構子對象的時候,會自動從父對象的子對象列表中刪除。

那么Qt為什么要這樣設計呢?很簡單,方便內存管理我們在創建 QObject 對象時,提供一個父對象,那么我們創建的這個 QObject 對象會自動添加到其父對象的 children() 列表。這種機制在GUI程序開發過程中是相當實用的。值得注意的是,如果在構造時設置父對象為 NULL,那么當前實例不會有父對象存在,Qt 也不會自動析構該實例。

tips:QWidget的操作流程

QWidget 也是 QObject 的子類,所以在 parent 機制上是沒有區別的。然而實際使用時,對于 QWidget 和其派生類來說,在內存管理上要稍微復雜一些。例如QWidget的關閉流程,首先用戶點擊關閉按鈕觸發 close()槽,默認的 QCloseEvent 會將 widget隱藏起來,也就是觸發hide()槽。也就是說widget的關閉實際是將其隱藏,而沒有釋放內存,雖然我們有時會重寫 closeEvent 但也不會手動釋放 widget。

解決方案:需要設置 Qt::WA_DeleteOnClose 屬性,那么會在 close 之后接著調用 widget 的析構函數。

tips2:對象樹模型存在的問題

俗話說,百密終有一疏。對象樹模型的特殊析構規則,大概注定著它會爆出邏輯性漏洞。

來看下面這段程序:

#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
QApplication a(argc, argv);

QPushButton btn("button");
QWidget widget;
btn.setParent(&widget);
widget.show();

return a.exec();
}

運行結果:
關閉 widget 后程序崩潰,沒有正常結束

為什么程序會崩潰呢?通過上面的學習我們知道,C++規定了析構順序應該按照其創建順序的相反過程。而當我們先創建子對象,再創建父對象時,根據自動析構原理,我們析構父對象的時候會自動析構父對象,此時,子對象已經被析構了,然而代碼繼續執行,按照順序還要再析構一次子對象,這時候已經是第二次調用 子對象的析構函數了。C++中不允許調用兩次析構函數,最終導致程序崩潰。

避免問題的方案:

先創建父對象再創建子類對象,并且在創建子對象時就指定父對象;

盡量在堆上創建子對象;

QT程序的特殊機制--信號/槽

先來看一下官方介紹:

信號/槽是 Qt 框架引以為豪的機制之一。所謂信號槽,實際就是觀察者模式。當某個事件發生之后,比如,按鈕檢測到自己被點擊了一下,它就會發出一個信號(signal)。這種發出是沒有目的的,類似廣播。如果有對象對這個信號感興趣,它就會使用連接(connect)函數,意思是,將想要處理的信號和自己的一個函數(稱為槽(slot))綁定來處理這個信號。也就是說,當信號發出時,被連接的槽函數會自動被回調。這就類似觀察者模式:當發生了感興趣的事件,某一個操作就會被自動觸發。(這里提一句,Qt 的信號槽使用了額外的處理來實現,并不是 GoF 經典的觀察者模式的實現方式。)

Qt使用信號(Signal)和槽(Slot)機制用于對象間的通信。可以將信號和槽通過QObject對象的connet函數關聯起來。我們可以使用emit(Qt定義的語句)發出某個信號,與該信號關聯的槽就會接受到信號進行處理。

信號槽編寫

QT5的書寫方式

#include <QApplication>
#include <QPushButton>

int main(int argc, char *argv[])
{
QApplication app(argc, argv);

QPushButton button("Quit");
QObject::connect(&button, &QPushButton::clicked,
&app, &QApplication::quit);
button.show();
return app.exec();
}

QT4的書寫方式

int main(int argc, char *argv[]) 
{
QApplication a(argc, argv);
QPushButton *button = new QPushButton("Quit");
connect(button, SIGNAL(clicked()), &a, SLOT(quit()));
button->show();
return a.exec();
}

關鍵函數 connect

connect()函數最常用的一般形式:

connect(sender, signal, receiver, slot);

參數:

sender:發出信號的對象

signal:發送對象發出的信號

receiver:接收信號的對象

slot:接收對象在接收到信號之后所需要調用的函數

信號/槽的特殊性質

1.一個信號可以和多個槽相連

如果是這種情況,這些槽會一個接一個的被調用,但是它們的調用順序是不確定的。

2.多個信號可以連接到一個槽

只要任意一個信號發出,這個槽就會被調用。

3.一個信號可以連接到另外的一個信號

當第一個信號發出時,第二個信號被發出。除此之外,這種信號-信號的形式和信號-槽的形式沒有什么區別。

4.槽可以被取消鏈接

這種情況并不經常出現,因為當一個對象delete之后,Qt自動取消所有連接到這個對象上面的槽。

5.使用Lambda 表達式

在使用 Qt 5 的時候,能夠支持 Qt 5 的編譯器都是支持 Lambda 表達式的。

我們的代碼可以寫成下面這樣:

QObject::connect(&newspaper, static_cast
(const QString &)>(&Newspaper::newPaper),
[=](const QString &name)
{ /* Your code here. */ }
);

在連接信號和槽的時候,槽函數可以使用Lambda表達式的方式進行處理。

6.信號槽要求信號和槽的參數一致

所謂一致,是參數類型一致。如果不一致,允許槽函數的參數可以比信號的少,即便如此,槽函數存在的那些參數的順序也必須和信號的前面幾個一致起來。這是因為,你可以在槽函數中選擇忽略信號傳來的數據(也就是槽函數的參數比信號的少),但是信號根本沒有這個數據,槽函數中肯定無法使用。

[GKCTF 2021]QQQQT

virtualbox打包的QT程序。

奇怪的main函數....奇怪的關鍵函數。正向引用分析不了,main函數代碼非常奇怪...找不到關鍵函數調用。只能曲線救國一波,通過字符串搜索搜索到密文,再通過交叉引用定位到關鍵函數。

一個base58加密,解密即可:

mfc框架逆向

mfc框架簡介

老規矩,先來看官方解釋:

MFC庫是開發Windows應用程序的C++接口。MFC提供了面向對象的框架,采用面向對象技術,將大部分的Windows API 封裝到C++類中,以類成員函數的形式提供給程序開發人員調用。

簡單來說,MFC是一種面向對象,用于開發windows應用程序的框架,突出特點是封裝了大部分windows API,便于開發人員使用。

MFC程序的運行過程分為以下四步:

  • 利用全局應用程序對象theApp啟動應用程序。
  • 調用全局應用程序對象的構造函數,從而調用基類(CWinApp)的構造函數,完成應用程序的一些初始化工作,并將應用程序對象的指針保存起來。
  • 進入WinMain函數。在AfxWinMain函數中獲取子類的指針,利用指針實現上述的三個函數,從而完成窗口的創建注冊等工作。
  • 進入消息循環,一直到WM_QUIT。

怎樣逆向mfc程序

怎樣逆向mfc程序?一個非常樸實無華的問題(大霧)。這里介紹常用的兩種方法。

尋找程序初始化函數下斷點

AfxOleInit (COM初始化)
AfxEnableControlContainer (Ole初始化)
AfxGetModuleState (獲取模塊狀態)
CoInitialize (COM初始化 API)
GdiplusStartup (GDI+初始化)
SetUnhandledExceptionFilter (截獲異常處理)
Enable3dControls()
CWinApp()

使用工具

針對mfc程序逆向分析,前輩們已經開發了一些非常好用的小工具,站在巨人肩膀上的我們,掌握了工具的使用方法,便可大大提高mfc程序的分析效率。

常用工具:

  • 彗星小助手
  • xspy
  • ResourceHacker

[HDCTF2019]MFC

首先通過彗星小助手獲取窗口信息(關鍵是句柄)。

得到:

944c8d100f82f0c18b682f63e4dbaa207a2f1e72581c2f1b

一大串密文:

接著使用xspy掃描一下mfc窗口的各個框架。

掃到一個特殊的onMsg,0464,為什么說它特殊呢,因為他是唯一 一個沒有系統函數包裹的參數。

這里多提一嘴,xspy的使用方法是,拖拽小放大鏡到mfc窗口中(因為無知擱那雙擊了半天小放大鏡沒反應急得跳腳)。

接下來我們利用彗星小助手傳遞0464(記得轉換為10進制為1124)給mfc框。

這樣就得到了des key 找個des解密網站解密即可得到flag。

參考鏈接

??https://www.52pojie.cn/thread-497018-1-1.html??

??https://blog.csdn.net/liujiandu101/article/details/84390269??

??https://blog.csdn.net/baidu_41388533/article/details/111292441??

??https://blog.csdn.net/qq_34139994/article/details/105391611??

??https://www.52pojie.cn/thread-65091-1-1.html??

責任編輯:武曉燕 來源: FreeBuf.COM
相關推薦

2017-10-21 21:58:18

符號執行AngrCTF

2022-07-15 12:42:22

Linux內核裁剪

2009-09-08 13:47:11

SproutCoreHTML 5應用框架

2012-02-09 16:09:17

JavaScript

2012-03-16 13:43:29

2010-10-09 15:01:27

PhoneGapiPhoneAndroid

2009-03-02 09:22:39

OSGiJ2EEEclipse

2016-09-29 09:37:50

2024-04-30 14:50:13

2009-03-30 15:52:24

Windows Emb

2016-10-11 13:48:41

WebGLJavascriptWeb

2010-06-03 12:57:06

Hadoop

2009-06-24 13:22:27

Glassfish

2009-07-08 09:44:54

TDDViual Studi

2015-08-31 10:30:14

AndroidSuppCoordinator

2013-07-19 09:50:10

Java8API

2023-04-07 09:07:11

2021-12-28 18:37:46

Transformer數據人工智能

2011-05-17 14:11:06

Dijkstra

2011-04-18 09:53:08

Ruby
點贊
收藏

51CTO技術棧公眾號

免费日本视频一区| 噜噜噜狠狠夜夜躁精品仙踪林| 久久日韩精品一区二区五区| 日韩av不卡电影| 欧美日韩国产黄色| 欧美a在线观看| 亚洲电影一区二区三区| 久久久久久九九| 中文字幕网址在线| 激情综合网址| 国产小视频国产精品| 尤物国产在线观看| av老司机在线观看| 国产日韩亚洲欧美综合| 亚洲一区中文字幕| 中文字幕av影院| 亚洲澳门在线| 日韩精品免费在线播放| 亚洲小视频网站| 黄色在线观看www| 中国色在线观看另类| av一区二区三区免费| 亚洲综合成人av| 国内自拍一区| 自拍偷拍亚洲在线| 熟妇人妻久久中文字幕| 曰本一区二区| 91精品91久久久中77777| 国产午夜精品视频一区二区三区| 欧美精品a∨在线观看不卡 | 日日碰狠狠丁香久燥| 成人短视频在线| 久久蜜桃一区二区| 国产精品一区二区欧美| 国产精品国产av| 日韩成人av影视| 国产69久久精品成人| 免费毛片在线播放免费| 亚洲无中文字幕| 中文日韩在线视频| av黄色免费网站| 精品久久ai| 日韩欧美一级二级三级| 污视频网站观看| 久久野战av| 精品久久久久久久久久久| 国产高清不卡无码视频| 成人短视频在线| 成人免费在线播放视频| 午夜精品短视频| 成年人在线视频免费观看| 91在线观看免费视频| 国产亚洲精品久久飘花| 亚洲女同志亚洲女同女播放| 国产成人aaa| 91亚洲精品丁香在线观看| 国产高清免费观看| 国产一区二区伦理| 成人三级视频在线观看一区二区| aaa一区二区| 国产麻豆精品在线| 999精品视频一区二区三区| 国产免费黄色大片| 国产综合久久久久久鬼色| 国产日韩av在线| 一本色道久久综合精品婷婷 | 日本成熟性欧美| 久久99精品波多结衣一区| 99精品免费网| 欧美一级大胆视频| 手机av免费观看| 免费观看在线综合| 91久久精品日日躁夜夜躁国产| 亚洲性生活大片| 国内精品写真在线观看| 99久久精品无码一区二区毛片| 国产成人自拍一区| 91女人视频在线观看| 日韩av不卡在线播放| 98在线视频| 一区二区免费在线| 浮妇高潮喷白浆视频| 亚洲伦理影院| 91精品国产综合久久蜜臀| 日本一区二区免费视频| 午夜欧洲一区| 中文字幕亚洲无线码在线一区| 欧美成人短视频| 午夜欧美视频| 2019国产精品自在线拍国产不卡| 国产性生活视频| 精彩视频一区二区三区| 国内一区在线| 日本网站在线免费观看视频| 一区二区三区在线影院| 日本不卡在线观看视频| 91成人精品观看| 亚洲高清av在线| 91精品久久久久久久久不口人| 日韩黄色影视| 日本暖暖在线视频| 天天色天天爱天天射综合| 999精品视频在线| 精品嫩草影院| 精品国产区一区二区三区在线观看| 69av.com| 免费在线观看视频一区| 国产伦理一区二区三区| yes4444视频在线观看| 亚洲国产欧美在线| av污在线观看| 一区二区美女| 欧美日韩成人在线观看| 国产精品无码粉嫩小泬| 菠萝蜜视频在线观看一区| 一级二级三级欧美| 在线中文字幕播放| 欧美成人bangbros| 乱老熟女一区二区三区| 久久精品伊人| 国产精品免费区二区三区观看 | 久久品道一品道久久精品| 400部精品国偷自产在线观看| 美女一区网站| 亚洲国产精品专区久久| 国产精品精品软件男同| 久久一区激情| 久久riav| av午夜在线观看| 精品久久人人做人人爱| 亚洲综合图片一区| 蜜桃在线一区二区三区| 欧美少妇一区| 吞精囗交69激情欧美| 日韩国产一区三区| 日韩成人在线免费视频| 成人一道本在线| 成人污网站在线观看| 97精品资源在线观看| 一区二区三区视频免费在线观看| 中文字幕第15页| 久久综合色播五月| 成人毛片视频网站| 亚洲精品动态| 日本三级久久久| 视频国产在线观看| 精品久久久久久中文字幕一区奶水| 乱码一区二区三区| 在线播放一区| 精品无人乱码一区二区三区的优势| 日本三级韩国三级欧美三级| 日韩午夜激情av| 欧美人妻一区二区| 成人综合婷婷国产精品久久 | 日本成人三级| 韩国精品主播一区二区在线观看| 国产亚洲一区二区精品| 欧美亚洲另类小说| 欧美激情综合在线| 四季av一区二区三区| 亚洲乱码精品| 国产精品视频免费一区| 18video性欧美19sex高清| 亚洲精品狠狠操| 成年人晚上看的视频| 国产精品青草久久| 三级网站免费看| 日韩一区二区免费看| 欧美大香线蕉线伊人久久| 日韩中文视频| 欧美猛男性生活免费| 女人18毛片一区二区三区| 精品久久久久久久大神国产| 日韩毛片无码永久免费看| 精品亚洲国产成人av制服丝袜| 无码毛片aaa在线| 国偷自产av一区二区三区| 人人做人人澡人人爽欧美| 在线国产91| 欧美tk—视频vk| 69国产精品视频免费观看| 国产精品久久久久久久久久免费看| 免费黄频在线观看| 亚洲综合激情| 国产又爽又黄ai换脸| 精品无人区一区二区| 国产精品va在线播放| a免费在线观看| 日韩国产高清视频在线| 中文字幕理论片| 亚洲永久精品国产| 日本爱爱爱视频| 国产91丝袜在线播放0| 国产xxxxx在线观看| 亚洲理论电影网| 欧美在线播放一区| 日韩精品成人在线观看| 日本国产精品视频| fc2ppv国产精品久久| 亚洲老头同性xxxxx| 国产特级黄色片| 在线精品视频一区二区| 激情综合网五月婷婷| 国产精品久久久久久久久免费丝袜 | 久久夜色精品一区| 四虎国产精品免费| 免费看欧美女人艹b| 欧美日韩在线视频一区二区三区| 亚洲欧洲美洲一区二区三区| 欧美性xxxx69| 日韩成人午夜| 国产91视觉| 香蕉久久一区| 国产精品久久久久久久久粉嫩av| 精灵使的剑舞无删减版在线观看| 日韩中文字幕网| 成人在线播放视频| 日韩久久精品电影| 国产小视频免费观看| 91精品在线免费| 正在播放亚洲精品| 黑人精品xxx一区一二区| 久久这里只有精品免费| 中文字幕一区三区| 手机看片福利视频| 国产拍揄自揄精品视频麻豆| 久久丫精品国产亚洲av不卡| 成人黄页在线观看| 中文字幕1区2区| 国产盗摄精品一区二区三区在线| 国产91色在线观看| 美女一区二区视频| 久久99999| 麻豆免费精品视频| 欧美特级aaa| 日本成人超碰在线观看| 两根大肉大捧一进一出好爽视频| 亚洲国产网站| 久激情内射婷内射蜜桃| 伊人影院久久| 成人免费aaa| 国产精品入口66mio| 免费无遮挡无码永久视频| 国产亚洲在线| 欧美日韩一区二区在线免费观看| 国产精品一二| 成年人网站大全| 日韩精品国产欧美| 超碰在线公开97| 久国产精品韩国三级视频| 天天干天天玩天天操| 激情欧美日韩一区二区| 久久久精品视频国产| 国产成人午夜视频| 国产国语老龄妇女a片| 99久久婷婷国产综合精品| 性色av蜜臀av色欲av| 久久久国产精品午夜一区ai换脸| 欧美熟妇激情一区二区三区| 中文字幕亚洲一区二区av在线| а天堂中文在线资源| 亚洲品质自拍视频| 久久精品国产亚洲av高清色欲| 婷婷六月综合网| 一级久久久久久| 91精品一区二区三区久久久久久| а√中文在线资源库| 亚洲精品美女久久| www日韩tube| 欧美日韩xxx| 是的av在线| 国产啪精品视频| 亚洲免费一区三区| 欧美国产一区二区在线| 日韩一区欧美| 91免费黄视频| 人人爽香蕉精品| 国产精品无码自拍| 久久久久久久久久久久久女国产乱| 激情高潮到大叫狂喷水| 亚洲一区欧美一区| 精品成人无码久久久久久| 欧美一级一级性生活免费录像| 日韩性xxxx| 在线视频中文亚洲| 调教一区二区| 国产精品久久av| 99re91这里只有精品| 日本在线观看一区| 国产一区激情| 日韩一级理论片| 成人午夜电影久久影院| 9.1片黄在线观看| 亚洲成人免费视频| 又骚又黄的视频| 亚洲精品久久久一区二区三区 | 久久久久久久久久av| 亚洲成av在线| 国内精品久久国产| 欧美99久久| 国产高清视频网站| 99久久精品一区二区| 91杏吧porn蝌蚪| 日本高清不卡视频| 欧美一区二区三区激情| 久久精品国产亚洲7777| 东京一区二区| 国产高清一区视频| 国产精品成久久久久| 日韩毛片在线免费看| 国产91在线观看| 精品一区在线观看视频| 欧美性大战久久久久久久| 天堂在线资源8| 欧美黑人xxxx| 欧美一级做a| 亚洲欧美精品| 日韩av在线免费观看不卡| 插我舔内射18免费视频| 亚洲天堂中文字幕| 亚洲怡红院av| 在线日韩欧美视频| 欧美艳星kaydenkross| 久久这里精品国产99丫e6| 国内精品嫩模av私拍在线观看| 欧美成人手机在线视频| 中文文精品字幕一区二区| 久久久久久久久黄色| 亚洲黄色www| 欧美24videosex性欧美| 亚洲伊人一本大道中文字幕| 欧美www视频在线观看| 9久久婷婷国产综合精品性色 | 久久久91视频| 欧美一区二区三区免费观看视频| 欧美私人网站| 国产专区精品视频| 外国成人激情视频| 亚洲黄色av片| 亚洲欧洲综合另类| 国产喷水福利在线视频| 超碰精品一区二区三区乱码| 色8久久久久| 国产又粗又爽又黄的视频| 狠狠色狠狠色综合系列| 成人高潮免费视频| 日韩一区二区三区三四区视频在线观看| 免费成人黄色| 波多野结衣精品久久| 在线成人亚洲| 免费无码一区二区三区| 色综合夜色一区| gogogo高清在线观看免费完整版| 国产精品日韩久久久久| 欧美疯狂party性派对| 亚洲女人在线观看| 亚洲va国产天堂va久久en| 日韩一卡二卡在线| 日韩av成人在线观看| 成人精品天堂一区二区三区| 爱爱爱爱免费视频| 亚洲影视在线播放| 日韩欧美在线观看一区二区| 国产成人精品日本亚洲| 欧洲杯什么时候开赛| 91国内在线播放| 一区二区三区四区蜜桃 | 国产色99精品9i| 日本福利视频一区| 久久综合色8888| 亚洲怡红院av| 97精品在线视频| 欧美日韩精品一区二区视频| 青娱乐精品在线| 激情成人中文字幕| 8888四色奇米在线观看| 亚洲综合av影视| 国产视频一区在线观看一区免费| 精品人妻中文无码av在线 | 四虎国产精品免费| 色综合久久综合中文综合网| 香蕉视频在线看| 国产欧美日韩视频一区二区三区| 久久亚洲影院| 麻豆一区产品精品蜜桃的特点| 亚洲精品日韩久久久| 四虎国产精品成人免费影视| 欧美午夜性视频| 国产精品免费看片| 熟妇高潮一区二区三区| 国产欧美日韩91| 99精品视频免费全部在线| 黄大色黄女片18免费| 精品国产免费人成在线观看| 福利视频亚洲| 内射国产内射夫妻免费频道| 最近日韩中文字幕| 免费在线视频一级不卡| 999国产视频| 久草在线在线精品观看|