考试系统防作弊功能的实现

第2卷第2期

2010年3月

JOURNAL

OF

阳理

NANYANG

OF

TECHNOLOGY

V61.2No.2Mar.2010

INSTITUTE

文章编号:1674—5132(2010)02—0021—03

考试系统防作弊功能的实现

郭东恩,贾满磊,王绪宛

(南阳理T学院软件学院河南南阳473004)

摘要:本文分析了考试系统中考生可用的作弊手段和防止作弊的具体方法及崎点,使用钩子技术、包过滤技术、

APl调用技术、消息拦截技术、回调技术和随机组卷技术,有效阻止利用网络进行作弊、U盘接入电脑作弊、偷看、使用考试禁用的软件作弊、替考等作弊手段,同时给出了具体实现的关键代码。关键词:考试系统;作弊;钩子技术;包过滤技术;随机组卷中图分类号:TP316

文献标识码:A

通过偷看旁边考生答案作弊实际上在传统考试

0前言

随着计算机网络、多媒体、数据库和现代教育测量技术的飞速发展,传统考试方式的诸多弊端显得越来越突出,教育现代化和信息化已成为现代教育发展的一个重要方向,而无纸化考试系统是深化教学改革,减少教师工作量,提高效率,节约资源,使考试更加公平、公正的重要平台,同时有效推进学校的教学创新…。在线考试系统在国内外已经有了较为广泛的应用,在线考试作弊跟传统笔试作弊有很大区别,具有很强的隐蔽性。如何有效的防止学生作弊,保证考试的公平、公正,是考试系统要解决的一个关键问题口。41,也是国内外多数考试系统尚未完全解决的难题。

通过对考试过程的分析,利用考试系统进行考试时,考生作弊的方法有如下几种情况:网络作弊(包括网络共享、搜索引擎搜索答案、QQ等网络通信工具等),U盘接人电脑作弊,通过屏幕偷看旁边考生答案作弊,打开考试禁用的软件作弊,替考等"]。考试系统中要有效防止考生作弊,必须解决这几个问题。

中也很难有效预防,而在考试系统中,计算机之间距离更近,再加上有机器的阻隔,对监考有一定的影响,这种作弊手段更难预防。预防偷看作弊最有效的方法就是使用随机组卷策略,从大量题库中随机抽取试题组成试卷,让每个考生试题不同,或者试题顺序不同,即使考生偷看也找不到需要的内容。

替考有两种情况,第一是找外班的人冒名顶替到考场参加考试,第二是考生做完自己考题后顶替别人再做一次。通过预先保存考生电子照片,考试时在做题窗口显示考生电子照片预防替考,通过系统中设置最迟入场时间,超过时间自动禁止考试防止考生替考。

网络作弊实际上是通过网络进行信息传输和通信实现作弊,主要包含网络文件共享、搜索引擎、QQ和飞鸽传书等几种情况,想有效防止网络作弊,只需监视本机网络通信情况,使用包过滤技术对本机数据包进行分析、过滤,提取源地址与目的地址,只保留本机和考试服务器之间的数据包,抛弃含有非法地址的数据,从而阻止网络作弊行为H加一71。

接入U盘作弊实际上是在考试过程中利用u盘实现考生之间答案的传递,或者利用u盘传递考试有关的内容进行作弊。要预防接人U盘作弊,可利用Windows提供的API函数、底层钩子技术及回调技术,禁用U盘驱动,禁用设备管理器、任务管理器,防止考生重新启动U盘驱动¨芦1。

下面主要对网络作弊、U盘和非法程序作弊的预防做详细的描述。

l考试系统中常用的作弊手段和预防

原理

考生使用考试系统进行考试时,最为常见的作弊手段有:偷看,替考,网络作弊,接入U盘作弊,打开禁用的软件作弊等。

作者简介:郭东恩(1978一),男,硕士,讲师,软件设计师,主要研究方向:软件工程和数据挖掘。E・mmn:gden..2008@126.corn

万方数据

南阳理T学院学报第2卷

2利用包过滤技术防止网络作弊

为了考查考生实际动手能力,在大多数情况下,应允许考生打开资源管理器和必需的程序,这样就存在利用网络作弊的可能性。因此,一开始考试就要监视本机网络通信情况。凡是本机与考试服务器问的数据包通信,不管是采用哪种端口、哪种协议,均视为合法,而本机与非考试服务器的通信一律视为非法。这样,只要通过监视程序提取本机数据包的源地址、目的地址,利用包过滤技术抛弃含有非法地址的数据包,即可阻止利用网络进行作弊¨一¨。

2.1

数据包的获取与过滤原理

利用操作系统提供的API,在用户层下实现对

