《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > 網絡考試系統中防止U盤作弊方法研究
網絡考試系統中防止U盤作弊方法研究
來源:微型機與應用2011年第2期
嚴 強
(蘇州市廣播電視大學, 江蘇 蘇州 215004)
摘要: 目前越來越多的高校、教學培訓機構和各種社會考試,采用了網絡考試、網絡在線考試等網絡考試形式的無紙化考試。然而許多考試系統自身尚不具備防止考生使用U盤等移動存儲設備作弊的功能。本文所涉及的系統能完善這樣的功能,考生一旦插入了U盤或其他移動存儲設備后,系統立即顯示一個特殊的界面鎖住屏幕,禁止一切可能的鍵盤操作。這種狀態將一直保持到監考老師在該考生的考試機上解鎖為止。
Abstract:
Key words :
</a>摘   要: 目前越來越多的高校、教學培訓機構和各種社會考試,采用了網絡考試" title="網絡考試">網絡考試" title="網絡考試">網絡考試" title="網絡考試">網絡考試、網絡在線考試等網絡考試形式的無紙化考試。然而許多考試系統自身尚不具備防止考生使用U盤等移動存儲設備作弊的功能。本文所涉及的系統能完善這樣的功能,考生一旦插入了U盤或其他移動存儲設備后,系統立即顯示一個特殊的界面鎖住屏幕,禁止一切可能的鍵盤操作。這種狀態將一直保持到監考老師在該考生的考試機上解鎖為止。
關鍵詞: 網絡考試; 客戶端; U盤作弊; USB端口監視

    無紙化考試系統的模式通常有單機版模式、C/S模式B/S模式三種,無認哪種模式均要有客戶端,而考生必須在客戶端上完成其考試內容。目前USB存儲設備特別是U盤的存儲容量大、存取速度快、體積小、價格低廉,普及程度也越來越高,在考試中使用U盤作弊現象時有發生。由于考生在考試過程中使用U盤的隱蔽性極高,監考老師很難發現。目前大多數考試系統的客戶端并沒有對USB端口進行管理的功能。“網絡考試客戶端USB端口監視系統”(后文簡稱系統)就是實現在考試過程對考試客戶端的USB端口進行全程監視,一旦客戶端有USB設備接入,系統即刻鎖屏、封鎖鍵盤,發出使用USB設備的提示警告。本系統經過我校進行的“試點高校網絡教育部分基礎課程統一考試”多次使用實驗表明,該系統在考試過程中能有效地監控USB端口,杜絕了考生使用U盤的現象,從而保證考試的公正、公平和權威性。
1 系統功能要求
    (1)系統要能識別從計算機任何一個USB端口接入的移動存儲設備,如U盤等設備。對于非存儲類的USB設備,如:USB接口的打印機、掃描儀等,不能誤判作移動存儲設備。
    (2)鎖屏。一旦有U盤接入,系統能立即響應,并做出相應的處理。用一個無標題、無邊框、無關閉按鈕、最大化顯示的窗體覆蓋在所有窗體和任務欄的前面實現鎖屏。
 (3)封鎖鍵盤。封鎖鍵盤就是使用戶鍵盤上的鍵失效,尤其是一些特殊功能組合鍵,如:Ctrl-Alt-Delete、Alt-Tab、Alt-Esc、Alt-F4、Windows-Key。
 (4)關閉任務欄和開始菜單。
 (5)封鎖狀態解鎖。系統有提供給系統管理員或監考人員解鎖的功能,解鎖時要輸入特定的解鎖密碼。
 (6)解鎖密碼管理功能。系統提供由系統管理員使用的密碼維護、修改、重置和忘記密碼的處理功能。
2 系統總體設計
2.1 系統組成

 系統主要由USB端口監視系統和密碼維護系統兩部分組成。其組成結構如圖1所示。

2.2 USB端口實時監視系統組成結構
    USB端口實時監視系統由核心模塊、USB端口監視模塊、屏幕、鍵盤加鎖模塊、鍵盤解鎖模塊、記錄/讀取系統USB使用狀態模塊、密碼解鎖處理模塊和重啟處理模塊組成。其組織結構如圖2所示。

2.3 密碼維護系統組成結構
    密碼維護系統由密碼修改和使用初始密碼兩部分組成。如圖3所示。

    密碼修改提供給管理員修改維護解鎖密碼。遺忘解鎖密碼時,先使用初始密碼功能將解鎖密碼設置為初始密碼,然后再修改成指定密碼。
    該系統為一個相對獨立的子系統,由系統管理員掌管使用。
