计算机网络安全技术实验.docx
- 文档编号:27775740
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:21
- 大小:164.07KB
计算机网络安全技术实验.docx
《计算机网络安全技术实验.docx》由会员分享,可在线阅读,更多相关《计算机网络安全技术实验.docx(21页珍藏版)》请在冰豆网上搜索。
计算机网络安全技术实验
计算机网络安全技术实验
计算机网络安全技术实验
n案例名称:
操作注册表
n程序名称:
#include
n#include
n
nmain()
n{
nHKEYhKey1;
nDWORDdwDisposition;
nLONGlRetCode;
n//创建
nlRetCode=RegCreateKeyEx(HKEY_LOCAL_MACHINE,
n"SOFTWARE\\Microsoft\\WindowsNT\\CurrentVersion\\IniFileMapping\\WebSecurity",
n0,NULL,REG_OPTION_NON_VOLATILE,KEY_WRITE,
nNULL,&hKey1,&dwDisposition);
n
n//如果创建失败,显示出错信息
nif(lRetCode!
=ERROR_SUCCESS){
nprintf("ErrorincreatingWebSecuritykey\n");
nreturn(0);
n}
n//设置第一个键值
nlRetCode=RegSetValueEx(hKey1,
n"Hack_Name",
n0,
nREG_SZ,
n(byte*)"sixage",
n100);
n//设置第二个键值
nlRetCode=RegSetValueEx(hKey1,
n"Hack_Hobby",
n0,
nREG_SZ,
n(byte*)"Running",
n100);
n
n//如果创建失败,显示出错信息
nif(lRetCode!
=ERROR_SUCCESS){
nprintf("ErrorinsettingSection1value\n");
nreturn(0);
n}
nprintf("注册表编写成功!
\n");
nreturn(0);
n}
n案例名称:
判断是否中了“冰河”
n程序名称:
proj3_13.cpp
n
n#include
n#include
nmain()
n{
nHKEYhKEY;
nLPCTSTRdata_Set="txtfile\\shell\\open\\command";
nlongret0=(RegOpenKeyEx(HKEY_CLASSES_ROOT,
ndata_Set,0,KEY_READ,&hKEY));
nif(ret0!
=ERROR_SUCCESS)//如果无法打开hKEY,则终止程序的执行
n{
nreturn0;
n}
n//查询有关的数据
nLPBYTEowner_Get=newBYTE[80];
nDWORDtype_1=REG_EXPAND_SZ;
nDWORDcbData_1=80;
nlongret1=RegQueryValueEx(hKEY,NULL,NULL,
n&type_1,owner_Get,&cbData_1);
nif(ret1!
=ERROR_SUCCESS)
n{
nreturn0;
n}
n
nif(strcmp((constchar*)owner_Get,"%systemroot%\\system32\\notepad.exe%1")==0)
n{
nprintf("没有中冰河");
n}
nelse
n{
nprintf("可能中了冰河");
n}
nprintf("\n");
n}
编译运行会有下面结果
然后在注册表中HKEY_CLASSES_ROOT主键下的“txtfile\shell\open\command”
将值改为其他的,然后再运行。
会有下面结果。
n案例名称:
更改系统登录用户
n程序名称:
proj3_14.cpp
n
n#include
n#include
n
nmain()
n{
nHKEYhKey1;
nLONGlRetCode;
nlRetCode=RegOpenKeyEx(HKEY_LOCAL_MACHINE,
n"SOFTWARE\\Microsoft\\WindowsNT\\CurrentVersion\\Winlogon",
n0,KEY_WRITE,
n&hKey1
n);
n
nif(lRetCode!
=ERROR_SUCCESS){
nprintf("Errorincreatingappname.inikey\n");
nreturn(0);
n}
n
nlRetCode=RegSetValueEx(hKey1,
n"DefaultUserName",
n0,
nREG_SZ,
n(byte*)"Hacker_sixage",
n20);
n
nif(lRetCode!
=ERROR_SUCCESS){
nprintf("ErrorinsettingSection1value\n");
nreturn(0);
n
n}
nprintf("已经将登录名该成Hacker_sixage");
nreturn(0);
n}
n文件系统编程非常的重要,可以在DOS命令行下执行的操作都可以使用程序实现。
n在DOS命令行下使用命令“netuserHacker/add”添加一个用户,同样可以在程序中实现,如程序proj3_15.cpp所示。
n
n案例名称:
添加系统用户
n程序名称:
proj3_15.cpp
n
n#include
n#include
nmain()
n{
nchar*szCMD="netuserHacker/add";
nBOOLbSuccess;
nPROCESS_INFORMATIONpiProcInfo;
nSTARTUPINFOInfo;
nInfo.cb=sizeof(STARTUPINFO);
nInfo.lpReserved=NULL;
nInfo.lpDesktop=NULL;
nInfo.lpTitle=NULL;
nInfo.cbReserved2=0;
nInfo.lpReserved2=NULL;
nbSuccess=CreateProcess(NULL,szCMD,NULL,NULL,false,NULL,NULL,NULL,&Info,&piProcInfo);
nif(!
bSuccess)
nprintf("创建进程失败!
");
nreturn1;
n}
n案例名称:
系统时间
n程序名称:
proj3_17.cpp
n
n#include
n#include
nmain()
n{
nSYSTEMTIMEsysTime;
nGetLocalTime(&sysTime);
nprintf("%d年%d月%d日%d时%d分%d秒\n",
nsysTime.wYear,sysTime.wMonth,sysTime.wDay,sysTime.wHour,
nsysTime.wMinute,sysTime.wSecond);
nreturn1;
n}
n案例名称:
定时器编程
n程序名称:
proj3_18.cpp
n
n#include
nWNDCLASSwc;
nHWNDh_wnd;
nMSGmsg;
n
n/*消息处理函数wndProc的声明*/
nlongWINAPIWindowProc(HWND,UINT,WPARAM,LPARAM);
n
n/*winMain函数的声明*/
nintPASCALWinMain(HINSTANCEh_CurInstance,
nHINSTANCEh_PrevInstance,LPSTRp_CmdLine,intm_Show)
n{
n/*初始化wndclass结构变量*/
nwc.lpfnWndProc=WindowProc;
nwc.hInstance=h_CurInstance;
nwc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
nwc.lpszClassName="TheMainClass";
n
n/*注册WndClass结构变量*/
nRegisterClass(&wc);
n
n/*创建窗口*/
nh_wnd=CreateWindow("TheMainClass","OurfirstWindow",
nWS_OVERLAPPEDWINDOW,0,0,400,500,0,0,h_CurInstance,0);
n
n/*显示窗口*/
nShowWindow(h_wnd,SW_SHOWMAXIMIZED);
n
n/*消息循环*/
nwhile(GetMessage(&msg,NULL,0,0))
nDispatchMessage(&msg);
nreturn(msg.wParam);
n}
n#defineID_TIMER1
n
n/*定义消息处理函数*/
nlongWINAPIWindowProc(HWNDh_wnd,UINTWinMsg,
nWPARAMw_param,LPARAMl_param)
n{
nstaticBOOLfFlipFlop=FALSE;
nHBRUSHhBrush;
nHDChdc;
nPAINTSTRUCTps;
nRECTrc;
n
nswitch(WinMsg)
n{
ncaseWM_CREATE:
nSetTimer(h_wnd,ID_TIMER,1000,NULL);
nreturn0;
n
ncaseWM_TIMER:
nMessageBeep(-1);
nfFlipFlop=!
fFlipFlop;
nInvalidateRect(h_wnd,NULL,FALSE);
nreturn0;
n
ncaseWM_PAINT:
nhdc=BeginPaint(h_wnd,&ps);
nGetClientRect(h_wnd,&rc);
nhBrush=CreateSolidBrush(fFlipFlop?
RGB(255,0,0):
RGB(0,0,255));
nFillRect(hdc,&rc,hBrush);
n
nEndPaint(h_wnd,&ps);
nDeleteObject(hBrush);
nreturn0;
n
ncaseWM_DESTROY:
nKillTimer(h_wnd,ID_TIMER);
nPostQuitMessage(0);
nreturn0;
n}
nreturnDefWindowProc(h_wnd,WinMsg,w_param,l_param);
n}
案例名称:
内存驻留程序的编写
n程序名称:
proj3_19.cpp
n
n#include
nWNDCLASSwc;
nHWNDh_wnd;
nMSGmsg;
n
n/*消息处理函数wndProc的声明*/
nlongWINAPIWindowProc(HWND,UINT,WPARAM,LPARAM);
n
n/*winMain函数的声明*/
nintPASCALWinMain(HINSTANCEh_CurInstance,
nHINSTANCEh_PrevInstance,LPSTRp_CmdLine,intm_Show)
n{
n/*初始化wndclass结构变量*/
nwc.lpfnWndProc=WindowProc;
nwc.hInstance=h_CurInstance;
nwc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
nwc.lpszClassName="TheMainClass";
n
n/*注册WndClass结构变量*/
nRegisterClass(&wc);
n
n/*创建窗口*/
nh_wnd=CreateWindow("TheMainClass","OurfirstWindow",
nWS_OVERLAPPEDWINDOW,0,0,400,500,0,0,h_CurInstance,0);
n
n/*显示窗口*/
nShowWindow(h_wnd,SW_HIDE);
n
n/*消息循环*/
nwhile(GetMessage(&msg,NULL,0,0))
nDispatchMessage(&msg);
nreturn(msg.wParam);
n}
n#defineID_TIMER1
n
n/*定义消息处理函数*/
nlongWINAPIWindowProc(HWNDh_wnd,UINTWinMsg,
nWPARAMw_param,LPARAMl_param)
n{
nstaticBOOLfFlipFlop=FALSE;
nHBRUSHhBrush;
nHDChdc;
nPAINTSTRUCTps;
nRECTrc;
n
nswitch(WinMsg)
n{
ncaseWM_CREATE:
nSetTimer(h_wnd,ID_TIMER,1000,NULL);
nreturn0;
n
ncaseWM_TIMER:
nMessageBeep(-1);
nfFlipFlop=!
fFlipFlop;
nInvalidateRect(h_wnd,NULL,FALSE);
nreturn0;
n
ncaseWM_PAINT:
nhdc=BeginPaint(h_wnd,&ps);
nGetClientRect(h_wnd,&rc);
nhBrush=CreateSolidBrush(fFlipFlop?
RGB(255,0,0):
RGB(0,0,255));
nFillRect(hdc,&rc,hBrush);
n
nEndPaint(h_wnd,&ps);
nDeleteObject(hBrush);
nreturn0;
n
ncaseWM_DESTROY:
nKillTimer(h_wnd,ID_TIMER);
nPostQuitMessage(0);
nreturn0;
n}
nreturnDefWindowProc(h_wnd,WinMsg,w_param,l_param);
n}
n案例3-7“冰河”原型
n#include
nWNDCLASSwc;
nHWNDh_wnd;
nMSGmsg;
n
n/*消息处理函数wndProc的声明*/
nlongWINAPIWindowProc(HWND,UINT,WPARAM,LPARAM);
n
n/*winMain函数的声明*/
nintPASCALWinMain(HINSTANCEh_CurInstance,
nHINSTANCEh_PrevInstance,LPSTRp_CmdLine,intm_Show)
n{
n//MessageBox(NULL,p_CmdLine,"",MB_OK);
nBOOLbSuccess;
nPROCESS_INFORMATIONpiProcInfo;
nSTARTUPINFOInfo;
nInfo.cb=sizeof(STARTUPINFO);
nInfo.lpReserved=NULL;
nInfo.lpDesktop=NULL;
nInfo.lpTitle=NULL;
nInfo.cbReserved2=0;
nInfo.lpReserved2=NULL;
ncharlpAppName[100];
nstrcpy(lpAppName,"notepad.exe");
n//MessageBox(NULL,lpAppName,"",MB_OK);
nif(strcmp(p_CmdLine,"")!
=0)
nstrcat(lpAppName,p_CmdLine);
n//MessageBox(NULL,lpAppName,"",MB_OK);
nbSuccess=CreateProcess(NULL,lpAppName,NULL,NULL,false,NULL,NULL,NULL,&Info,&piProcInfo);
n
n/*初始化wndclass结构变量*/
nwc.lpfnWndProc=WindowProc;
nwc.hInstance=h_CurInstance;
nwc.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
nwc.lpszClassName="TheMainClass";
n
n/*注册WndClass结构变量*/
nRegisterClass(&wc);
n
n/*创建窗口*/
nh_wnd=CreateWindow("TheMainClass","OurfirstWindow",
nWS_OVERLAPPEDWINDOW,0,0,400,500,0,0,h_CurInstance,0);
n
n/*显示窗口*/
nShowWindow(h_wnd,SW_HIDE);
n
n/*消息循环*/
nwhile(GetMessage(&msg,NULL,0,0))
nDispatchMessage(&msg);
nreturn(msg.wParam);
n}
n
n/*定义消息处理函数*/
nlongWINAPIWindowProc(HWNDh_wnd,UINTWinMsg,
nWPARAMw_param,LPARAMl_param)
n{
n
nswitch(WinMsg)
n{
ncaseWM_DESTROY:
nPostQuitMessage(0);
nreturn0;
n}
nreturnDefWindowProc(h_wnd,WinMsg,w_param,l_param);
n}
n案例名称:
独立线程程序的编写
n程序名称:
proj3_21.cpp
n
n#include
n#include
n#include
n
nintaddem(int);
nintmain(intargc,char*argv[])
n{
n_beginthread((void(*)(void*))addem,0,(void*)10);
n_beginthread((void(*)(void*))addem,0,(void*)11);
naddem(12);
nreturn0;
n}
n
nintaddem(intcount)
n{
ninti;
nlongsum;
n
nsum=0;
nfor(i=0;i<=count;++i){
nprintf("Thevalueof%dis%d\n",count,i);
nsum+=i;
n}
nprintf("Thesumis%d\n",sum);
nreturn0;
n}
n案例名称:
多个线程共享参数
n程序名称:
proj3_22.cpp
n
n#include
n#include
n#include
nintaddem(int);
nintx;//全局变量
n
nintmain(intargc,char*argv[])
n{
nx=0;
n_beginthread((void(*)(void*))addem,0,(void*)1);
n_beginthread((void(*)(void*))addem,0,(void*)2);
naddem(3);
nreturn0;
n}
n
nintaddem(intindex)
n{
nwhile(x<=50){
nx=x+1;
nprintf("%d:
%d\n",index,x);
n}
nreturn0;
n}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机网络 安全技术 实验