I m目前正在撰写自动源代码验证工具。 基本上,学生必须上载其C#源代码,作为不同任务的解决办法。 服务器在框架中汇编这些档案,对照不同的投入文件对方案进行检查。 如果方案产出有效(与预先确定的产出相同),课程表是有效的,学生可以找到方案点。
But I don t think I can trust the students ;) The might try to gain file access or execute other bad things on the server.
What can I do to restrict access to a minimum?
What do I need to consider?
深思:
- file access
- max. execution time
- starting other programms
- doing networking stuff
- reflection
目前,我可以想象的检查守则的唯一途径是利用常规表述,寻找“File”、“Net”、“Process”等关键词。
But I m pretty sure that this is VERY unsecure.
Any suggestions?