aug*_*tin 4 c++ linux security escaping
在Linux平台上,我有C++代码,如下所示:
// ...
std::string myDir;
myDir = argv[1]; // myDir is initialized using user input from the command line.
std::string command;
command = "mkdir " + myDir;
if (system(command.c_str()) != 0) {
return 1;
}
// continue....
Run Code Online (Sandbox Code Playgroud)
谢谢.
Mat*_*hen 10
只是不要使用system
.喜欢execl
.
execl ("/bin/mkdir", "mkdir", myDir, (char *)0);
Run Code Online (Sandbox Code Playgroud)
这样,myDir
总是作为单个参数传递给mkdir
,并且不涉及shell.请注意,fork
如果使用此方法,则需要.
但如果这不仅仅是一个例子,你应该使用mkdir
C函数:
mkdir(myDir, someMode);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2053 次 |
最近记录: |