3 USB端口監視系統設計
    為了不和考試系統爭搶資源,系統被設計成后臺運行方式,以中斷方式獲取機器USB端口狀態變化。采用進程保護技術進行系統自我保護,使系統在運行時不被考生強行終止,提高了系統的安全性。當考生在考試過程中插入U盤時,系統自動彈出鎖屏窗體,并在窗體中顯示考生已使用U盤的提示信息。鎖住鍵盤,記錄U盤的狀態信息,即使考生撥掉U盤,系統自鎖也不撤消。若考生用RESET開關強行重啟機器或強行關機后再開機,當Windows系統啟動完成后,系統仍然處于自鎖狀態。只有當監考老師用解鎖命令和解鎖密碼解鎖后,系統才恢復到正常狀態。
3.1 USB端口監視模塊設計
    USB端口監視模塊是系統的核心模塊之一,也是系統的重要模塊。設計流程如圖4所示。

    系統運行后,模塊即進入工作狀態,為了盡量少占用系統資源,模塊以中斷方式獲取機器USB端口狀態變化,一旦發現端口接入USB移動存儲設備隨即進行處理。
    當發現端口有USB設備接入后,隨即讀取此設備的設備類型特征碼。根據其設備類型特征碼判斷此設備是否是USB移動存儲設備。如果是移動存儲設備,則調用其后續模塊。否則,不做處理。
3.2 鎖屏設計
    鎖屏模塊是使系統呈現在考生面前的模塊。設計流程如圖5所示。

    模塊被調用后,首先隱藏任務欄,關閉開始菜單,然后以白色、無邊框、無標題欄、無關窗體控制按鈕的窗體形式顯示在所有窗體的最前面,遮蓋住Windows的任務欄,并在窗體中央顯示“正在使用USB設備... 系統自鎖。請與監考老師聯系”字樣,提示考生由于插入了U盤從而系統自鎖了。
3.3 鎖鍵盤設計
    鎖鍵盤模塊的執行結果呈現在考生面前的是鍵盤處于失效。本模塊被調用后,將封鎖鍵盤上的所有字母鍵、功能鍵和組合鍵,唯一開放的鍵是F12鍵,是輸入解鎖密碼的入口鍵。
    其功能是:
    (1)封鎖鍵盤上的所有單鍵,只留F12鍵。
  (2)封鎖Ctrl-Alt-Delete組合鍵,禁止打開Windows任務管理器。
  (3)封鎖Windows-Key(微軟鍵),禁止打開開始菜單。
  (4)封鎖Alt-F4組合鍵,禁止用此鍵關閉本程序。
  (5)封鎖Alt-Tab、Alt-Esc組合鍵,禁止切換任務窗體。
  在封鎖鍵盤模塊設計中使用到了鉤子(Hook)技術。系統使用鍵盤鉤子截獲鍵盤消息,在鉤子函數中判斷鍵盤消息中的鍵是否需要屏蔽鍵,如果需要屏蔽鍵,則不將此消息發送到窗體,從而達到屏蔽鍵盤的目的。由于系統需要屏蔽的鍵中有Windows-Key,而使用普通的鍵盤鉤子不能捕捉到Windows-Key鍵。所以系統使用了底層鍵盤鉤子,即全局鍵盤鉤子。
  安裝鍵盤鉤子:
  [DllImport("user32", EntryPoint = "SetWindowsHookExA", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = true)]
  public static extern int SetWindowsHookEx(int idHook,   // 鉤子的類型,即其處理的消息類型。
  GlobalKeyboardProcDelegate lpfn, // 如果dwThreadId參數為0 或是一個由別的進程創建的線程的標識,lpfn必須指向DLL中的鉤子子程。
  int hMod, // 應用程序實例的句柄。標識包含lpfn所指的子程的DLL。
  int dwThreadId);
     其中:GlobalKeyboardProcDelegate是處理鍵盤鉤子截獲的鍵盤消息的代理函數。設計如下:
    public int GlobalKeyboardProc(int nCode, int wParam, ref KBDLLHOOKSTRUCT lParam)
    {
        bool keyEven = false;
             switch (wParam)
             {
             case WM_KEYDOWN:
             case WM_KEYUP:
             case WM_SYSKEYDOWN:
             case WM_SYSKEYUP:
             keyEven = (((lParam.vkCode == 0x09) && (lParam.
        flags == 0x20)) |  // Alt+Tab
             ((lParam.vkCode == 0x1B) && (lParam.flags ==
            0x20)) |  // Alt+Esc
             ((lParam.vkCode == 0x1B) && (lParam.flags ==
            0x00)) |  // Ctrl+Esc
             ((lParam.vkCode == 0x5B) && (lParam.flags ==
            0x01)) |  // Left Windows Key
             ((lParam.vkCode == 0x5C) && (lParam.flags ==
            0x01)) |  // Right Windows Key
             ((lParam.vkCode == 0x73) && (lParam.flags ==
            0x20)) |  // Alt+F4
                 );
             break;
         }
         if (keyEven == true)
         {
             return 1;
         }
         else
         {
         return CallNextHookEx(0, nCode, wParam, ref lParam);
         }
     }
     卸載鍵盤鉤子:
     [DllImport("user32", EntryPoint = "UnhookWindowsHookEx", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = true)]
  public static extern int UnhookWindowsHookEx(int hHook);
     轉到下一個鉤子:
    [DllImport("user32",EntryPoint="CallNextHookEx", CharSet=
CharSet.Ansi, SetLastError=true,ExactSpelling= true)]
    public static extern int CallNextHookEx(int hHook, int nCode, int wParam, ref KBDLLHOOKSTRUCT lParam);
