
像 http://zh.scala-tour.com/ 这样的网站,他们的代码直接在服务器上运行然后返还结果吗?还是在什么沙箱或虚拟机里运行。
如果在服务器上运行,是不是我在他的代码框里执行以下代码就可以把它的进程给杀了。。。
val rt:Runtime = Runtime.getRuntime();
val p:Process = rt.exec("kill n");
1 Livid MOD PRO 那你就在框里尝试一下各种可能性就知道了。 |
2 oisc Jun 4, 2015 楼主你做了什么。。。。。 网站进不去了。。。。 |
3 lujiajing1126 Jun 4, 2015 Application Error An error occurred in the application and your page could not be served. Please try again in a few moments. If you are the application owner, check your logs for details. LZ你干了什么。。。 |
4 hellomsg OP 谁知道真这样 |
6 isaced Jun 4, 2015 真的吗? |
7 hellomsg OP |
9 zrp1994 Jun 4, 2015 楼主好样的 |
10 lujiajing1126 Jun 4, 2015 @hellomsg 查下域名是谁的。。然后写个Email。。。 |
12 x4 Jun 4, 2015 via Android 楼主怎么可以这样。。。。 |
13 ezreal Jun 4, 2015 docker |
15 mytharcher Jun 4, 2015 是 heroku 上的,估计是没有捕获异常,然后 app 进程就挂了。 |
16 hellomsg OP 一失足成千古恨,怎么办,蹲监狱吗 |
17 razrlele Jun 4, 2015 via Android 简直6 |
18 xiaozi Jun 4, 2015 docker 做沙箱,http://tool.lu/coderunner/ 欢迎测试 |
19 vjnjc Jun 4, 2015 现在能进了啊,我还贴了楼主的代码然而没有什么鸟用 |
21 molinxx Jun 4, 2015 via iPhone 这类网站有不少,有问题的也不少,我记得有个T字母开头的,可以执行那个Fork炸弹,已经发邮件通知官方了,貌似仍未处理… |
23 oott123 Jun 5, 2015 via Android 哈哈哈哈哈今日最佳 |
24 shawnxwang Jun 5, 2015 via iPhone 楼主你太棒了… |
25 wilsonxyz Jun 5, 2015 |
26 Jafee Jun 5, 2015 via Android 哈哈哈! |
27 cnnblike Jun 5, 2015 哈哈哈哈哈哈,楼主好萌啊 |
28 ligyxy Jun 5, 2015 从第二楼开始就忍不住笑了 |
30 fuge Jun 5, 2015 via iPhone 哈哈哈哈哈哈 笑尿了 |
31 virusdefender Jun 5, 2015 @xiaozi 你是怎么加固的docker呢?最近在做oj的判题,发现docker默认的配置还是有安全风险的。 |
34 wy315700 Jun 5, 2015 @virusdefender oj的判题,ptrace禁止标准输入输出外的系统调用就没问题了吧,我们以前的OJ工作了好多年了。。。 |
35 gamexg Jun 5, 2015 C,C++,D,Haskell,Lua,OCaml,PHP,Perl,Plain Text,Python,Ruby,Scheme,Tcl 在线执行 http://www.chenwang.net/2015/05/29/%E5%9C%A8%E7%BA%BF%E5%B7%A5%E5%85%B7%E6%94%B6%E9%9B%86%EF%BC%9Ajs%E3%80%81html%E3%80%81c%E3%80%81c%E3%80%81php%E3%80%81python%E3%80%81sql%E3%80%81%E6%AD%A3%E5%88%99%E3%80%81ping%E3%80%81%E8%BF%9C/ |
36 hellomsg OP |
38 virusdefender Jun 5, 2015 @wy315700 ptrace对性能影响有些大呢 |
39 wy315700 Jun 5, 2015 @virusdefender 不ptrace你怎么获取程序的 :“执行时间”,“使用内存”,怎么在程序超时的时候kill掉。 其实对性能影响不怎么样,因为真正在OJ里跑的,基本上系统调用很少,触发的也少。 当然,还有一些攻击,比如 "include攻击"需要额外注意一下。。。 |
40 virusdefender Jun 5, 2015 |
41 wy315700 Jun 5, 2015 @virusdefender 会有问题的,机器负载大的时候,而且如果不进行实时监控,MLE和OLE会挤爆的。 ICPC现场一般都是PC2,也没什么安全防护,结果当初我们比赛的时候有个人提交了这么个代码: while(1) fork(); 然后,,,,, |
42 denghongcai Jun 5, 2015 我勒个去……还真崩了…… docker沙箱只要不给sudo权限,不给root,不挂载外部文件系统还是安全的 主要是要限制docker的资源使用和CPU时间 |
43 cjyang1128 Jun 5, 2015 @cnnblike 惊现柯神 |
44 HowardMei Jun 5, 2015 笑死了,哈哈,楼主经不起诱惑啊,名人一劝,就把节操给丢了 |
45 qqjt Jun 5, 2015 ……我服 |
46 zythum Jun 5, 2015 今日最佳 |
47 qsz13 Jun 5, 2015 刚刚试了下rm...现在好像又不能访问了,我是不是该给作者写邮件道歉了 |
48 learnshare Jun 5, 2015 Good Job ! |
49 shiniv Jun 5, 2015 现在404了.... |
50 houfukude Jun 5, 2015 噗 果然404了 你们这群坏人! |
55 subpo Jun 5, 2015 火钳刘明! |
56 secondwtq Jun 5, 2015 最近也在做这个东西... 说来我一个 ACM 渣,怎么就做起了 OJ 呢... |
57 YORYOR Jun 5, 2015 你们玩大了 我就是那个站长! |
61 Syaoran Jun 5, 2015 via iPhone 这就404了,如果站长没备份怎么办…… |
62 hellov22ex Jun 5, 2015 玩大了,已经404了 |
63 liujiantao Jun 5, 2015 via Android 这也是得怪作者不加以限制,kill可以执行,rm都可以。。。 |
64 lazycat Jun 5, 2015 卧槽这个有点厉害。。。笑死我了哈哈哈哈 |
65 momou Jun 5, 2015 赔我午饭!!! |
66 lrqrun Jun 5, 2015 哈哈,作者要找你拼命了 |
67 chinabrowser Jun 5, 2015 via Android 陪我早餐Σ(っ °Д °;)っ |
68 qihboy Jun 5, 2015 23333333333.... |
71 RIcter Jun 5, 2015 |
73 duteng612 Jun 5, 2015 使用chroot(http://www.tutorialspoint.com/unix_system_calls/chroot.html),修改root dictionary;这一步骤可以保证你的服务器安全;然后再当前目录下配置运行环境(解释型和编译型的语言有些差异),不同语言也需要做一些不同的处理,之后使用ptrace跟踪运行程序; |
74 KayYan Jun 5, 2015 @hellomsg 我才是真正的作者。 当初做的时候,考虑这个问题。觉得坑很大,就决定不自己处理,让Heroku帮我搞。现在看样子Heroku也靠不住。挑个吉时上DaoCloud吧。 |
79 Mrxx Jun 5, 2015 "框里尝试一下" 不能更清晰 |
80 asj Jun 5, 2015 |
81 cctv6 Jun 5, 2015 |
84 fwee Jun 5, 2015 @KayYan 参与过他们内测 部署个应用后还拿了件衣服 (这里赞下Daocloud, 服务和T恤都很赞..),国内访问速度要比heroku好 强烈推荐 等作者上了Daocloud后去kill下试试..看能不能再骗件衣服.. |
86 daocloud Jun 5, 2015 他是 曾经的软院大神 今日DaoCloud的主架构师 人称开叔的 @KayYan 多年前的Scala神作,在V2EX上被躺枪 Heroku靠不住,DoCloud玩不坏 开叔轻轻的敲下重大决策按钮 Docker Run,从此不再404 ~DaoCloud祝V2EX网友周末愉快~ |
87 sakeven Jun 5, 2015 @virusdefender 我们使用ptrace做的,目前大部分oj的判题实现也是这个,禁止某些系统调用,限制堆栈、运行时间、内存等。可以看看我们的 <a href="https://github.com/ZJGSU-Open-Source/RunServer/tree/master/Cjudger"> ZJGSU </a> |
90 wy315700 Jun 5, 2015 @est 肯定是看到帖子注册的。。。 @sakeven 话说你们的代码和HUST的好像,,, 搭车也放一下我们Ecust的OJ系统 https://github.com/wy315700/ecustoj/tree/master/JudgeCore1 @virusdefender |
95 flowfire Jun 6, 2015 今日最佳2333333 |
96 gooffer Jun 6, 2015 @virusdefender 什么风险-,- |
98 comzyh Jun 6, 2015 via Android 炸出一片做OJ的 |
99 nowcoder Jun 6, 2015 神人太多,好担忧牛客网的OJ -,- |
100 wizardforcel Jun 6, 2015 |