C語言編寫木馬程序!使用scoket編程:附送源碼+教學!

C語言編寫木馬程序!使用scoket編程:附送源碼+教學!

不關注《一碳科技》,你會錯過很多編程知識哦!


前言

相信大家都聽說計算機木馬病毒吧?在很多人眼裡,計算機木馬都是一種很神秘的存在,悄悄的隱藏在計算機後臺運行,監視著計算機的一切行為,能夠在無人知曉的情況下拿走敏感文件,並且遠在另一端的木馬製作者,會通過計算機網絡對木馬宿主電腦進行控制,而這一切操作木馬宿主都無法知曉,那麼,木馬真的有這麼神秘嗎?

C語言編寫木馬程序!使用scoket編程:附送源碼+教學!

這裡,《一碳科技》教大家用C語言編寫一個簡單的木馬程序,這篇文章先教大家編寫遠程控制木馬中的“被控端”,也就是發送給宿主計算機的程序,這個程序比較簡單,目的是為了讓大家能理清C語言木馬的工作原理,只是編寫了基本實現遠程發送命令的基本框架。

源碼在文章末尾

話不多說,打開電腦寫起來!

首先,我們這篇文章只教木馬被控端的代碼,木馬控制端的代碼會在發佈在下一篇文章,請關注我們哦!

第一步

編寫C代碼的第一步,引用頭文件,這裡分別使用stdio.h、WinSock2.h、windwos.h(高大上一點),注意,WinSock2.h要在

windwos.h之前引用,否則會出現錯誤,並且我們還要加入Ws_32.lib這個靜態鏈接庫,否則connect()函數就無法使用。

對第一步做個總結:

  • WinSock2.h要在windwos.h之前引用
  • 加入Ws_32.lib這個靜態鏈接庫
C語言編寫木馬程序!使用scoket編程:附送源碼+教學!

第一步

第二步

編寫我們連接控制端的函數,在這裡會用到socket()函數,recv()函數,WSAStartup()函數、MAKEWORD()函數,HIBYTE()LOBYTE()函數,這裡給大家提一個建議,如果想要學習scoket編程,那麼,你就要把socket()、send()、recv()、accept()、listen()、connect()、bind()、這7個函數要學會怎麼用並且理解。

第二步的注意事項:

  • socket API函數調用之前,調用的第一個函數都是WSAStartup()函數。
  • MAKEWORD()函數幾乎都是配合WSAStartup()函數使用,一般情況下,MAKEWORD()函數的參數分別為:2、2。
C語言編寫木馬程序!使用scoket編程:附送源碼+教學!

初始化

初始化完成,我們就要連接服務器了,分別有四個步驟:

  1. 創建一個套接字
  2. 填寫向SOCKADDR_IN中填寫服務器IP地址、端口、使用的協議族(AF_INET)
  3. 向服務器發送數據,說明“肉雞”已經上線
  4. 接收服務器信息

如果想要“被控端”執行服務器的命令,可以自行添加system()函數,這裡就不演示了。

C語言編寫木馬程序!使用scoket編程:附送源碼+教學!

好了,寫到這裡,“被控端”的基本框架已經完成了,剩餘的功能可以自行添加,例如執行服務端指令、“被控端”後臺執行、“被控端”自啟動

等功能,這些功能的實現並不難,這裡就不多講了,如果不明白可以私信小編哦!

“被控端”完成了,那麼“控制端”在哪呢?別急,下一篇文章會有哦

“控制端”與“被控端”一樣,小編只是將基本的框架寫出來,能夠實現“控制端”與“被控 端”的數據交流,控制端能夠發送指令,被控端能夠接收指令。其餘的功能在近期的文章中會 教大家如何實現,請關注《一碳科技》!

各位看官別忙著收藏嘛,關注不是更好嗎?更多幹貨推送給你哦

C語言編寫木馬程序!使用scoket編程:附送源碼+教學!


分享到:


相關文章: