原创 6.9 Windows驅動開發:內核枚舉進線程ObCall回調

在筆者上一篇文章《內核枚舉Registry註冊表回調》中我們通過特徵碼定位實現了對註冊表回調的枚舉,本篇文章LyShark將教大家如何枚舉系統中的ProcessObCall進程回調以及ThreadObCall線程回調,之所以放在一起來講解是

原创 7.6 Windows驅動開發:內核監控FileObject文件回調

本篇文章與上一篇文章《內核註冊並監控對象回調》所使用的方式是一樣的都是使用ObRegisterCallbacks註冊回調事件,只不過上一篇博文中LyShark將回調結構體OB_OPERATION_REGISTRATION中的ObjectTy

原创 6.7 Windows驅動開發:內核枚舉LoadImage映像回調

在筆者之前的文章《內核特徵碼搜索函數封裝》中我們封裝實現了特徵碼定位功能,本章將繼續使用該功能,本次我們需要枚舉內核LoadImage映像回調,在Win64環境下我們可以設置一個LoadImage映像加載通告回調,當有新驅動或者DLL被加載

原创 8.4 Windows驅動開發:文件微過濾驅動入門

MiniFilter 微過濾驅動是相對於SFilter傳統過濾驅動而言的,傳統文件過濾驅動相對來說較爲複雜,且接口不清晰並不符合快速開發的需求,爲了解決複雜的開發問題,微過濾驅動就此誕生,微過濾驅動在編寫時更簡單,多數IRP操作都由過濾管理

原创 C/C++ 實現FTP文件上傳下載

FTP(文件傳輸協議)是一種用於在網絡上傳輸文件的標準協議。它屬於因特網標準化的協議族之一,爲文件的上傳、下載和文件管理提供了一種標準化的方法,在Windows系統中操作FTP上傳下載可以使用WinINet庫,WinINet(Windows

原创 C++ CryptoPP使用AES加解密

Crypto++ (CryptoPP) 是一個用於密碼學和加密的 C++ 庫。它是一個開源項目,提供了大量的密碼學算法和功能,包括對稱加密、非對稱加密、哈希函數、消息認證碼 (MAC)、數字簽名等。Crypto++ 的目標是提供高性能和可靠

原创 C/C++ Zlib庫封裝MyZip壓縮類

Zlib是一個開源的數據壓縮庫,提供了一種通用的數據壓縮和解壓縮算法。它最初由Jean-Loup Gailly和Mark Adler開發,旨在成爲一個高效、輕量級的壓縮庫,其被廣泛應用於許多領域,包括網絡通信、文件壓縮、數據庫系統等。其壓縮

原创 C++ 通過CryptoPP計算Hash值

Crypto++ (CryptoPP) 是一個用於密碼學和加密的 C++ 庫。它是一個開源項目,提供了大量的密碼學算法和功能,包括對稱加密、非對稱加密、哈希函數、消息認證碼 (MAC)、數字簽名等。Crypto++ 的目標是提供高性能和可靠

原创 C++ CryptoPP使用RSA加解密

Crypto++ (CryptoPP) 是一個用於密碼學和加密的 C++ 庫。它是一個開源項目,提供了大量的密碼學算法和功能,包括對稱加密、非對稱加密、哈希函數、消息認證碼 (MAC)、數字簽名等。Crypto++ 的目標是提供高性能和可靠

原创 C/C++ 常用的四種查找算法

在計算機科學中,搜索算法是一種用於在數據集合中查找特定元素的算法。C語言作爲一種強大的編程語言,提供了多種搜索算法的實現方式。本文將介紹C語言中的四種常見搜索算法其中包括(線性查找,二分法查找,樹結構查找,分塊查找),並提供每種算法的簡單實

原创 C/C++ 發送與接收HTTP/S請求

HTTP(Hypertext Transfer Protocol)是一種用於傳輸超文本的協議。它是一種無狀態的、應用層的協議,用於在計算機之間傳輸超文本文檔,通常在 Web 瀏覽器和 Web 服務器之間進行數據通信。HTTP 是由互聯網工程

原创 OpenSSL 使用AES對文件加解密

AES(Advanced Encryption Standard)是一種對稱加密算法,它是目前廣泛使用的加密算法之一。AES算法是由美國國家標準與技術研究院(NIST)於2001年發佈的,它取代了原先的DES(Data Encryption

原创 Flask SocketIO 實現動態繪圖

Flask-SocketIO 是基於 Flask 的一個擴展,用於簡化在 Flask 應用中集成 WebSocket 功能。WebSocket 是一種在客戶端和服務器之間實現實時雙向通信的協議,常用於實現實時性要求較高的應用,如聊天應用、實

原创 Flask Echarts 實現歷史圖形查詢

Flask前後端數據動態交互涉及用戶界面與服務器之間的靈活數據傳遞。用戶界面使用ECharts圖形庫實時渲染數據。它提供了豐富多彩、交互性強的圖表和地圖,能夠在網頁上直觀、生動地展示數據。ECharts支持各種常見的圖表類型,包括折線圖、柱

原创 C/C++ Zlib實現文件壓縮與解壓

在軟件開發和數據處理中,對數據進行高效的壓縮和解壓縮是一項重要的任務。這不僅有助於減小數據在網絡傳輸和存儲中的佔用空間,還能提高系統的性能和響應速度。本文將介紹如何使用 zlib 庫進行數據的壓縮和解壓縮,以及如何保存和讀取壓縮後的文件。z