网络数据包拦截,是一个简单易行的方法。基本思路是:首先获取本机所有IP地址(多网卡情况下有多个);创建一个接口,默认所有进出包都阻塞;然后把该接口绑定到本机IP地址;接着添加访问规则,要放行某IP的数据包,必须添加该IP入和出规则,即对该IP数据包进行放行处理;然后实施拦截,只要规则添加成功,调用程序时使用相应规则进行过滤,即可屏蔽相应网络访问;退出程序时移除过滤规则,取消绑定接口,删除接口。2.2主要代码

(1)初始化,获得本机IP

WSAStartup(wVersionRequested,&wsaData);//

WSAStartup的功能是初始化Winsock.DLL

if(gethostname(hostName,128)!=0)//获取主机名api函数,值返回给hostName字符变量

localHost

gethostbyname(hostName);//根据

主机名hostName获取IP地址

WSACleanup();//WSACleanup解除与Socket库的绑定并且释放Socket库所占用的系统资源

for(;localHost!=NULL&&localHost一>h—addr

—list[10cal—ips—count]!=NULL;local—ips—count+

+);

//循环统计本机IP地址个数

this・>local—ips=(DWORD牛)malloc(sizeof

(DWORD)・local—ips_count);I/分配IP存储空间

for(inti=0;i<local—ips—count;i++)

struct

in—addr木addr=(structin—addr宰)

localHost->h_addr—list[i];

memcpy(&this->local—ips[i],&ip,sizeof

(DWORD));//c语言内存拷贝函数,把分配的IP拷人内存

万方数据

(2)创建接口

r=PfCreateInterface(0,PF—ACTION—DROP,PF—ACTION—DROP,FALSE,FALSE,&drop);

//firewallapi函数,默认全部阻塞,第2和3个参数,表示出、人默认规则为禁止

(3)绑定需要网络包过滤的IP地址到接口

for(inti=0;i<this一>local—ips—count;i++){int

errorCode=PfBindInterfaceTolPAddress

(drop,PF—IPV4,(BYTE牛)&src—ip);//绑定需要

网络包过滤的IP地址

(4)添加、删除访问规则

for(vector<DWORD>::iteratorit=filters.>be.

gin();it<filters一>end();it++)//vector是一模板类,处理dword数据的迭代器

if(tmp==dst—addr—dword)//in果规则库中

已有此目的地址规则,返回

filters一>push—back(dst—addr—dword);//加入规

则库

fih.SrcAddr=(PBYTE)&src—ip;//来源IP

地址

flit.SrcMask=(PBYTE)&addr—mask;//来

源的所有子网掩码

r=inet—addr(dst—addr,&dst—ip);//获得

目标IP地址

fih.DstAddr=(PBYTE)&dst—ip;//目标

IP地址

fih.DstMask:(PBYTE)&addr—mask;II目

标地址所有子网掩码

r:PfAddFihersToInterface(drop,0,NULL,

1,&flit,NULL);//添加出站规则

r=PfAddFihersToInterface(drop,l,&flit,0,

NULL,NULL);//入站规则添加只需设置不同参数

即可

//出站规则移除和人站规则移除只需要调

用该函数时传递不同参数即可

该功能模块生成一个动态链接库文件,在考试端软件中进行调用,通过考试端传递考试服务器IP给该模块,实现对考试服务器之外的其他网络资源进行屏蔽。通过多次考试验证,该方法在保证性能的基础上真正实现了网络作弊的预防。

3屏蔽U盘和非法程序

Windows系统是建立在事件驱动机制基础上

第2期

郭东恩等:考试系统防作弊功能的实现

・23・

的,即整个系统都是通过消息的传递来实现的。钩子函数是Windows操作系统中非常重要的系统接口,用钩子程序可以监视Windows自身系统和进程中的各种事件消息,截获并处理送给其他进程。这样就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,截获U盘等存储设备的接入和其它非法程序的运行等。一般选用类型为WH—SHELL的钩子监视系统进程,若发现有非法程序运行(比如接入U盘),则记录其违规行为,并强制关闭该程序,达到监视目的。程序的屏蔽通过回调函数实现”。1

3.1实现系统监视的主要步骤和核心代码

动态链接库部分:先采用“PUBLIC—MEMORY”定义共享内存标志,产生在监控系统里共享的内存,把钩子保存到共享内存里。同时要定义共享的数据结构,保存钩子的句柄等信息。在独立的监控方式中,可使用GetWindowLong(Application>Handle,

GWL—EXSTYLE)1wS—EX—TOOLWINDOW)让程序

“隐身”,防止被考生强制退出。主要监控过程及代

码如下:

(1)先实行动态链接部分,定义共享内存标志和数据结构

(2)确定在监控系统里共享的内存,把h—Th-isHook保存到共享内存里

(3)若是独立的监控需要隐身,监控功能直接放在考试系统中则无必要

SetWindowLong(Application)Handle,GWL—EX—STYLE,GetWindowLong(Application)Handle,GWL—

EXSTYLE)lWS—EX—TOOLWINDOW);

Application)Run();

(4)安装钩子MyHook)InitFuncs();

