|
|
|
@ -1,303 +1,235 @@
|
|
|
|
|
#if 0
|
|
|
|
|
shc Version 4.0.3, Generic Shell Script Compiler
|
|
|
|
|
shc Version 3.9.6, Generic Shell Script Compiler
|
|
|
|
|
GNU GPL Version 3 Md Jahidul Hamid <jahidulhamid@yahoo.com>
|
|
|
|
|
|
|
|
|
|
shc -v -r -f sender-d.sh
|
|
|
|
|
shc -f sender-d.sh
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
static char data [] =
|
|
|
|
|
#define pswd_z 256
|
|
|
|
|
#define pswd ((&data[15]))
|
|
|
|
|
"\073\237\114\151\003\324\064\061\057\100\342\310\062\343\346\075"
|
|
|
|
|
"\105\011\036\257\154\107\223\050\237\060\137\020\063\015\377\156"
|
|
|
|
|
"\162\230\321\117\026\333\267\322\335\062\077\075\261\355\172\366"
|
|
|
|
|
"\367\231\246\144\341\071\215\201\151\354\221\234\371\221\013\153"
|
|
|
|
|
"\052\334\273\101\267\162\023\224\244\123\322\125\100\115\114\067"
|
|
|
|
|
"\347\362\233\310\053\050\111\225\025\333\061\016\154\075\172\227"
|
|
|
|
|
"\031\065\330\320\250\354\145\114\077\067\242\200\204\357\267\154"
|
|
|
|
|
"\341\123\064\015\174\176\242\221\131\324\240\306\021\032\136\053"
|
|
|
|
|
"\117\066\373\367\043\141\104\142\230\347\342\035\326\232\212\270"
|
|
|
|
|
"\356\276\306\152\075\151\374\227\076\234\135\120\266\273\173\006"
|
|
|
|
|
"\362\167\376\025\330\103\170\161\052\133\217\001\366\031\272\344"
|
|
|
|
|
"\330\201\116\025\352\113\254\051\347\012\171\236\305\365\245\270"
|
|
|
|
|
"\154\243\316\105\346\106\267\021\242\106\023\230\137\316\174\067"
|
|
|
|
|
"\117\313\115\072\026\371\143\376\003\334\234\311\322\101\202\076"
|
|
|
|
|
"\345\120\204\313\227\073\335\071\202\360\321\341\276\116\031\016"
|
|
|
|
|
"\031\146\110\057\140\253\056\144\210\312\056\132\014\260\231\361"
|
|
|
|
|
"\000\036\275\230\131\232\321\333\213\243\275\112\361\327\130\360"
|
|
|
|
|
"\173\100\213\115\034\027\361\331\141\342\261\272\356\360\133\051"
|
|
|
|
|
"\217\247\222\222\173\307\304\253\007\247\163\072\212\132\052\005"
|
|
|
|
|
"\232\266\123\266\315\104\220"
|
|
|
|
|
#define date_z 1
|
|
|
|
|
#define date ((&data[311]))
|
|
|
|
|
"\375"
|
|
|
|
|
#define tst2_z 19
|
|
|
|
|
#define tst2 ((&data[312]))
|
|
|
|
|
"\031\242\273\246\041\336\076\145\246\300\036\051\047\366\106\356"
|
|
|
|
|
"\220\064\226"
|
|
|
|
|
#define shll_z 10
|
|
|
|
|
#define shll ((&data[331]))
|
|
|
|
|
"\142\312\022\213\061\052\357\062\161\266\353\321"
|
|
|
|
|
#define inlo_z 3
|
|
|
|
|
#define inlo ((&data[343]))
|
|
|
|
|
"\216\314\250"
|
|
|
|
|
#define msg1_z 65
|
|
|
|
|
#define msg1 ((&data[347]))
|
|
|
|
|
"\300\115\164\240\306\270\356\211\346\362\207\042\205\377\337\231"
|
|
|
|
|
"\113\016\267\021\330\324\374\242\242\336\361\041\143\054\223\355"
|
|
|
|
|
"\361\326\220\125\016\336\260\031\012\341\025\102\124\131\005\244"
|
|
|
|
|
"\234\133\315\262\013\375\340\025\227\352\060\034\236\222\347\136"
|
|
|
|
|
"\160\356\206\333\112\340\006\120\173\274\243\061"
|
|
|
|
|
#define chk1_z 22
|
|
|
|
|
#define chk1 ((&data[427]))
|
|
|
|
|
"\270\017\004\242\044\277\223\036\316\135\273\047\172\354\056\123"
|
|
|
|
|
"\141\200\041\375\363\101\127\122\242\373\336\067\346\143\370"
|
|
|
|
|
#define text_z 1869
|
|
|
|
|
#define text ((&data[549]))
|
|
|
|
|
"\071\315\146\114\156\047\322\111\162\262\117\303\055\014\146\137"
|
|
|
|
|
"\226\117\042\116\136\046\360\203\135\327\346\126\251\033\243\342"
|
|
|
|
|
"\351\012\056\127\062\000\240\244\263\360\147\341\374\316\101\222"
|
|
|
|
|
"\035\143\341\174\212\322\377\350\251\345\076\122\001\342\065\352"
|
|
|
|
|
"\355\143\101\037\144\342\304\030\323\053\372\320\372\073\142\030"
|
|
|
|
|
"\237\104\224\051\026\223\022\300\171\121\023\172\064\110\144\041"
|
|
|
|
|
"\131\377\367\164\123\316\261\141\353\367\301\016\274\016\120\047"
|
|
|
|
|
"\114\046\100\031\034\140\073\010\260\305\236\267\340\334\172\305"
|
|
|
|
|
"\021\246\221\332\021\311\021\154\112\347\316\242\317\135\332\301"
|
|
|
|
|
"\336\151\126\072\217\354\230\133\220\107\301\140\001\353\360\166"
|
|
|
|
|
"\213\363\372\027\233\047\323\276\201\201\216\023\154\320\161\313"
|
|
|
|
|
"\320\152\257\025\322\272\025\153\247\235\321\160\071\321\067\253"
|
|
|
|
|
"\241\156\046\022\220\271\031\066\331\215\206\354\323\250\277\275"
|
|
|
|
|
"\253\021\137\373\037\247\054\101\371\345\374\104\113\056\231\313"
|
|
|
|
|
"\256\361\253\230\051\271\176\340\337\333\050\341\362\056\167\255"
|
|
|
|
|
"\110\043\213\146\047\300\122\142\314\236\021\040\074\377\243\374"
|
|
|
|
|
"\373\242\311\017\027\025\325\213\232\031\105\104\013\052\212\072"
|
|
|
|
|
"\030\104\271\142\045\220\026\110\122\375\151\376\117\030\367\246"
|
|
|
|
|
"\217\256\245\325\077\346\276\327\045\113\166\374\164\175\046\022"
|
|
|
|
|
"\327\265\135\221\047\346\332\276\260\240\227\230\211\165\023\170"
|
|
|
|
|
"\316\154\240\317\001\217\073\173\212\106\115\070\141\315\324\116"
|
|
|
|
|
"\204\026\326\026\254\252\257\044\333\310\024\223\327\026\336\312"
|
|
|
|
|
"\151\363\273\204\220\242\016\226\317\314\156\124\240\122\232\124"
|
|
|
|
|
"\110\055\240\223\016\373\000\136\102\135\122\057\222\070\210\130"
|
|
|
|
|
"\012\234\324\361\047\201\232\126\155\021\270\134\303\377\110\250"
|
|
|
|
|
"\220\352\314\011\276\260\131\175\233\367\254\266\366\263\014\102"
|
|
|
|
|
"\237\066\305\270\257\117\034\316\147\136\133\373\051\333\006\077"
|
|
|
|
|
"\242\225\073\276\155\106\311\232\247\112\341\143\016\103\013\062"
|
|
|
|
|
"\214\247\315\302\241\024\076\037\135\126\145\227\342\323\061\230"
|
|
|
|
|
"\016\246\203\251\033\223\105\251\131\001\060\306\305\034\005\133"
|
|
|
|
|
"\161\366\173\132\343\314\135\205\273\260\170\145\370\262\153\321"
|
|
|
|
|
"\253\345\131\260\346\020\367\016\127\056\307\040\112\052\012\264"
|
|
|
|
|
"\247\057\273\157\016\275\270\226\173\033\071\042\072\142\170\134"
|
|
|
|
|
"\045\016\163\251\362\073\214\166\354\103\017\330\122\073\211\204"
|
|
|
|
|
"\200\004\003\176\324\343\275\017\056\341\055\071\173\175\144\147"
|
|
|
|
|
"\365\115\274\012\253\277\036\370\220\115\307\120\131\037\206\063"
|
|
|
|
|
"\355\032\324\265\064\114\014\217\113\302\125\301\033\100\357\042"
|
|
|
|
|
"\334\212\202\353\262\040\130\240\027\110\343\271\356\171\001\325"
|
|
|
|
|
"\167\062\056\061\210\316\075\142\261\005\116\142\230\367\343\135"
|
|
|
|
|
"\174\302\375\047\075\334\222\326\253\073\174\173\360\260\021\344"
|
|
|
|
|
"\331\315\146\233\057\007\314\231\256\113\221\021\126\173\045\315"
|
|
|
|
|
"\247\126\162\253\375\041\043\263\232\274\171\132\320\020\070\152"
|
|
|
|
|
"\013\224\371\045\350\270\077\251\145\063\357\171\036\245\125\315"
|
|
|
|
|
"\020\206\333\111\062\331\054\144\346\173\132\113\374\043\022\371"
|
|
|
|
|
"\311\101\043\300\337\334\367\145\030\023\207\043\253\042\227\302"
|
|
|
|
|
"\350\037\067\332\350\253\117\124\243\341\046\211\061\007\303\154"
|
|
|
|
|
"\022\210\064\112\311\170\123\071\332\266\205\151\265\300\343\237"
|
|
|
|
|
"\147\001\024\013\173\265\330\375\070\111\044\246\204\155\146\067"
|
|
|
|
|
"\036\060\065\251\005\354\200\115\136\076\034\040\335\033\043\221"
|
|
|
|
|
"\374\211\170\061\251\321\372\116\023\167\330\007\310\060\175\076"
|
|
|
|
|
"\064\242\253\131\116\074\275\022\133\016\203\214\254\115\002\325"
|
|
|
|
|
"\046\213\073\107\241\341\273\110\300\236\005\231\275\325\012\175"
|
|
|
|
|
"\365\056\370\275\132\330\041\035\166\130\240\013\162\041\163\140"
|
|
|
|
|
"\377\225\075\315\115\106\270\277\233\113\106\305\270\240\026\106"
|
|
|
|
|
"\317\325\264\324\126\337\214\155\366\331\372\200\306\272\163\333"
|
|
|
|
|
"\266\343\246\100\016\002\242\070\231\262\005\137\323\257\343\047"
|
|
|
|
|
"\301\206\266\341\302\046\266\167\227\276\125\165\027\044\353\035"
|
|
|
|
|
"\043\036\300\137\140\244\156\205\364\361\067\016\324\110\142\167"
|
|
|
|
|
"\125\216\360\003\023\161\060\263\356\073\050\173\151\371\005\027"
|
|
|
|
|
"\027\273\363\163\017\044\064\055\267\345\052\320\370\132\374\123"
|
|
|
|
|
"\020\263\163\176\037\145\346\003\275\377\154\040\166\363\224\240"
|
|
|
|
|
"\214\304\332\367\057\146\070\165\101\026\125\361\100\357\001\031"
|
|
|
|
|
"\305\363\242\164\125\067\077\063\134\271\250\242\243\022\031\114"
|
|
|
|
|
"\225\006\352\203\137\376\201\147\225\372\053\217\331\003\156\143"
|
|
|
|
|
"\332\361\315\167\027\232\307\331\314\071\025\271\047\031\126\310"
|
|
|
|
|
"\254\200\324\257\022\351\244\007\335\036\150\036\362\072\021\007"
|
|
|
|
|
"\140\155\073\242\063\071\162\205\121\257\302\056\155\071\306\057"
|
|
|
|
|
"\236\364\027\143\074\375\254\324\117\176\242\267\247\215\374\137"
|
|
|
|
|
"\003\123\113\247\064\347\123\321\123\044\211\351\253\045\226\324"
|
|
|
|
|
"\034\147\117\066\000\370\074\041\242\137\270\361\106\154\113\045"
|
|
|
|
|
"\275\172\101\331\157\137\222\202\136\241\075\132\267\033\325\113"
|
|
|
|
|
"\042\352\305\133\274\252\111\213\330\215\261\145\322\246\174\031"
|
|
|
|
|
"\267\347\275\247\251\030\255\106\116\362\117\277\024\135\356\172"
|
|
|
|
|
"\033\066\346\252\205\144\302\147\131\076\122\021\152\225\313\235"
|
|
|
|
|
"\202\066\043\300\027\147\263\001\201\341\121\051\310\140\317\333"
|
|
|
|
|
"\131\254\112\104\337\014\320\143\375\231\252\220\064\143\234\000"
|
|
|
|
|
"\017\304\317\113\131\055\324\177\367\224\230\264\132\311\261\152"
|
|
|
|
|
"\034\137\223\225\365\314\014\076\377\025\023\040\222\043\022\047"
|
|
|
|
|
"\332\363\144\102\015\314\010\256\206\065\310\103\337\001\326\206"
|
|
|
|
|
"\024\354\074\045\337\107\003\225\137\032\055\332\056\347\073\055"
|
|
|
|
|
"\267\115\315\204\061\310\304\007\065\267\107\176\066\216\011\014"
|
|
|
|
|
"\066\215\236\247\176\327\164\113\353\215\343\313\302\106\302\250"
|
|
|
|
|
"\077\220\165\207\015\144\336\311\065\351\311\163\104\104\267\262"
|
|
|
|
|
"\307\057\106\061\110\271\053\136\133\263\066\177\103\212\234\166"
|
|
|
|
|
"\271\130\043\076\352\006\066\017\220\207\275\024\235\356\377\344"
|
|
|
|
|
"\005\257\200\002\253\123\052\015\326\342\225\116\137\256\213\354"
|
|
|
|
|
"\251\026\237\347\166\014\121\075\306\022\247\276\265\017\375\161"
|
|
|
|
|
"\174\113\273\017\227\064\057\217\376\326\311\140\354\074\160\121"
|
|
|
|
|
"\346\370\327\255\277\376\062\301\033\111\042\016\233\162\101\303"
|
|
|
|
|
"\161\123\210\042\157\270\114\252\372\315\352\335\221\115\300\252"
|
|
|
|
|
"\163\344\140\324\157\261\256\232\173\171\024\250\006\342\320\340"
|
|
|
|
|
"\365\137\167\336\216\320\337\345\265\346\363\133\023\076\121\117"
|
|
|
|
|
"\002\021\237\112\206\043\012\370\033\045\133\151\303\330\001\222"
|
|
|
|
|
"\073\174\074\320\054\005\127\000\210\240\347\131\256\126\253\007"
|
|
|
|
|
"\342\137\135\162\075\344\340\210\333\057\141\042\223\055\006\174"
|
|
|
|
|
"\000\005\225\117\203\320\143\136\130\037\333\217\136\371\221\220"
|
|
|
|
|
"\052\071\173\374\261\213\235\241\071\260\057\226\360\212\211\346"
|
|
|
|
|
"\333\062\135\157\357\316\156\022\111\201\010\151\065\111\364\364"
|
|
|
|
|
"\137\005\161\265\354\014\003\204\117\112\075\042\357\165\042\354"
|
|
|
|
|
"\263\304\343\323\045\127\244\326\160\216\335\042\353\173\135\061"
|
|
|
|
|
"\354\306\013\252\265\013\046\173\100\050\146\372\303\210\171\200"
|
|
|
|
|
"\160\377\013\300\245\265\307\146\355\047\052\007\011\214\060\367"
|
|
|
|
|
"\177\327\043\302\111\263\123\276\107\220\316\207\024\142\070\325"
|
|
|
|
|
"\004\262\276\355\075\175\146\163\370\345\135\214\322\041\105\047"
|
|
|
|
|
"\371\073\016\023\064\231\203\005\246\204\203\306\340\002\160\365"
|
|
|
|
|
"\315\022\302\170\340\356\151\323\344\242\134\046\134\162\227\117"
|
|
|
|
|
"\262\240\062\234\324\135\326\242\341\066\232\314\200\331\124\077"
|
|
|
|
|
"\201\245\227\252\073\356\252\367\277\232\331\005\324\350\032\261"
|
|
|
|
|
"\035\246\325\177\334\121\146\316\041\043\352\253\373\043\035\234"
|
|
|
|
|
"\231\321\046\171\221\105\216\272\025\321\042\222\007\351\363\232"
|
|
|
|
|
"\006\016\231\137\124\215\132\071\166\042\065\127\337\253\307\021"
|
|
|
|
|
"\337\364\070\261\112\201\310\242\335\104\353\055\277\322\232\240"
|
|
|
|
|
"\007\374\034\322\312\373\031\130\204\036\362\373\142\043\273\315"
|
|
|
|
|
"\216\373\273\260\310\111\070\031\207\101\325\157\110\142\216\357"
|
|
|
|
|
"\172\023\345\067\105\007\375\023\053\256\121\163\255\323\257\132"
|
|
|
|
|
"\164\360\307\234\106\130\275\217\211\327\300\322\261\206\364\326"
|
|
|
|
|
"\021\255\077\302\202\027\207\370\263\313\333\070\010\115\377\271"
|
|
|
|
|
"\173\302\243\224\126\201\255\356\261\176\213\135\216\054\237\371"
|
|
|
|
|
"\040\174\342\367\323\053\341\031\333\211\214\042\343\254\122\252"
|
|
|
|
|
"\325\326\263\326\325\063\065\362\114\161\314\151\116\237\160\073"
|
|
|
|
|
"\321\025\336\117\020\055\371\021\371\104\001\072\204\064\227\333"
|
|
|
|
|
"\034\374\123\265\343\026\372\207\264\033\065\316\147\211\142\366"
|
|
|
|
|
"\371\257\120\162\107\234\134\010\035\212\241\132\317\254\246\101"
|
|
|
|
|
"\020\211\005\051\134\061\043\054\054\137\217\104\376\323\330\050"
|
|
|
|
|
"\352\154\072\253\345\214\276\137\300\006\304\341\262\152\043\303"
|
|
|
|
|
"\364\051\354\120\132\017\175\207\156\014\313\155\337\244\225\312"
|
|
|
|
|
"\020\320\165\366\134\063\126\034\072\032\376\355\205\041\260\171"
|
|
|
|
|
"\113\234\312\245\254\107\055\033\123\370\210\063\235\036\375\256"
|
|
|
|
|
"\356\163\245\113\247\373\150\341\025\146\316\233\210\177\024\323"
|
|
|
|
|
"\034\336\171\310\046\246\343\171\237\153\255\075\211\252\353\170"
|
|
|
|
|
"\036\220\304\305\214\054\246\242\222\165\075\033\365\122\357\021"
|
|
|
|
|
"\061\150\331\127\017\275\321\257\051\176"
|
|
|
|
|
#define chk2_z 19
|
|
|
|
|
#define chk2 ((&data[2562]))
|
|
|
|
|
"\330\053\107\261\150\156\021\060\277\165\015\167\176\171\251\302"
|
|
|
|
|
"\276\160\207\325\012\334"
|
|
|
|
|
#define lsto_z 1
|
|
|
|
|
#define lsto ((&data[2581]))
|
|
|
|
|
"\010"
|
|
|
|
|
#define xecc_z 15
|
|
|
|
|
#define xecc ((&data[2582]))
|
|
|
|
|
"\005\040\327\254\114\361\156\300\024\244\110\337\050\143\126\227"
|
|
|
|
|
"\257"
|
|
|
|
|
#define tst1_z 22
|
|
|
|
|
#define tst1 ((&data[2603]))
|
|
|
|
|
"\036\047\271\057\207\076\001\326\201\264\356\151\036\164\071\111"
|
|
|
|
|
"\027\304\031\244\017\252\223\354\153\051\130\042\011\260"
|
|
|
|
|
#define msg2_z 19
|
|
|
|
|
#define msg2 ((&data[2632]))
|
|
|
|
|
"\341\357\377\335\143\002\251\076\361\005\267\075\204\313\320\034"
|
|
|
|
|
"\012\023\243\361\261\374\315\242"
|
|
|
|
|
#define rlax_z 1
|
|
|
|
|
#define rlax ((&data[2653]))
|
|
|
|
|
"\121"
|
|
|
|
|
#define chk1 ((&data[5]))
|
|
|
|
|
"\250\277\114\224\251\153\106\010\262\300\062\112\153\256\366\036"
|
|
|
|
|
"\106\002\145\140\125\310\174\373\152\251\071\211\003"
|
|
|
|
|
#define opts_z 1
|
|
|
|
|
#define opts ((&data[2654]))
|
|
|
|
|
"\241"/* End of data[] */;
|
|
|
|
|
#define opts ((&data[29]))
|
|
|
|
|
"\207"
|
|
|
|
|
#define text_z 1976
|
|
|
|
|
#define text ((&data[168]))
|
|
|
|
|
"\255\305\314\313\244\163\366\103\251\145\024\020\016\143\035\240"
|
|
|
|
|
"\140\167\110\037\304\334\311\115\340\210\347\130\122\057\302\000"
|
|
|
|
|
"\364\216\314\231\002\302\335\254\050\361\275\066\124\332\326\265"
|
|
|
|
|
"\121\037\324\026\374\236\143\334\047\113\065\172\173\367\172\157"
|
|
|
|
|
"\206\106\011\211\011\346\065\061\327\362\147\054\315\076\341\036"
|
|
|
|
|
"\135\266\065\131\124\231\066\173\344\153\365\137\143\160\317\351"
|
|
|
|
|
"\267\330\163\300\277\250\362\226\233\132\302\150\230\243\207\366"
|
|
|
|
|
"\132\274\117\256\125\206\052\072\362\040\232\126\220\152\100\107"
|
|
|
|
|
"\103\263\010\002\134\372\231\367\124\133\315\150\163\215\252\312"
|
|
|
|
|
"\233\275\011\023\315\117\350\323\224\073\252\215\223\362\271\173"
|
|
|
|
|
"\022\335\241\117\356\214\176\107\050\116\011\237\072\375\065\301"
|
|
|
|
|
"\226\134\050\061\242\226\337\312\204\223\345\135\161\370\041\162"
|
|
|
|
|
"\345\331\355\073\260\040\227\303\065\264\036\254\326\211\162\135"
|
|
|
|
|
"\277\270\325\243\136\252\235\042\242\323\311\057\372\324\252\270"
|
|
|
|
|
"\026\017\115\067\311\277\277\050\010\210\071\230\035\227\066\244"
|
|
|
|
|
"\073\047\165\266\347\220\237\114\215\136\115\131\103\262\225\242"
|
|
|
|
|
"\103\007\105\014\240\212\216\256\252\372\302\267\134\205\313\220"
|
|
|
|
|
"\045\300\113\166\143\072\255\277\377\056\136\140\131\273\162\177"
|
|
|
|
|
"\303\320\343\040\223\323\302\115\377\122\231\045\132\240\304\332"
|
|
|
|
|
"\350\116\271\364\275\002\336\310\324\271\044\131\372\262\217\211"
|
|
|
|
|
"\062\122\177\071\160\301\114\356\234\253\356\274\307\363\140\072"
|
|
|
|
|
"\316\136\310\175\100\267\361\016\056\376\332\155\207\104\354\034"
|
|
|
|
|
"\235\170\340\214\027\141\365\077\302\237\333\341\301\003\070\360"
|
|
|
|
|
"\052\361\310\107\261\140\255\043\001\363\026\021\027\323\367\117"
|
|
|
|
|
"\251\176\021\030\257\332\344\220\156\117\036\301\003\077\176\375"
|
|
|
|
|
"\231\046\060\121\111\223\227\031\231\270\140\132\315\135\157\120"
|
|
|
|
|
"\325\326\244\326\163\044\251\127\103\233\352\060\063\034\012\336"
|
|
|
|
|
"\365\033\026\277\143\227\037\104\312\122\334\322\133\226\004\255"
|
|
|
|
|
"\270\271\130\177\045\253\054\343\265\074\177\173\033\351\025\026"
|
|
|
|
|
"\141\131\334\277\311\054\252\105\321\333\351\351\023\171\053\213"
|
|
|
|
|
"\112\260\211\010\304\055\246\110\310\355\067\304\014\143\303\076"
|
|
|
|
|
"\235\047\344\324\027\071\127\014\232\050\167\152\317\005\206\305"
|
|
|
|
|
"\013\022\101\231\376\371\216\104\134\241\045\216\314\144\357\202"
|
|
|
|
|
"\261\074\017\321\170\211\026\371\324\110\033\267\216\365\205\271"
|
|
|
|
|
"\264\055\367\312\223\013\044\330\255\071\332\154\375\173\233\322"
|
|
|
|
|
"\355\362\165\151\232\035\164\063\324\135\357\071\231\210\045\100"
|
|
|
|
|
"\052\373\030\240\051\270\044\055\337\202\224\140\064\171\153\066"
|
|
|
|
|
"\354\000\374\221\144\336\052\147\250\244\164\075\041\241\130\250"
|
|
|
|
|
"\274\325\135\255\345\100\362\241\131\017\237\002\325\225\334\366"
|
|
|
|
|
"\366\336\231\202\073\126\240\155\026\203\375\166\350\317\072\172"
|
|
|
|
|
"\052\153\062\036\370\143\236\367\173\073\357\244\214\112\300\073"
|
|
|
|
|
"\272\322\022\332\350\111\372\071\322\371\325\072\055\152\015\120"
|
|
|
|
|
"\162\015\065\217\316\234\240\213\021\255\374\102\200\216\360\142"
|
|
|
|
|
"\320\221\044\146\041\113\022\131\033\337\361\007\347\054\101\205"
|
|
|
|
|
"\156\061\345\027\325\163\223\320\133\043\256\264\351\166\173\203"
|
|
|
|
|
"\111\104\056\107\040\302\335\244\232\241\067\122\150\353\125\361"
|
|
|
|
|
"\046\176\303\312\063\264\045\073\165\133\346\150\335\326\145\161"
|
|
|
|
|
"\205\041\056\011\070\132\265\325\070\130\173\020\353\260\346\320"
|
|
|
|
|
"\121\364\275\070\270\361\372\007\234\177\135\211\000\303\316\004"
|
|
|
|
|
"\235\056\254\244\146\300\160\260\003\264\062\350\227\144\013\176"
|
|
|
|
|
"\274\051\107\050\222\203\145\154\310\071\205\035\170\337\174\203"
|
|
|
|
|
"\255\022\062\334\104\025\152\164\175\216\004\356\004\072\054\124"
|
|
|
|
|
"\247\345\035\026\364\200\003\254\172\011\202\226\364\327\360\204"
|
|
|
|
|
"\274\002\036\152\127\171\235\150\056\115\316\265\274\364\053\343"
|
|
|
|
|
"\021\025\122\026\255\326\127\154\212\235\244\247\234\212\304\321"
|
|
|
|
|
"\000\222\262\000\113\146\047\140\027\255\207\360\136\350\200\017"
|
|
|
|
|
"\062\262\250\345\276\323\314\313\204\221\333\024\157\277\010\074"
|
|
|
|
|
"\107\266\370\002\143\354\073\326\261\244\027\202\165\127\042\012"
|
|
|
|
|
"\170\065\262\152\012\157\262\020\246\063\342\163\014\322\254\053"
|
|
|
|
|
"\013\054\156\073\236\264\134\260\261\075\215\005\361\071\260\372"
|
|
|
|
|
"\276\372\111\233\100\304\116\053\203\107\124\167\051\316\351\045"
|
|
|
|
|
"\165\101\144\144\126\363\215\021\310\044\133\302\227\112\254\356"
|
|
|
|
|
"\103\004\367\271\335\317\277\333\070\013\035\035\116\256\055\275"
|
|
|
|
|
"\324\006\356\357\020\144\013\200\261\137\170\005\060\007\333\025"
|
|
|
|
|
"\261\356\271\024\205\202\033\110\106\377\305\201\353\135\161\007"
|
|
|
|
|
"\125\360\345\055\005\244\272\172\016\053\273\101\120\234\336\334"
|
|
|
|
|
"\163\002\216\163\110\306\104\007\037\204\260\063\370\146\271\002"
|
|
|
|
|
"\366\275\161\371\203\050\241\374\333\133\254\224\320\005\160\246"
|
|
|
|
|
"\147\100\254\013\314\215\072\003\373\361\144\236\265\114\365\103"
|
|
|
|
|
"\031\044\120\010\320\370\231\263\071\264\073\073\131\100\165\351"
|
|
|
|
|
"\202\277\357\372\142\322\113\274\260\336\127\024\133\223\375\345"
|
|
|
|
|
"\007\323\116\017\322\021\072\162\034\102\214\161\321\346\200\154"
|
|
|
|
|
"\356\044\225\233\023\370\057\001\076\073\167\046\376\332\326\215"
|
|
|
|
|
"\156\373\064\176\376\202\125\112\000\022\346\167\352\034\076\221"
|
|
|
|
|
"\071\105\300\223\101\151\170\120\033\357\210\117\136\377\070\257"
|
|
|
|
|
"\056\075\174\203\360\052\140\370\326\317\260\134\116\355\322\014"
|
|
|
|
|
"\045\204\171\067\217\377\304\127\146\244\263\262\167\334\140\174"
|
|
|
|
|
"\154\057\141\157\340\327\006\162\214\244\102\111\002\074\326\127"
|
|
|
|
|
"\325\201\270\260\263\046\240\235\203\202\263\315\072\120\136\307"
|
|
|
|
|
"\167\102\275\074\003\267\200\170\110\312\352\354\115\124\166\055"
|
|
|
|
|
"\240\051\047\304\117\224\215\163\126\022\224\374\140\246\065\264"
|
|
|
|
|
"\155\215\153\036\246\176\032\334\040\331\012\174\011\212\363\255"
|
|
|
|
|
"\063\066\032\204\264\376\337\030\113\001\325\135\226\156\176\056"
|
|
|
|
|
"\334\214\320\210\356\370\377\242\355\341\071\327\034\252\224\170"
|
|
|
|
|
"\030\201\367\062\100\030\307\133\173\160\133\233\020\114\050\344"
|
|
|
|
|
"\300\134\242\352\162\061\251\132\372\251\100\034\061\122\201\261"
|
|
|
|
|
"\322\364\031\174\132\026\036\073\311\061\302\335\114\121\375\270"
|
|
|
|
|
"\236\107\357\174\323\237\362\055\145\223\233\075\111\161\321\226"
|
|
|
|
|
"\302\256\265\150\261\246\175\162\276\124\021\246\041\237\064\074"
|
|
|
|
|
"\234\103\376\124\156\246\121\151\141\360\221\176\356\377\134\272"
|
|
|
|
|
"\137\242\236\365\240\163\143\261\357\210\263\001\356\213\310\204"
|
|
|
|
|
"\355\325\214\305\042\041\322\130\314\062\017\106\244\235\034\237"
|
|
|
|
|
"\051\072\117\043\164\250\233\151\262\123\037\113\247\302\052\267"
|
|
|
|
|
"\360\375\376\102\327\002\236\026\311\275\242\170\064\252\013\303"
|
|
|
|
|
"\271\122\112\113\145\201\154\277\172\137\333\026\122\224\144\371"
|
|
|
|
|
"\232\233\067\126\237\230\011\303\177\374\165\242\010\066\301\371"
|
|
|
|
|
"\171\012\273\216\366\156\304\221\031\326\351\061\004\343\350\155"
|
|
|
|
|
"\107\306\012\074\374\370\323\115\016\043\343\276\157\257\304\070"
|
|
|
|
|
"\242\221\342\206\324\125\325\230\016\117\143\161\205\016\172\056"
|
|
|
|
|
"\174\247\144\343\333\031\250\351\137\215\263\102\112\330\314\322"
|
|
|
|
|
"\070\050\013\202\022\272\171\351\022\330\324\311\274\201\173\131"
|
|
|
|
|
"\352\375\116\300\373\362\245\222\033\037\232\015\244\311\260\314"
|
|
|
|
|
"\035\030\064\356\023\320\026\315\361\141\175\062\276\053\057\007"
|
|
|
|
|
"\222\212\130\000\233\302\313\162\316\054\301\223\352\321\056\065"
|
|
|
|
|
"\064\251\057\342\072\171\142\036\314\217\121\303\240\035\311\247"
|
|
|
|
|
"\066\173\176\100\031\171\276\215\272\206\026\351\102\355\177\376"
|
|
|
|
|
"\006\004\217\030\111\137\220\344\153\210\157\173\100\234\035\340"
|
|
|
|
|
"\225\331\265\257\061\324\036\133\276\013\176\162\144\314\305\342"
|
|
|
|
|
"\066\115\016\222\332\102\342\366\126\361\255\375\031\324\050\152"
|
|
|
|
|
"\065\120\355\351\336\312\301\302\231\047\123\253\155\044\123\306"
|
|
|
|
|
"\226\222\347\315\272\032\025\302\174\031\302\305\102\373\131\372"
|
|
|
|
|
"\040\176\201\357\172\161\233\007\362\373\174\106\247\272\115\166"
|
|
|
|
|
"\011\104\331\233\331\011\105\342\054\014\071\173\142\321\326\262"
|
|
|
|
|
"\023\342\036\171\077\310\310\337\157\277\326\100\215\141\053\110"
|
|
|
|
|
"\307\063\146\140\055\107\374\116\337\142\130\226\336\232\311\246"
|
|
|
|
|
"\241\314\147\077\166\277\332\106\066\367\315\143\024\076\061\061"
|
|
|
|
|
"\261\326\221\342\254\224\207\046\102\211\230\253\060\030\132\273"
|
|
|
|
|
"\313\366\313\071\133\140\245\125\013\052\217\063\376\061\262\175"
|
|
|
|
|
"\125\112\222\147\016\276\002\316\061\205\052\157\166\360\163\145"
|
|
|
|
|
"\333\325\335\100\117\041\114\107\370\257\104\364\144\224\102\124"
|
|
|
|
|
"\247\050\041\260\240\015\370\206\140\255\072\202\267\004\133\010"
|
|
|
|
|
"\001\103\275\010\104\202\103\122\270\267\360\074\261\054\301\043"
|
|
|
|
|
"\352\105\237\340\155\143\311\224\144\242\360\134\071\324\162\172"
|
|
|
|
|
"\353\220\006\374\005\064\250\172\143\027\275\266\002\354\327\164"
|
|
|
|
|
"\322\020\267\340\352\135\112\115\114\241\077\231\367\306\115\117"
|
|
|
|
|
"\251\071\172\066\347\377\016\203\110\233\314\205\341\321\322\076"
|
|
|
|
|
"\314\236\336\341\033\305\214\015\067\123\357\325\016\334\175\251"
|
|
|
|
|
"\074\376\062\331\370\332\277\017\072\257\045\116\044\037\320\271"
|
|
|
|
|
"\126\270\162\125\137\144\126\135\045\242\126\131\175\060\363\235"
|
|
|
|
|
"\364\007\306\175\274\324\065\241\213\377\016\170\350\223\037\114"
|
|
|
|
|
"\051\273\100\365\310\362\244\207\201\140\365\350\305\356\316\362"
|
|
|
|
|
"\122\016\242\304\332\073\312\174\373\042\343\117\266\073\200\043"
|
|
|
|
|
"\116\244\140\355\377\350\343\132\244\063\010\372\271\063\065\254"
|
|
|
|
|
"\123\317\002\344\071\102\054\175\365\064\177\121\057\030\111\204"
|
|
|
|
|
"\164\252\161\164\222\124\316\066\210\327\061\101\012\146\356\136"
|
|
|
|
|
"\065\360\102\157\062\156\354\050\243\154\172\323\204\304\127\371"
|
|
|
|
|
"\156\311\156\000\036\075\067\246\025\150\350\037\316\326\176\004"
|
|
|
|
|
"\306\300\164\371\057\141\042\323\315\235\246\122\141\376\114\317"
|
|
|
|
|
"\307\272\317\345\367\006\213\014\157\164\054\076\112\253\103\021"
|
|
|
|
|
"\154\267\012\233\030\055\157\346\312\025\070\053\024\204\373\333"
|
|
|
|
|
"\076\312\301\066\321\115\103\101\301\160\177\013\033\302\034\207"
|
|
|
|
|
"\171\047\043\222\125\222\170\037\250\260\113\274\065\106\230\164"
|
|
|
|
|
"\021\131\252\343\246\356\044\147\136\243\163\171\146\220\001\340"
|
|
|
|
|
"\270\044\163\015\267\353\054\137\234\170\033\321\277\263\105\320"
|
|
|
|
|
"\015\360\264\264\336\330\033\075\174\217\266\343\037\270\303"
|
|
|
|
|
#define tst2_z 19
|
|
|
|
|
#define tst2 ((&data[2353]))
|
|
|
|
|
"\345\223\042\022\357\241\112\354\260\222\102\167\252\056\120\014"
|
|
|
|
|
"\076\214\307\026\157\130\244\363"
|
|
|
|
|
#define chk2_z 19
|
|
|
|
|
#define chk2 ((&data[2375]))
|
|
|
|
|
"\220\111\122\133\224\270\135\156\155\316\001\121\000\005\210\301"
|
|
|
|
|
"\344\112\207\200\252"
|
|
|
|
|
#define pswd_z 256
|
|
|
|
|
#define pswd ((&data[2448]))
|
|
|
|
|
"\320\307\316\204\246\247\240\343\044\060\232\007\117\122\312\047"
|
|
|
|
|
"\056\001\014\302\043\036\265\342\251\304\163\362\207\111\015\130"
|
|
|
|
|
"\021\333\334\267\203\175\232\247\255\064\256\375\206\171\045\265"
|
|
|
|
|
"\172\062\170\235\121\055\146\272\255\036\204\154\131\010\212\014"
|
|
|
|
|
"\021\104\302\357\201\202\015\133\347\257\236\056\376\011\324\351"
|
|
|
|
|
"\150\047\105\305\016\254\200\274\313\005\050\044\015\263\061\037"
|
|
|
|
|
"\367\363\016\171\165\033\324\135\313\163\214\312\174\141\263\345"
|
|
|
|
|
"\211\371\252\227\246\053\124\161\061\174\226\077\060\307\136\047"
|
|
|
|
|
"\273\154\241\061\210\165\217\124\351\034\036\146\175\322\113\006"
|
|
|
|
|
"\313\366\236\161\042\362\343\123\157\171\222\237\100\360\306\374"
|
|
|
|
|
"\135\147\055\346\335\274\072\307\331\131\055\126\053\170\134\367"
|
|
|
|
|
"\157\373\150\221\355\114\344\134\305\166\373\006\146\302\002\304"
|
|
|
|
|
"\052\060\252\010\355\345\317\306\076\374\034\151\165\171\140\344"
|
|
|
|
|
"\164\311\165\142\025\131\276\333\317\272\341\066\175\344\372\247"
|
|
|
|
|
"\025\245\257\002\212\177\310\310\173\345\062\360\137\223\324\324"
|
|
|
|
|
"\134\111\066\162\243\365\115\162\260\057\251\055\023\244\324\050"
|
|
|
|
|
"\111\204\053\324\003\364\235\177\331\317\157\071\142\104\015\277"
|
|
|
|
|
"\216\104\061\061\071\176\244\351\256\116\026\301\362\353\352\074"
|
|
|
|
|
"\157\025\020\163\012\255\362\344\175\142\035\337\247\053\236\065"
|
|
|
|
|
"\157\320\147\250\117\014\177\372\362\363\355\172"
|
|
|
|
|
#define shll_z 10
|
|
|
|
|
#define shll ((&data[2712]))
|
|
|
|
|
"\116\326\177\257\317\335\162\123\050\324\344\244\257\005"
|
|
|
|
|
#define xecc_z 15
|
|
|
|
|
#define xecc ((&data[2724]))
|
|
|
|
|
"\312\105\336\014\160\351\140\311\301\063\375\121\331\242\037\000"
|
|
|
|
|
"\331"
|
|
|
|
|
#define msg1_z 65
|
|
|
|
|
#define msg1 ((&data[2752]))
|
|
|
|
|
"\134\050\374\022\242\056\212\100\177\270\300\246\373\100\315\245"
|
|
|
|
|
"\164\205\022\167\263\367\065\001\253\244\304\177\247\306\023\242"
|
|
|
|
|
"\210\302\371\325\060\023\104\341\145\324\350\321\153\167\015\367"
|
|
|
|
|
"\052\260\264\020\041\120\320\077\164\240\162\015\216\162\162\060"
|
|
|
|
|
"\262\165\235\351\005\042\055\331\327\317\061\134\171\252\263\147"
|
|
|
|
|
"\044\360\141\367\077\070\246\105\222\323"
|
|
|
|
|
#define date_z 1
|
|
|
|
|
#define date ((&data[2831]))
|
|
|
|
|
"\337"
|
|
|
|
|
#define rlax_z 1
|
|
|
|
|
#define rlax ((&data[2832]))
|
|
|
|
|
"\117"
|
|
|
|
|
#define inlo_z 3
|
|
|
|
|
#define inlo ((&data[2833]))
|
|
|
|
|
"\356\063\363"
|
|
|
|
|
#define lsto_z 1
|
|
|
|
|
#define lsto ((&data[2836]))
|
|
|
|
|
"\307"
|
|
|
|
|
#define tst1_z 22
|
|
|
|
|
#define tst1 ((&data[2838]))
|
|
|
|
|
"\154\343\141\256\045\147\355\072\031\127\273\063\274\063\151\005"
|
|
|
|
|
"\245\312\202\350\203\025\003\017"
|
|
|
|
|
#define msg2_z 19
|
|
|
|
|
#define msg2 ((&data[2861]))
|
|
|
|
|
"\125\166\060\370\333\360\072\122\317\063\176\252\305\345\310\253"
|
|
|
|
|
"\031\367\354\017\073\264"/* End of data[] */;
|
|
|
|
|
#define hide_z 4096
|
|
|
|
|
#define SETUID 0 /* Define as 1 to call setuid(0) at start of script */
|
|
|
|
|
#define DEBUGEXEC 0 /* Define as 1 to debug execvp calls */
|
|
|
|
|
#define TRACEABLE 1 /* Define as 1 to enable ptrace the executable */
|
|
|
|
|
#define HARDENING 0 /* Define as 1 to disable ptrace/dump the executable */
|
|
|
|
|
#define BUSYBOXON 0 /* Define as 1 to enable work with busybox */
|
|
|
|
|
|
|
|
|
|
#if HARDENING
|
|
|
|
|
static const char * shc_x[] = {
|
|
|
|
|
"/*",
|
|
|
|
|
" * Copyright 2019 - Intika <intika@librefox.org>",
|
|
|
|
|
" * Replace ******** with secret read from fd 21",
|
|
|
|
|
" * Also change arguments location of sub commands (sh script commands)",
|
|
|
|
|
" * gcc -Wall -fpic -shared -o shc_secret.so shc_secret.c -ldl",
|
|
|
|
|
" */",
|
|
|
|
|
"",
|
|
|
|
|
"#define _GNU_SOURCE /* needed to get RTLD_NEXT defined in dlfcn.h */",
|
|
|
|
|
"#define PLACEHOLDER \"********\"",
|
|
|
|
|
"#include <dlfcn.h>",
|
|
|
|
|
"#include <stdlib.h>",
|
|
|
|
|
"#include <string.h>",
|
|
|
|
|
"#include <unistd.h>",
|
|
|
|
|
"#include <stdio.h>",
|
|
|
|
|
"#include <signal.h>",
|
|
|
|
|
"",
|
|
|
|
|
"static char secret[128000]; //max size",
|
|
|
|
|
"typedef int (*pfi)(int, char **, char **);",
|
|
|
|
|
"static pfi real_main;",
|
|
|
|
|
"",
|
|
|
|
|
"// copy argv to new location",
|
|
|
|
|
"char **copyargs(int argc, char** argv){",
|
|
|
|
|
" char **newargv = malloc((argc+1)*sizeof(*argv));",
|
|
|
|
|
" char *from,*to;",
|
|
|
|
|
" int i,len;",
|
|
|
|
|
"",
|
|
|
|
|
" for(i = 0; i<argc; i++){",
|
|
|
|
|
" from = argv[i];",
|
|
|
|
|
" len = strlen(from)+1;",
|
|
|
|
|
" to = malloc(len);",
|
|
|
|
|
" memcpy(to,from,len);",
|
|
|
|
|
" // zap old argv space",
|
|
|
|
|
" memset(from,'\\0',len);",
|
|
|
|
|
" newargv[i] = to;",
|
|
|
|
|
" argv[i] = 0;",
|
|
|
|
|
" }",
|
|
|
|
|
" newargv[argc] = 0;",
|
|
|
|
|
" return newargv;",
|
|
|
|
|
"}",
|
|
|
|
|
"",
|
|
|
|
|
"static int mymain(int argc, char** argv, char** env) {",
|
|
|
|
|
" //fprintf(stderr, \"Inject main argc = %d\\n\", argc);",
|
|
|
|
|
" return real_main(argc, copyargs(argc,argv), env);",
|
|
|
|
|
"}",
|
|
|
|
|
"",
|
|
|
|
|
"int __libc_start_main(int (*main) (int, char**, char**),",
|
|
|
|
|
" int argc,",
|
|
|
|
|
" char **argv,",
|
|
|
|
|
" void (*init) (void),",
|
|
|
|
|
" void (*fini)(void),",
|
|
|
|
|
" void (*rtld_fini)(void),",
|
|
|
|
|
" void (*stack_end)){",
|
|
|
|
|
" static int (*real___libc_start_main)() = NULL;",
|
|
|
|
|
" int n;",
|
|
|
|
|
"",
|
|
|
|
|
" if (!real___libc_start_main) {",
|
|
|
|
|
" real___libc_start_main = dlsym(RTLD_NEXT, \"__libc_start_main\");",
|
|
|
|
|
" if (!real___libc_start_main) abort();",
|
|
|
|
|
" }",
|
|
|
|
|
"",
|
|
|
|
|
" n = read(21, secret, sizeof(secret));",
|
|
|
|
|
" if (n > 0) {",
|
|
|
|
|
" int i;",
|
|
|
|
|
"",
|
|
|
|
|
" if (secret[n - 1] == '\\n') secret[--n] = '\\0';",
|
|
|
|
|
" for (i = 1; i < argc; i++)",
|
|
|
|
|
" if (strcmp(argv[i], PLACEHOLDER) == 0)",
|
|
|
|
|
" argv[i] = secret;",
|
|
|
|
|
" }",
|
|
|
|
|
"",
|
|
|
|
|
" real_main = main;",
|
|
|
|
|
"",
|
|
|
|
|
" return real___libc_start_main(mymain, argc, argv, init, fini, rtld_fini, stack_end);",
|
|
|
|
|
"}",
|
|
|
|
|
"",
|
|
|
|
|
0};
|
|
|
|
|
#endif /* HARDENING */
|
|
|
|
|
|
|
|
|
|
/* rtc.c */
|
|
|
|
|
|
|
|
|
|
#include <sys/stat.h>
|
|
|
|
@ -365,156 +297,6 @@ void arc4(void * str, int len)
|
|
|
|
|
|
|
|
|
|
/* End of ARC4 */
|
|
|
|
|
|
|
|
|
|
#if HARDENING
|
|
|
|
|
|
|
|
|
|
#include <sys/ptrace.h>
|
|
|
|
|
#include <sys/wait.h>
|
|
|
|
|
#include <signal.h>
|
|
|
|
|
#include <sys/prctl.h>
|
|
|
|
|
#define PR_SET_PTRACER 0x59616d61
|
|
|
|
|
|
|
|
|
|
/* Seccomp Sandboxing Init */
|
|
|
|
|
#include <stdlib.h>
|
|
|
|
|
#include <stdio.h>
|
|
|
|
|
#include <stddef.h>
|
|
|
|
|
#include <string.h>
|
|
|
|
|
#include <unistd.h>
|
|
|
|
|
#include <errno.h>
|
|
|
|
|
|
|
|
|
|
#include <sys/types.h>
|
|
|
|
|
#include <sys/prctl.h>
|
|
|
|
|
#include <sys/syscall.h>
|
|
|
|
|
#include <sys/socket.h>
|
|
|
|
|
|
|
|
|
|
#include <linux/filter.h>
|
|
|
|
|
#include <linux/seccomp.h>
|
|
|
|
|
#include <linux/audit.h>
|
|
|
|
|
|
|
|
|
|
#define ArchField offsetof(struct seccomp_data, arch)
|
|
|
|
|
|
|
|
|
|
#define Allow(syscall) \
|
|
|
|
|
BPF_JUMP(BPF_JMP+BPF_JEQ+BPF_K, SYS_##syscall, 0, 1), \
|
|
|
|
|
BPF_STMT(BPF_RET+BPF_K, SECCOMP_RET_ALLOW)
|
|
|
|
|
|
|
|
|
|
struct sock_filter filter[] = {
|
|
|
|
|
/* validate arch */
|
|
|
|
|
BPF_STMT(BPF_LD+BPF_W+BPF_ABS, ArchField),
|
|
|
|
|
BPF_JUMP( BPF_JMP+BPF_JEQ+BPF_K, AUDIT_ARCH_X86_64, 1, 0),
|
|
|
|
|
BPF_STMT(BPF_RET+BPF_K, SECCOMP_RET_KILL),
|
|
|
|
|
|
|
|
|
|
/* load syscall */
|
|
|
|
|
BPF_STMT(BPF_LD+BPF_W+BPF_ABS, offsetof(struct seccomp_data, nr)),
|
|
|
|
|
|
|
|
|
|
/* list of allowed syscalls */
|
|
|
|
|
Allow(exit_group), /* exits a process */
|
|
|
|
|
Allow(brk), /* for malloc(), inside libc */
|
|
|
|
|
Allow(mmap), /* also for malloc() */
|
|
|
|
|
Allow(munmap), /* for free(), inside libc */
|
|
|
|
|
|
|
|
|
|
/* and if we don't match above, die */
|
|
|
|
|
BPF_STMT(BPF_RET+BPF_K, SECCOMP_RET_KILL),
|
|
|
|
|
};
|
|
|
|
|
struct sock_fprog filterprog = {
|
|
|
|
|
.len = sizeof(filter)/sizeof(filter[0]),
|
|
|
|
|
.filter = filter
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
/* Seccomp Sandboxing - Set up the restricted environment */
|
|
|
|
|
void seccomp_hardening() {
|
|
|
|
|
if (prctl(PR_SET_NO_NEW_PRIVS, 1, 0, 0, 0)) {
|
|
|
|
|
perror("Could not start seccomp:");
|
|
|
|
|
exit(1);
|
|
|
|
|
}
|
|
|
|
|
if (prctl(PR_SET_SECCOMP, SECCOMP_MODE_FILTER, &filterprog) == -1) {
|
|
|
|
|
perror("Could not start seccomp:");
|
|
|
|
|
exit(1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
/* End Seccomp Sandboxing Init */
|
|
|
|
|
|
|
|
|
|
void shc_x_file() {
|
|
|
|
|
FILE *fp;
|
|
|
|
|
int line = 0;
|
|
|
|
|
|
|
|
|
|
if ((fp = fopen("/tmp/shc_x.c", "w")) == NULL ) {exit(1); exit(1);}
|
|
|
|
|
for (line = 0; shc_x[line]; line++) fprintf(fp, "%s\n", shc_x[line]);
|
|
|
|
|
fflush(fp);fclose(fp);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int make() {
|
|
|
|
|
char * cc, * cflags, * ldflags;
|
|
|
|
|
char cmd[4096];
|
|
|
|
|
|
|
|
|
|
cc = getenv("CC");
|
|
|
|
|
if (!cc) cc = "cc";
|
|
|
|
|
|
|
|
|
|
sprintf(cmd, "%s %s -o %s %s", cc, "-Wall -fpic -shared", "/tmp/shc_x.so", "/tmp/shc_x.c -ldl");
|
|
|
|
|
if (system(cmd)) {remove("/tmp/shc_x.c"); return -1;}
|
|
|
|
|
remove("/tmp/shc_x.c"); return 0;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void arc4_hardrun(void * str, int len) {
|
|
|
|
|
//Decode locally
|
|
|
|
|
char tmp2[len];
|
|
|
|
|
char tmp3[len+1024];
|
|
|
|
|
memcpy(tmp2, str, len);
|
|
|
|
|
|
|
|
|
|
unsigned char tmp, * ptr = (unsigned char *)tmp2;
|
|
|
|
|
int lentmp = len;
|
|
|
|
|
int pid, status;
|
|
|
|
|
pid = fork();
|
|
|
|
|
|
|
|
|
|
shc_x_file();
|
|
|
|
|
if (make()) {exit(1);}
|
|
|
|
|
|
|
|
|
|
setenv("LD_PRELOAD","/tmp/shc_x.so",1);
|
|
|
|
|
|
|
|
|
|
if(pid==0) {
|
|
|
|
|
|
|
|
|
|
//Start tracing to protect from dump & trace
|
|
|
|
|
if (ptrace(PTRACE_TRACEME, 0, 0, 0) < 0) {
|
|
|
|
|
kill(getpid(), SIGKILL);
|
|
|
|
|
_exit(1);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//Decode Bash
|
|
|
|
|
while (len > 0) {
|
|
|
|
|
indx++;
|
|
|
|
|
tmp = stte[indx];
|
|
|
|
|
jndx += tmp;
|
|
|
|
|
stte[indx] = stte[jndx];
|
|
|
|
|
stte[jndx] = tmp;
|
|
|
|
|
tmp += stte[indx];
|
|
|
|
|
*ptr ^= stte[tmp];
|
|
|
|
|
ptr++;
|
|
|
|
|
len--;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//Do the magic
|
|
|
|
|
sprintf(tmp3, "%s %s", "'********' 21<<<", tmp2);
|
|
|
|
|
|
|
|
|
|
//Exec bash script //fork execl with 'sh -c'
|
|
|
|
|
system(tmp2);
|
|
|
|
|
|
|
|
|
|
//Empty script variable
|
|
|
|
|
memcpy(tmp2, str, lentmp);
|
|
|
|
|
|
|
|
|
|
//Clean temp
|
|
|
|
|
remove("/tmp/shc_x.so");
|
|
|
|
|
|
|
|
|
|
//Sinal to detach ptrace
|
|
|
|
|
ptrace(PTRACE_DETACH, 0, 0, 0);
|
|
|
|
|
exit(0);
|
|
|
|
|
}
|
|
|
|
|
else {wait(&status);}
|
|
|
|
|
|
|
|
|
|
/* Seccomp Sandboxing - Start */
|
|
|
|
|
seccomp_hardening();
|
|
|
|
|
|
|
|
|
|
exit(0);
|
|
|
|
|
}
|
|
|
|
|
#endif /* HARDENING */
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Key with file invariants.
|
|
|
|
|
*/
|
|
|
|
@ -601,54 +383,6 @@ int chkenv(int argc)
|
|
|
|
|
|
|
|
|
|
void chkenv_end(void){}
|
|
|
|
|
|
|
|
|
|
#if HARDENING
|
|
|
|
|
|
|
|
|
|
static void gets_process_name(const pid_t pid, char * name) {
|
|
|
|
|
char procfile[BUFSIZ];
|
|
|
|
|
sprintf(procfile, "/proc/%d/cmdline", pid);
|
|
|
|
|
FILE* f = fopen(procfile, "r");
|
|
|
|
|
if (f) {
|
|
|
|
|
size_t size;
|
|
|
|
|
size = fread(name, sizeof (char), sizeof (procfile), f);
|
|
|
|
|
if (size > 0) {
|
|
|
|
|
if ('\n' == name[size - 1])
|
|
|
|
|
name[size - 1] = '\0';
|
|
|
|
|
}
|
|
|
|
|
fclose(f);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void hardening() {
|
|
|
|
|
prctl(PR_SET_DUMPABLE, 0);
|
|
|
|
|
prctl(PR_SET_PTRACER, -1);
|
|
|
|
|
|
|
|
|
|
int pid = getppid();
|
|
|
|
|
char name[256] = {0};
|
|
|
|
|
gets_process_name(pid, name);
|
|
|
|
|
|
|
|
|
|
if ( (strcmp(name, "bash") != 0)
|
|
|
|
|
&& (strcmp(name, "/bin/bash") != 0)
|
|
|
|
|
&& (strcmp(name, "sh") != 0)
|
|
|
|
|
&& (strcmp(name, "/bin/sh") != 0)
|
|
|
|
|
&& (strcmp(name, "sudo") != 0)
|
|
|
|
|
&& (strcmp(name, "/bin/sudo") != 0)
|
|
|
|
|
&& (strcmp(name, "/usr/bin/sudo") != 0)
|
|
|
|
|
&& (strcmp(name, "gksudo") != 0)
|
|
|
|
|
&& (strcmp(name, "/bin/gksudo") != 0)
|
|
|
|
|
&& (strcmp(name, "/usr/bin/gksudo") != 0)
|
|
|
|
|
&& (strcmp(name, "kdesu") != 0)
|
|
|
|
|
&& (strcmp(name, "/bin/kdesu") != 0)
|
|
|
|
|
&& (strcmp(name, "/usr/bin/kdesu") != 0)
|
|
|
|
|
)
|
|
|
|
|
{
|
|
|
|
|
printf("Operation not permitted\n");
|
|
|
|
|
kill(getpid(), SIGKILL);
|
|
|
|
|
exit(1);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#endif /* HARDENING */
|
|
|
|
|
|
|
|
|
|
#if !TRACEABLE
|
|
|
|
|
|
|
|
|
|
#define _LINUX_SOURCE_COMPAT
|
|
|
|
@ -660,14 +394,9 @@ void hardening() {
|
|
|
|
|
#include <stdio.h>
|
|
|
|
|
#include <unistd.h>
|
|
|
|
|
|
|
|
|
|
#if !defined(PT_ATTACHEXC) /* New replacement for PT_ATTACH */
|
|
|
|
|
#if !defined(PTRACE_ATTACH) && defined(PT_ATTACH)
|
|
|
|
|
#define PT_ATTACHEXC PT_ATTACH
|
|
|
|
|
#elif defined(PTRACE_ATTACH)
|
|
|
|
|
#define PT_ATTACHEXC PTRACE_ATTACH
|
|
|
|
|
#endif
|
|
|
|
|
#if !defined(PTRACE_ATTACH) && defined(PT_ATTACH)
|
|
|
|
|
# define PTRACE_ATTACH PT_ATTACH
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
void untraceable(char * argv0)
|
|
|
|
|
{
|
|
|
|
|
char proc[80];
|
|
|
|
@ -685,7 +414,7 @@ void untraceable(char * argv0)
|
|
|
|
|
close(0);
|
|
|
|
|
mine = !open(proc, O_RDWR|O_EXCL);
|
|
|
|
|
if (!mine && errno != EBUSY)
|
|
|
|
|
mine = !ptrace(PT_ATTACHEXC, pid, 0, 0);
|
|
|
|
|
mine = !ptrace(PTRACE_ATTACH, pid, 0, 0);
|
|
|
|
|
if (mine) {
|
|
|
|
|
kill(pid, SIGCONT);
|
|
|
|
|
} else {
|
|
|
|
@ -740,12 +469,6 @@ char * xsh(int argc, char ** argv)
|
|
|
|
|
if (!rlax[0] && key_with_file(shll))
|
|
|
|
|
return shll;
|
|
|
|
|
arc4(opts, opts_z);
|
|
|
|
|
#if HARDENING
|
|
|
|
|
arc4_hardrun(text, text_z);
|
|
|
|
|
exit(0);
|
|
|
|
|
/* Seccomp Sandboxing - Start */
|
|
|
|
|
seccomp_hardening();
|
|
|
|
|
#endif
|
|
|
|
|
arc4(text, text_z);
|
|
|
|
|
arc4(tst2, tst2_z);
|
|
|
|
|
key(tst2, tst2_z);
|
|
|
|
@ -795,15 +518,9 @@ char * xsh(int argc, char ** argv)
|
|
|
|
|
|
|
|
|
|
int main(int argc, char ** argv)
|
|
|
|
|
{
|
|
|
|
|
#if SETUID
|
|
|
|
|
setuid(0);
|
|
|
|
|
#endif
|
|
|
|
|
#if DEBUGEXEC
|
|
|
|
|
debugexec("main", argc, argv);
|
|
|
|
|
#endif
|
|
|
|
|
#if HARDENING
|
|
|
|
|
hardening();
|
|
|
|
|
#endif
|
|
|
|
|
#if !TRACEABLE
|
|
|
|
|
untraceable(argv[0]);
|
|
|
|
|
#endif
|
|
|
|
|