在Ubuntu下的信息学评测软件

新手涉及到的教学或入门贴,推荐新手必看,版主维护
cosechy
帖子: 82
注册时间: 2008-03-06 4:56

Re: 在Ubuntu下的信息学评测软件

#16

帖子 cosechy » 2009-08-17 20:46

afphoenix 写了:
cosechy 写了:评测器主要是要考虑安全。。不考虑安全的话随便写个脚本就能比这强的多。。
:em20 那您给随便写个?
既然这么说。。。
http://lowsars.sourceforge.net/index.html
这东西的单点测程序是我写的
主程序我不负责,而且我对那东西比较不满意。。而且网站上的烂英文也不是我写的
当时本来我打算下个版本用makefile+tcl重写一下主程序,不过现在这东西根本没人管了

。。。。。
不过上千行的脚本可能不算随便写个脚本了吧。。
cosechy
帖子: 82
注册时间: 2008-03-06 4:56

Re: 在Ubuntu下的信息学评测软件

#17

帖子 cosechy » 2009-08-17 20:56

附以前在某处说的对评测器来说一大堆可能的安全问题整理

1.getchar() (不计入user和sys时间)
2.fork() (最简单的死机方法。。不需要任何权限。。)
3.{$inline on}procedure a;inline;begin end;procedure b;inline;begin a;a;a;a;a;a;a;a;a;a end;procedure c;inline;begin b;b;b;b;b;b;b;b;b;b end;procedure d.........;begin k;k;k;k;k;k;k;k;k;k end (pascal,编译器占用过多内存)
4.system("rm -rf ........") (简单的破坏行为)
5.system("at now <<<'......>/tmp/xxx;sleep 0.2s;kill -cont '$$;kill -stop $$; cat /tmp/xxx") (利用at命令绕过所有资源限制)
6.printf("%c",14) (毁掉终端的输出)
7.被测程序名叫gdm X11 bash等等的情况 (当时某评测器是用killall命令杀掉进程的)
8.多线程评测(当然也会有多个sleep进程) (当时说的是bash写的评测器,指同时运行多个评测器的进程)


9.调用劣质X程序利用某些驱动问题造成死机。。
10.调用sudo卡掉终端(sudo不用root帐号杀不掉,而且不管你怎么搞都可以绕过标准输入的重定向,直接在终端读数据)
11.测试过程中访问和滥用网络(比如被黑客当作跳板。。)
12.偷到某些有意义的系统日志和某些不安全的密码,比如firefox的配置,某些php程序的配置
13.在/tmp写入大量数据塞满硬盘


14.在程序里把输出文件链接到某些设备文件,没有权限的话至少可以用/dev/zero或者/dev/random之类的无限长文件卡掉评测器
回复