(5)收集作弊证据并发送给服务器违规资料if(!ValidAppCheck(hWnd,szWinClass,szWin—Caption))//调用ValidAppchecks=DateTime+

“关闭禁用程序”;

(6)判断是否允许运行某类程序,用类名及标题名读取白名单,发现违法程序,关闭。

3.2屏蔽某些应用程序

假如考试中不允许考生使用Word、Powerpoint等软件,需要将标题含有“MicrosoftWord”或“Mi.

crosoft

Powerpoint”等字样的进程关闭。先定义枚举

窗体的回调函数,在回调函数中将标题含有指定名称的进程关闭。

万方数据

回调函数代码如下:

GetWindowText(hnd,wName,32);

IfPos(’MicrosoftWord,’wName)>=lthen

PostMessage(Hnd,WM—Close,0,0);

调用回调函数以关闭含有特定标题的应用程序,代码如下:

EnumWindows(@EnumWindowsProc,0);

该功能模块建成一个动态链接库文件,可以在考试管理端设置每场考试禁用的软件和资源类型,考生考试时,读取设置信息传递给该模块,实现相应资源和软件的禁用。为防止考生结束进程,屏蔽任务管理器,设置该进程不能手动结束,真正保证了U盘和其他程序资源的禁用。

4结束语

一个真正实用的无纸化考试系统已不是一个简单的信息管理系统,也不可能用简单的编程技术来实现,它必须深入地了解操作系统的内核,并充分应用这些系统内核技术以实现真正的预防作弊,让考试公平、公正,真正体现每个考生的实际水平。文章结合包过滤技术、API调用技术、消息拦截技术、回调技术、钩子技术,提供了一套解决无纸化考试系统中防止考生作弊问题的可行方案。经过多年运行测试,证明以上技术安全、可靠、有效。

参考文献

[1]谭汉松,侯水英.基于局域网的通用考试系统的设计与

开发[J].中南工业大学学报(自然科学版),2001,31

(4):47—48.

[2]武伟,魏晓.在线考试作弊防御方法的设计与实现[J].

上海应用技术学院学报,2006,6(1):49—51.

[3]田民格.无纸化考试系统防止考生作弊的实现措施

[J].三明学院学报,2007,24(4)1456—459.