4 系統自身保護及運行
    由于考生在考試過程中的作弊現象時有發生,因此監考和作弊考生是一對不可避免的矛盾,相互存在著一
定斗智斗勇現象。系統在一定程度上也充當了監考的角色,因此它就需要具有一定的自身保護能力,而不被考生終止運行。系統采用如下幾種保護:
    (1)用戶終止保護
  系統被設計成一個后臺運行系統,運行后不顯示任何窗體,只在系統的托盤中顯示一個圖標,而且不提供右擊彈出菜單和雙擊顯示主程序窗體的功能。從而使考生不能直接終止本程序,實現終止保護。
  (2)進程保護
  采用了進程保護技術,使得在Windows的任務管理器中無法終止本進程。防止考生在使用U盤前先終止本進程。
    (3)卸載保護
  系統在第一次運行時會自動在添加/刪除程序列表中找到自己的列表項,并將其隱藏起來,這樣本系統就無法從Windows中卸載。
    系統目前已經運行在本校進行的“試點高校網絡教育部分基礎課程統一考試”的客戶端上,取得了良好的效果。該系統不但能運行在網絡考試客戶端上,也可以運行于各種無紙化考試系統的客戶端上。系統目前還有一些不足之處需要改進,如目前只是單機版,過程狀態數據沒有記錄,不利于監考老師的集中管理,還有待于升級成網絡版。
