原创 記錄一次問題調試過程 -- ptrace + libunwind + malloc hook

整體方案參考自: https://xz.aliyun.com/t/6883#reply-14067 當前任務是監控malloc等應用層面的調用,獲取其輸入參數、返回值、調用棧等情況,之前已經完成了參數和返回值的測試;本週主要研究調用棧的獲

原创 linux下的excel

今天調試ptrace的一個用例,裏面用到了excel這個函數: #include <sys/ptrace.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.

原创 malloc申請內存一定會引起進程Heap的Rss變化嗎?

前言 linux的開發人員,大概都知道可以通過 cat /proc/pid/smaps 來查看進程的memory佔用情況,以確定線程佔用memory是否過大: 可以看到每個大的字段都有size、Rss、Pss等不同的小的字段,它們可以各

原创 X64 彙編入門

目錄 前言 64位和32位彙編的差異 示例說明   前言 公司項目需要實現通過彙編來獲取調用棧的功能,自己寫了一個,直接崩潰,回頭學習一下,以此爲記; 64位和32位彙編的差異 這方面我現在涉及的不多,就不展開了,大家可以自己去查一下資料

原创 malloc申請內存一定會引起進程的Rss變化嗎?

前言 linux的開發人員,大概都知道可以通過 cat /proc/pid/smaps 來查看進程的memory佔用情況,以確定線程佔用memory是否過大: 可以看到每個大的字段都有size、Rss、Pss等不同的小的字段,它們可以各

原创 python調用face++接口,實現圖像識別

需求 需要識別的圖片在本地,通過python調用face++的接口,實現圖像識別,並讀取識別後的返回結果   具體實現 參考鏈接 https://www.faceplusplus.com.cn/general-text-recogniti

原创 dlopen_mode load so失敗的可能原因

今天測試一個用例,其實不能說是測試,因爲前面都已經完成了,只是需要支持一些新的功能,所以需要在當前版本上進行相應的修改然後測試。簡單來說,還是plt hook的實現,只不過前一段時間針對的都是java編寫的目標程序,現在針對的是c編寫的目

原创 安卓手機硬件信息修改 Device ID Changer 2020

目前在做linux下java程序的指定so的指定函數的hook,功能已經完成並經過了初步測試,開發過程中發現了一些例子是在安卓系統下的一些hook的開源工具,比如大名鼎鼎的xpose,原諒我才知道有這麼厲害的工具,然後搜到了硬件信息修改的

原创 動態庫加載後的函數解析

綜述        最近做一個demo,簡單來說就是通過ptrace的功能,把自己寫的一個so(內有咱們要hook後的函數實現),動態加載到目標程序後,通過修改GOT表的方式,把目標函數替換成咱們自己的函數,後面在目標程序的代碼裏,再調用

原创 64位Linux彙編

操作系統都開始向64位過度了,但大部分教材教程書籍資料還停留在32位,絕大部分語言不用care這個問題,但彙編還是有較大變化的。 C語言代碼: int main() {         exit(2); } 32位彙編實現上述C語言代碼相

原创 linux中線程創建簡單示例

當前項目中涉及到多線程編程,之前搞過,但沒啥記錄,在此記錄一下 #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <unistd.h> void

原创 c/c++中,*與++的優先級

今天看openj9的源碼,看到一句代碼,如下: data = *cursor++; 當時稍微有點奇怪,爲啥要這麼寫,爲何不用()對其進行明確以提高代碼閱讀性? 另外就是自己想了一下,這句話的意義是啥? 首先想到的是優先級,個人理解,*和+

原创 VS2013工程導入自己生成的Dll,編譯通過,運行時提示“無法啓動程序,因爲計算機中丟失*.DLL”

基本上是按照:https://blog.csdn.net/u010273652/article/details/25514577,來實現的,葉挺順利,但在最後運行時,提示缺少Dll。嘗試了各種方法還是不能解決,後來隨便一試,終於OK,特以

原创 DLL注入失敗 2

繼續昨晚的調試。今天請教了一個高手,他覺得可能原因有:1.遊戲有防護,防止讀寫——但是爲啥CE和OD可以直接附加並分析呢?2.有的遊戲不響應消息循環裏的鍵盤消息,對其進行了屏蔽——不是很明白,如果是這樣的話,遊戲是怎麼相應鍵盤消息的呢?比