[4]胡开明.陈建华.基于Delphi的网络监考系统设计[J】.

计算机与数字工程。2009,37(4):94—97.

[5]田民格.局域网考试系统要处理的关键技术[J].福建

电脑,2006(3):165—166.

[6]张新林.计算机辅助测验中基于消息监控与包过滤技

术的监考方法[J].计算机科学,2008,35(3):289

—291.

[7]陈少辉,张艳宁,刘艳玲.基于封包截获技术的个人防

火墙核心驱动技术[J].计算机工程,2007(6):123

一125.

(下转第30页)

・30・

南阳理T学院学报第2卷

APPLICATIoNoF3STECHNIQUEIN

UPDATINGEARTHUTILIZATIoNINVESTIGATIoN

YUShu-jun,DUXiao—ming

(NanyangInstituteofTechnology,Nanyang473004,China)

Abstract:Thedynamicearthobservationlandusing.3S

integration

are

system

consistedof3S—integrationprovides

in

solidtechnical

in

support

forupdated

survey

of

technologyisapplied

updatedsurvey

ofland

usingYuganCounty

Jiangxibyrationaltechnical

proces-

se¥,thekeyproblems

solvedintheimplementationprocess,andthe

are

projectiscompletedefficientlyandaccurately.Eventually,

obtainedaehievementanddatabase

coincidentwiththatobtainedon—site.Thisprovides

process

basisfordynamic

management

ofland.

Keywords:3S・Integration;Landusing;Updatingsurvey;Technical

(上接第23页)

THESoLUTIoNTOPREVENT

EXAMINEFRoM

CHEATlNGoF

PAPERLESSEXAMINATloNSYSTEM

GUODong—en,JIAMan・lei。WANGXu-wan,

(SchoolofSoftware,NanyangInstituteofTechnology,Nanyang473004,China)

Abstract:How

tocheatinexaminations

on

computer

andthemeasure

to

prevent

studentsfromcheating

messages

ai'e

analyzed。Thekeyboard

hook,packagefilterback.random

en

technology,thetechnologyofcallingAPI,headingoffofthe

testpaper

are

transferred

snnle

to

windowbyWindows,call。

are

generating

introducedtoprevent

studentsfromcheating.Atthetime,thekeyspecificcodes

giV・

in

the

paper.

Keywords:Examinationsystem;Cheating;Hook

technology;Packagefiltertechnology;Random

generating

test

paper

万方数据

考试系统防作弊功能的实现

作者:作者单位:刊名:英文刊名:年,卷(期):被引用次数:

郭东恩, 贾满磊, 王绪宛, GUO Dong-en, JIA Man-lei, WANG Xu-wan南阳理工学院软件学院,河南,南阳,473004南阳理工学院学报

JOURNAL OF NANYANG INSTITUTE OF TECHNOLOGY2010,02(2)1次

参考文献(7条)

1. 谭汉松;侯水英 基于局域网的通用考试系统的设计与开发[期刊论文]-中南工业大学学报(自然科学版) 2001(04)2. 武伟;魏晓 在线考试作弊防御方法的设计与实现[期刊论文]-上海应用技术学院学报 2006(01)3. 田民格 无纸化考试系统防止考生作弊的实现措施[期刊论文]-三明学院学报 2007(04)4. 胡开明;陈建华 基于Delphi 的网络监考系统设计[期刊论文]-计算机与数字工程 2009(04)5. 田民格 局域网考试系统要处理的关键技术[期刊论文]-福建电脑 2006(03)

6. 张新林 计算机辅助测验中基于消息监控与包过滤技术的监考方法[期刊论文]-计算机科学 2008(03)7. 陈少辉;张艳宁;刘艳玲 基于封包截获技术的个人防火墙核心驱动技术[期刊论文]-计算机工程 2007(06)

本文读者也读过(10条)

1. 徐巧枝. 刘东升. XU Qiao-zhi. LIU Dong-sheng 网络考试防作弊系统的研究与设计[期刊论文]-计算机教育2010(5)

2. 王鹏鸣 计算机考试系统安全性能的改进[期刊论文]-科技风2010(13)

3. 游新娥. YOU Xin-E 基于校园网的考试系统双向身份认证方案设计[期刊论文]-计算机系统应用2010,19(4)4. 张艳军. ZHANG Yan-jun 基于ASP.NET在线考试系统防作弊策略[期刊论文]-电脑知识与技术2010,06(33)5. 曹春萍. 胡德敏. CAO Chun-ping. HU De-min 基于MVC设计模式的Web考试系统的设计[期刊论文]-上海理工大学学报2005,27(5)

6. 郭东恩. 潘力 多学科通用考试系统的设计与实现[期刊论文]-电脑开发与应用2010,23(10)

7. 索昱. 马季骕. SUO Yu. MA Ji-su 基于MVC的考试系统中STRUTS框架的研究[期刊论文]-内蒙古师范大学学报(自然科学汉文版)2009,38(2)

8. 郑宗良 基于B/S模式的多学科考试系统的设计与实现[期刊论文]-电脑知识与技术2010,06(23)9. 陈倩. CHEN Qian 基于XML和自动组卷技术的自动考试系统[期刊论文]-东莞理工学院学报2011,18(1)10. 张天珍. 苗强. 李华良 计算机考试系统设计与实现[期刊论文]-科技资讯2008(12)

引证文献(1条)

1. 刘持标. 吴俊. 张鸣华. 陆永东. 陈斌. 黄保敬. 吴宝发 智能化网络考试监控系统开发[期刊论文]-网络安全技术与应用 2013(7)

本文链接:http://d.g.wanfangdata.com.cn/Periodical_nylgxyxb201002006.aspx

第2卷第2期

2010年3月

JOURNAL

OF

阳理

NANYANG

OF

TECHNOLOGY

V61.2No.2Mar.2010

INSTITUTE

文章编号:1674—5132(2010)02—0021—03

考试系统防作弊功能的实现

郭东恩,贾满磊,王绪宛

(南阳理T学院软件学院河南南阳473004)

摘要:本文分析了考试系统中考生可用的作弊手段和防止作弊的具体方法及崎点,使用钩子技术、包过滤技术、

APl调用技术、消息拦截技术、回调技术和随机组卷技术,有效阻止利用网络进行作弊、U盘接入电脑作弊、偷看、使用考试禁用的软件作弊、替考等作弊手段,同时给出了具体实现的关键代码。关键词:考试系统;作弊;钩子技术;包过滤技术;随机组卷中图分类号:TP316

文献标识码:A

通过偷看旁边考生答案作弊实际上在传统考试

0前言

随着计算机网络、多媒体、数据库和现代教育测量技术的飞速发展,传统考试方式的诸多弊端显得越来越突出,教育现代化和信息化已成为现代教育发展的一个重要方向,而无纸化考试系统是深化教学改革,减少教师工作量,提高效率,节约资源,使考试更加公平、公正的重要平台,同时有效推进学校的教学创新…。在线考试系统在国内外已经有了较为广泛的应用,在线考试作弊跟传统笔试作弊有很大区别,具有很强的隐蔽性。如何有效的防止学生作弊,保证考试的公平、公正,是考试系统要解决的一个关键问题口。41,也是国内外多数考试系统尚未完全解决的难题。

通过对考试过程的分析,利用考试系统进行考试时,考生作弊的方法有如下几种情况:网络作弊(包括网络共享、搜索引擎搜索答案、QQ等网络通信工具等),U盘接人电脑作弊,通过屏幕偷看旁边考生答案作弊,打开考试禁用的软件作弊,替考等"]。考试系统中要有效防止考生作弊,必须解决这几个问题。

中也很难有效预防,而在考试系统中,计算机之间距离更近,再加上有机器的阻隔,对监考有一定的影响,这种作弊手段更难预防。预防偷看作弊最有效的方法就是使用随机组卷策略,从大量题库中随机抽取试题组成试卷,让每个考生试题不同,或者试题顺序不同,即使考生偷看也找不到需要的内容。

替考有两种情况,第一是找外班的人冒名顶替到考场参加考试,第二是考生做完自己考题后顶替别人再做一次。通过预先保存考生电子照片,考试时在做题窗口显示考生电子照片预防替考,通过系统中设置最迟入场时间,超过时间自动禁止考试防止考生替考。

网络作弊实际上是通过网络进行信息传输和通信实现作弊,主要包含网络文件共享、搜索引擎、QQ和飞鸽传书等几种情况,想有效防止网络作弊,只需监视本机网络通信情况,使用包过滤技术对本机数据包进行分析、过滤,提取源地址与目的地址,只保留本机和考试服务器之间的数据包,抛弃含有非法地址的数据,从而阻止网络作弊行为H加一71。

接入U盘作弊实际上是在考试过程中利用u盘实现考生之间答案的传递,或者利用u盘传递考试有关的内容进行作弊。要预防接人U盘作弊,可利用Windows提供的API函数、底层钩子技术及回调技术,禁用U盘驱动,禁用设备管理器、任务管理器,防止考生重新启动U盘驱动¨芦1。

下面主要对网络作弊、U盘和非法程序作弊的预防做详细的描述。

l考试系统中常用的作弊手段和预防

原理

考生使用考试系统进行考试时,最为常见的作弊手段有:偷看,替考,网络作弊,接入U盘作弊,打开禁用的软件作弊等。

作者简介:郭东恩(1978一),男,硕士,讲师,软件设计师,主要研究方向:软件工程和数据挖掘。E・mmn:gden..2008@126.corn

万方数据

南阳理T学院学报第2卷

2利用包过滤技术防止网络作弊

为了考查考生实际动手能力,在大多数情况下,应允许考生打开资源管理器和必需的程序,这样就存在利用网络作弊的可能性。因此,一开始考试就要监视本机网络通信情况。凡是本机与考试服务器问的数据包通信,不管是采用哪种端口、哪种协议,均视为合法,而本机与非考试服务器的通信一律视为非法。这样,只要通过监视程序提取本机数据包的源地址、目的地址,利用包过滤技术抛弃含有非法地址的数据包,即可阻止利用网络进行作弊¨一¨。

2.1

数据包的获取与过滤原理

利用操作系统提供的API,在用户层下实现对

网络数据包拦截,是一个简单易行的方法。基本思路是:首先获取本机所有IP地址(多网卡情况下有多个);创建一个接口,默认所有进出包都阻塞;然后把该接口绑定到本机IP地址;接着添加访问规则,要放行某IP的数据包,必须添加该IP入和出规则,即对该IP数据包进行放行处理;然后实施拦截,只要规则添加成功,调用程序时使用相应规则进行过滤,即可屏蔽相应网络访问;退出程序时移除过滤规则,取消绑定接口,删除接口。2.2主要代码

(1)初始化,获得本机IP

WSAStartup(wVersionRequested,&wsaData);//

WSAStartup的功能是初始化Winsock.DLL

if(gethostname(hostName,128)!=0)//获取主机名api函数,值返回给hostName字符变量

localHost

gethostbyname(hostName);//根据

主机名hostName获取IP地址

WSACleanup();//WSACleanup解除与Socket库的绑定并且释放Socket库所占用的系统资源

for(;localHost!=NULL&&localHost一>h—addr

—list[10cal—ips—count]!=NULL;local—ips—count+

+);

//循环统计本机IP地址个数

this・>local—ips=(DWORD牛)malloc(sizeof

(DWORD)・local—ips_count);I/分配IP存储空间

for(inti=0;i<local—ips—count;i++)

struct

in—addr木addr=(structin—addr宰)

localHost->h_addr—list[i];

memcpy(&this->local—ips[i],&ip,sizeof

(DWORD));//c语言内存拷贝函数,把分配的IP拷人内存

万方数据

(2)创建接口

r=PfCreateInterface(0,PF—ACTION—DROP,PF—ACTION—DROP,FALSE,FALSE,&drop);

//firewallapi函数,默认全部阻塞,第2和3个参数,表示出、人默认规则为禁止

(3)绑定需要网络包过滤的IP地址到接口

for(inti=0;i<this一>local—ips—count;i++){int

errorCode=PfBindInterfaceTolPAddress

(drop,PF—IPV4,(BYTE牛)&src—ip);//绑定需要

网络包过滤的IP地址

(4)添加、删除访问规则

for(vector<DWORD>::iteratorit=filters.>be.

gin();it<filters一>end();it++)//vector是一模板类,处理dword数据的迭代器

if(tmp==dst—addr—dword)//in果规则库中

已有此目的地址规则,返回

filters一>push—back(dst—addr—dword);//加入规

则库

fih.SrcAddr=(PBYTE)&src—ip;//来源IP

地址

flit.SrcMask=(PBYTE)&addr—mask;//来

源的所有子网掩码

r=inet—addr(dst—addr,&dst—ip);//获得

目标IP地址

fih.DstAddr=(PBYTE)&dst—ip;//目标

IP地址

fih.DstMask:(PBYTE)&addr—mask;II目

标地址所有子网掩码

r:PfAddFihersToInterface(drop,0,NULL,

1,&flit,NULL);//添加出站规则

r=PfAddFihersToInterface(drop,l,&flit,0,

NULL,NULL);//入站规则添加只需设置不同参数

即可

//出站规则移除和人站规则移除只需要调

用该函数时传递不同参数即可

该功能模块生成一个动态链接库文件,在考试端软件中进行调用,通过考试端传递考试服务器IP给该模块,实现对考试服务器之外的其他网络资源进行屏蔽。通过多次考试验证,该方法在保证性能的基础上真正实现了网络作弊的预防。

3屏蔽U盘和非法程序

Windows系统是建立在事件驱动机制基础上

第2期

郭东恩等:考试系统防作弊功能的实现

・23・

的,即整个系统都是通过消息的传递来实现的。钩子函数是Windows操作系统中非常重要的系统接口,用钩子程序可以监视Windows自身系统和进程中的各种事件消息,截获并处理送给其他进程。这样就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,截获U盘等存储设备的接入和其它非法程序的运行等。一般选用类型为WH—SHELL的钩子监视系统进程,若发现有非法程序运行(比如接入U盘),则记录其违规行为,并强制关闭该程序,达到监视目的。程序的屏蔽通过回调函数实现”。1

3.1实现系统监视的主要步骤和核心代码

动态链接库部分:先采用“PUBLIC—MEMORY”定义共享内存标志,产生在监控系统里共享的内存,把钩子保存到共享内存里。同时要定义共享的数据结构,保存钩子的句柄等信息。在独立的监控方式中,可使用GetWindowLong(Application>Handle,

GWL—EXSTYLE)1wS—EX—TOOLWINDOW)让程序

“隐身”,防止被考生强制退出。主要监控过程及代

码如下:

(1)先实行动态链接部分,定义共享内存标志和数据结构

(2)确定在监控系统里共享的内存,把h—Th-isHook保存到共享内存里

(3)若是独立的监控需要隐身,监控功能直接放在考试系统中则无必要

SetWindowLong(Application)Handle,GWL—EX—STYLE,GetWindowLong(Application)Handle,GWL—

EXSTYLE)lWS—EX—TOOLWINDOW);