參考文獻
[1] 李英偉.USB2.0原理與工程開發(第2版)[M].北京:國防工業出版社,2007
[2] 陳啟美,丁傳鎖.計算機USB接口技術[M]. 南京:南京大學出版社,2003.
[3] 薛園園. USB應用開發技術大全[M].北京: 人民郵電出版社,2007.
[4] 肖踞雄,翁鐵成. USB技術及應用設計[M].北京:清華大學出版社,2003.   (收稿日期:2010-10-21)

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精彩视频| 亚洲一区二区三区四区视频| 亚洲精品免费看| 精品盗摄一区二区三区| 国产酒店精品激情| 欧美先锋影音| 欧美日本亚洲韩国国产| 久久这里有精品15一区二区三区| 欧美在线精品一区| 欧美一区=区| 亚洲欧美国产另类| 亚洲制服av| 亚洲在线黄色| 亚洲宅男天堂在线观看无病毒| 一本色道久久综合亚洲91| 日韩特黄影片| 99这里只有久久精品视频| 日韩视频免费| 一本色道久久88精品综合| 999亚洲国产精| 日韩一区二区电影网| 日韩亚洲精品电影| 亚洲精品在线二区| 亚洲美女av网站| 日韩系列欧美系列| 一区二区冒白浆视频| 一区二区三区毛片| 亚洲一区中文字幕在线观看| 亚洲视频免费| 亚洲女女女同性video| 亚洲自拍偷拍网址| 午夜视频精品| 久久精品日韩欧美| 久久字幕精品一区| 欧美激情第10页| 欧美日韩另类丝袜其他| 欧美香蕉视频| 国产欧美精品va在线观看| 国产欧美一区二区三区国产幕精品 | 欧美图区在线视频| 国产精品一二三| 国产一区二区在线免费观看| 亚洲国产成人av在线| 99re热这里只有精品视频| 亚洲一区一卡| 久久精品99国产精品日本| 最新精品在线| 亚洲一二三级电影| 久久久国产精品亚洲一区| 欧美成人一区二区三区在线观看 | 亚洲激情网站免费观看| 一本色道精品久久一区二区三区| 亚洲一区久久| 亚洲二区视频| 亚洲午夜影视影院在线观看| 欧美主播一区二区三区美女 久久精品人| 久久香蕉国产线看观看网| 欧美精品一区二区精品网| 国产精品美女一区二区| 一区在线播放| 99爱精品视频| 亚洲国产mv| 亚洲在线黄色| 欧美1区2区| 国产精品视频久久| 亚洲欧洲日韩综合二区| 午夜精品视频网站| 亚洲毛片av| 久久精品国产欧美激情| 欧美精品在线视频| 国产女人18毛片水18精品| 亚洲国产天堂久久国产91| 亚洲欧美成人在线| 亚洲免费观看在线观看| 久久精品电影| 欧美性生交xxxxx久久久| 狠狠综合久久av一区二区老牛| 夜夜嗨一区二区三区| 久久国产精品久久精品国产| 一区二区三区四区五区视频 | 欧美高清视频免费观看| 国产精品成人一区二区| 影音先锋亚洲电影| 一区二区三区久久| 亚洲精品欧洲| 欧美在线日韩精品| 欧美美女视频| 国产一区二区三区丝袜| 亚洲精品免费一二三区| 欧美一区二区三区免费看| 亚洲一区久久久| 麻豆免费精品视频| 国产精品欧美一区喷水| 国产精品视频在线观看| 亚洲经典一区| 久久超碰97人人做人人爱| 亚洲婷婷在线| 欧美精品在线一区| 激情欧美一区二区三区| 一区二区三区福利| 亚洲精品一区久久久久久| 欧美一区二视频| 欧美日韩一区二区三区四区在线观看| 国产精品视频大全| 中文国产亚洲喷潮| 亚洲激情视频在线观看| 午夜欧美大片免费观看| 欧美激情bt| 激情成人中文字幕| 亚洲一线二线三线久久久| 最新国产乱人伦偷精品免费网站 | 亚洲精品专区| 亚洲国产欧美在线| 欧美亚洲视频在线观看| 欧美日韩成人综合在线一区二区| 韩国三级在线一区| 亚洲成色777777女色窝| 欧美一区二区视频免费观看| 欧美性猛交视频| 亚洲伦理在线免费看| 亚洲精品综合在线| 久热精品视频| 国产精品亚发布| 一区二区三区免费网站| 亚洲精品永久免费| 免费国产一区二区| 国产主播精品在线| 午夜视频在线观看一区| 亚洲欧美日韩精品| 国产农村妇女精品| 亚洲欧美日韩国产一区| 亚洲午夜视频在线| 欧美特黄一级大片| 亚洲精品中文字幕女同| 亚洲国产专区校园欧美| 久久精品国产77777蜜臀| 欧美午夜精品久久久久免费视| 亚洲精品老司机| aⅴ色国产欧美| 欧美gay视频激情| 亚洲人成网站在线观看播放| 亚洲精品久久视频| 欧美a一区二区| 亚洲啪啪91| 99热精品在线| 欧美日韩福利视频| 亚洲午夜国产成人av电影男同| 亚洲视频一二区| 国产精品国色综合久久| 亚洲视频视频在线| 亚洲欧美制服中文字幕| 国产欧美精品日韩| 午夜精品视频| 久久免费精品视频| 精品成人免费| 亚洲美女91| 欧美伦理在线观看| 影音国产精品| 一区二区日韩精品| 国产精品vip| 亚洲综合激情| 久久久xxx| 亚洲激情视频网| 在线亚洲自拍| 国产精品亚洲不卡a| 欧美一区综合| 欧美刺激性大交免费视频| av成人免费观看| 欧美一区2区视频在线观看| 国产一区二区成人| 亚洲三级国产| 欧美日韩综合| 久久精品国产一区二区三区 | 久热精品在线视频| 亚洲精品久久久久久一区二区| 中文欧美字幕免费| 国产精品一区一区| 久久国产精品黑丝| 欧美激情精品久久久久久久变态| 日韩小视频在线观看| 欧美亚洲色图校园春色| 永久免费精品影视网站| 正在播放亚洲| 国产日韩欧美制服另类| 91久久精品国产| 国产精品电影在线观看| 久久本道综合色狠狠五月| 欧美久久久久免费| 香蕉久久夜色精品| 欧美久久一区| 午夜综合激情| 欧美日韩一区二区在线视频| 亚洲欧美第一页| 欧美黑人一区二区三区| 亚洲私人影吧| 欧美成人高清视频| 欧美在线视频网站| 欧美日韩成人一区| 欧美在线观看网站| 欧美日韩另类综合|