Sfoglia il codice sorgente

js: Use pledge()

It is now no longer possible to make network connections from a hijacked
js(1) :^)
Linus Groh 3 anni fa
parent
commit
8fa5dc7241
1 ha cambiato i file con 5 aggiunte e 0 eliminazioni
  1. 5 0
      Userland/Utilities/js.cpp

+ 5 - 0
Userland/Utilities/js.cpp

@@ -61,6 +61,7 @@
 #include <LibJS/Runtime/Value.h>
 #include <LibLine/Editor.h>
 #include <LibMain/Main.h>
+#include <LibSystem/Wrappers.h>
 #include <fcntl.h>
 #include <signal.h>
 #include <stdio.h>
@@ -1105,6 +1106,10 @@ public:
 
 ErrorOr<int> serenity_main(Main::Arguments arguments)
 {
+#ifdef __serenity__
+    TRY(System::pledge("stdio rpath wpath cpath tty sigaction", nullptr));
+#endif
+
     bool gc_on_every_allocation = false;
     bool disable_syntax_highlight = false;
     Vector<String> script_paths;