Application)Run();

(4)安装钩子MyHook)InitFuncs();

(5)收集作弊证据并发送给服务器违规资料if(!ValidAppCheck(hWnd,szWinClass,szWin—Caption))//调用ValidAppchecks=DateTime+

“关闭禁用程序”;

(6)判断是否允许运行某类程序,用类名及标题名读取白名单,发现违法程序,关闭。

3.2屏蔽某些应用程序

假如考试中不允许考生使用Word、Powerpoint等软件,需要将标题含有“MicrosoftWord”或“Mi.

crosoft

Powerpoint”等字样的进程关闭。先定义枚举

窗体的回调函数,在回调函数中将标题含有指定名称的进程关闭。

万方数据

回调函数代码如下:

GetWindowText(hnd,wName,32);

IfPos(’MicrosoftWord,’wName)>=lthen

PostMessage(Hnd,WM—Close,0,0);

调用回调函数以关闭含有特定标题的应用程序,代码如下:

EnumWindows(@EnumWindowsProc,0);

该功能模块建成一个动态链接库文件,可以在考试管理端设置每场考试禁用的软件和资源类型,考生考试时,读取设置信息传递给该模块,实现相应资源和软件的禁用。为防止考生结束进程,屏蔽任务管理器,设置该进程不能手动结束,真正保证了U盘和其他程序资源的禁用。

4结束语

一个真正实用的无纸化考试系统已不是一个简单的信息管理系统,也不可能用简单的编程技术来实现,它必须深入地了解操作系统的内核,并充分应用这些系统内核技术以实现真正的预防作弊,让考试公平、公正,真正体现每个考生的实际水平。文章结合包过滤技术、API调用技术、消息拦截技术、回调技术、钩子技术,提供了一套解决无纸化考试系统中防止考生作弊问题的可行方案。经过多年运行测试,证明以上技术安全、可靠、有效。

参考文献

[1]谭汉松,侯水英.基于局域网的通用考试系统的设计与

开发[J].中南工业大学学报(自然科学版),2001,31

(4):47—48.

[2]武伟,魏晓.在线考试作弊防御方法的设计与实现[J].

上海应用技术学院学报,2006,6(1):49—51.

[3]田民格.无纸化考试系统防止考生作弊的实现措施

[J].三明学院学报,2007,24(4)1456—459.

[4]胡开明.陈建华.基于Delphi的网络监考系统设计[J】.

计算机与数字工程。2009,37(4):94—97.

[5]田民格.局域网考试系统要处理的关键技术[J].福建

电脑,2006(3):165—166.

[6]张新林.计算机辅助测验中基于消息监控与包过滤技

术的监考方法[J].计算机科学,2008,35(3):289

—291.

[7]陈少辉,张艳宁,刘艳玲.基于封包截获技术的个人防

火墙核心驱动技术[J].计算机工程,2007(6):123

一125.

(下转第30页)

・30・

南阳理T学院学报第2卷

APPLICATIoNoF3STECHNIQUEIN

UPDATINGEARTHUTILIZATIoNINVESTIGATIoN

YUShu-jun,DUXiao—ming

(NanyangInstituteofTechnology,Nanyang473004,China)

Abstract:Thedynamicearthobservationlandusing.3S

integration

are

system

consistedof3S—integrationprovides

in

solidtechnical

in

support

forupdated

survey

of

technologyisapplied

updatedsurvey

ofland

usingYuganCounty

Jiangxibyrationaltechnical

proces-

se¥,thekeyproblems

solvedintheimplementationprocess,andthe

are

projectiscompletedefficientlyandaccurately.Eventually,

obtainedaehievementanddatabase

coincidentwiththatobtainedon—site.Thisprovides

process

basisfordynamic

management

ofland.

Keywords:3S・Integration;Landusing;Updatingsurvey;Technical

(上接第23页)

THESoLUTIoNTOPREVENT

EXAMINEFRoM

CHEATlNGoF

PAPERLESSEXAMINATloNSYSTEM

GUODong—en,JIAMan・lei。WANGXu-wan,

(SchoolofSoftware,NanyangInstituteofTechnology,Nanyang473004,China)

Abstract:How

tocheatinexaminations

on

computer

andthemeasure

to

prevent

studentsfromcheating

messages

ai'e

analyzed。Thekeyboard

hook,packagefilterback.random

en

technology,thetechnologyofcallingAPI,headingoffofthe

testpaper

are

transferred

snnle

to

windowbyWindows,call。

are

generating

introducedtoprevent

studentsfromcheating.Atthetime,thekeyspecificcodes

giV・

in

the

paper.

Keywords:Examinationsystem;Cheating;Hook

technology;Packagefiltertechnology;Random

generating

test

paper

万方数据

考试系统防作弊功能的实现

作者:作者单位:刊名:英文刊名:年,卷(期):被引用次数:

郭东恩, 贾满磊, 王绪宛, GUO Dong-en, JIA Man-lei, WANG Xu-wan南阳理工学院软件学院,河南,南阳,473004南阳理工学院学报

JOURNAL OF NANYANG INSTITUTE OF TECHNOLOGY2010,02(2)1次

参考文献(7条)

1. 谭汉松;侯水英 基于局域网的通用考试系统的设计与开发[期刊论文]-中南工业大学学报(自然科学版) 2001(04)2. 武伟;魏晓 在线考试作弊防御方法的设计与实现[期刊论文]-上海应用技术学院学报 2006(01)3. 田民格 无纸化考试系统防止考生作弊的实现措施[期刊论文]-三明学院学报 2007(04)4. 胡开明;陈建华 基于Delphi 的网络监考系统设计[期刊论文]-计算机与数字工程 2009(04)5. 田民格 局域网考试系统要处理的关键技术[期刊论文]-福建电脑 2006(03)

6. 张新林 计算机辅助测验中基于消息监控与包过滤技术的监考方法[期刊论文]-计算机科学 2008(03)7. 陈少辉;张艳宁;刘艳玲 基于封包截获技术的个人防火墙核心驱动技术[期刊论文]-计算机工程 2007(06)

本文读者也读过(10条)

1. 徐巧枝. 刘东升. XU Qiao-zhi. LIU Dong-sheng 网络考试防作弊系统的研究与设计[期刊论文]-计算机教育2010(5)

2. 王鹏鸣 计算机考试系统安全性能的改进[期刊论文]-科技风2010(13)

3. 游新娥. YOU Xin-E 基于校园网的考试系统双向身份认证方案设计[期刊论文]-计算机系统应用2010,19(4)4. 张艳军. ZHANG Yan-jun 基于ASP.NET在线考试系统防作弊策略[期刊论文]-电脑知识与技术2010,06(33)5. 曹春萍. 胡德敏. CAO Chun-ping. HU De-min 基于MVC设计模式的Web考试系统的设计[期刊论文]-上海理工大学学报2005,27(5)

6. 郭东恩. 潘力 多学科通用考试系统的设计与实现[期刊论文]-电脑开发与应用2010,23(10)

7. 索昱. 马季骕. SUO Yu. MA Ji-su 基于MVC的考试系统中STRUTS框架的研究[期刊论文]-内蒙古师范大学学报(自然科学汉文版)2009,38(2)

8. 郑宗良 基于B/S模式的多学科考试系统的设计与实现[期刊论文]-电脑知识与技术2010,06(23)9. 陈倩. CHEN Qian 基于XML和自动组卷技术的自动考试系统[期刊论文]-东莞理工学院学报2011,18(1)10. 张天珍. 苗强. 李华良 计算机考试系统设计与实现[期刊论文]-科技资讯2008(12)

引证文献(1条)

1. 刘持标. 吴俊. 张鸣华. 陆永东. 陈斌. 黄保敬. 吴宝发 智能化网络考试监控系统开发[期刊论文]-网络安全技术与应用 2013(7)

本文链接:http://d.g.wanfangdata.com.cn/Periodical_nylgxyxb201002006.aspx


相关内容

  • 在线考试系统设计方案
  • 在线考试系统设计方案 一.概述 传统的考试方式组织一次考试至少要经过人工出卷.考生考试.人工阅卷.成绩统计和试卷分析五个步骤.随着考试规模的不断扩大,工作量将会越来越大而且容易出错.因此开发一套在线考试系统具有重要的现实意义: 1.在线考试突破了时空限制.在线考试系统突破了传统考试模式的时间.空间的 ...

  • 培训教室方案-2014-6-23
  • 培训教室解决方案 万合集团信息技术分公司 2014.04.20 一.系统概述 当今,重视现代培训技术对培训产生的影响,大力推进培训现代化是世界培训发展的主流.我国在运用现代培训技术手段整合培训的过程中,已取得了相当成效.采用先进的培训手段,提供全新的培训环境,来设计培训活动,已经成为市场的趋势所在. ...

  • 考试想作弊?门都没有
  • 目前,驾驶员考试的报名人数呈现激增态势.根据交管部门公开的数据,截至2004年底,北京市机动车保有量仅有229万余辆,机动车驾驶员总数为351万余人.2010年底,北京市开始购车摇号,机动车数量增长明显减少,但驾驶员的数量仍然增长较快.截至2014年3月,北京市机动车保有量551万辆,驾驶人841. ...

  • 13年安徽省成人高考报考须知
  • 2013年安徽省成人高考报考须知 一.成人高等学历教育的招生类型及学习形式 (一)招生类型 成人高等学校招生实行全国统一考试,招生类型有三种:1.专科起点升本科:2.高中起点升本科:3.高中起点升专科.考生在网上报名时根据自己的需要,选择相应的招生类型. (二)学习形式 成人高等学校的学习 ...

  • 信息系毕业论文
  • 南通纺织职业技术学院毕业设计(论文) 网上考试系统 XXX 班 级 05网络 专 业 计算机网络 教 学 系 信息系 指导教师 完成时间年日至 目录 ......................................................................... 3 ...

  • 关于学校教育考试诚信缺失的思考
  • 2008年12月 长春教育学院学报D e c .2008 筮星垒鲞签垒坦 』Q 婪塑垦! Q £鱼曼旦g 曼b 婴四竖鲢i 塑.!!! !i ! 型12. 一 Y Q ! :丝盥Q :垒 关于学校教育考试诚信缺失的思考 邵明 (温州教育考试院,浙江温州325035) 摘要:考试诚信缺失普遍存在于我国 ...

  • 2016年九年级学生动员会
  • 2016年九年级学生动员会上的发言 九年级的同学们:大家下午好! 今天已是5月4日,是中国的青年节,是你们的节日,是一个纪念中国青年追求理想节日.离我们的中考却只有1个多月.我们刚参加了全县组织的第一次模拟考试,可以说中考的号角已经吹响.在这紧要关头学校仍然停下课来召集大家开会.正应了一名俗语:磨刀 ...

  • 交大学生守则
  • 学 生 手 册 (夜大学) 二○一○年二月 爱国荣校 饮水思源 目 录 一.高等学校学生行为准则„„„„„„„„„„„„„„„1 二.学籍管理办法„„„„„„„„„„„„„„„„„„„3 入学与注册„„„„„„„„„„„„„„„„„„3 成绩考核与记载„„„„„„„„„„„„„„„„4 免修.选修. ...

  • 无纸化考试系统
  • 无纸化考试系统 摘要:计算机网络技术的飞速发展,特别是计算机硬件技术的发展已经达到了相当高的水平.但是,在我国远程教育软件的开发目前还处于起步阶段,随着这项技术的不断深入发展,就要求有更好.更完善的软件系统应用到远程教育当中去,这就给软件设计人员提出了更高的设计要求. 我们本次设计的无纸化考试系统网 ...