webform中的php post问题(系统命令)

时间:2016-07-07 13:49:21

标签: php forms post output

我想在我的webapp(渗透测试)中创建一个表单,询问目标和一些选项,然后获取这些参数并执行在同一目录中运行ruby文件的系统命令。采用以下格式' ruby file.rb -u $ target $ option' ,并输出结果,谢谢 这是我创建的形式和dident工作

<html>
<body>
<form action="test.php" method="post">
Target: <input type="text" name="target"><br>
<input type="submit">
<select name="taskOption">
  <option>First</option>
  <option>Second</option>
  <option>Third</option>
</select>
</form>

这是test.php

<?php
echo '<pre>';

$last_line = system('ruby file.rb -u $target $option', $retval);

// Printing additional info
echo "$retval"
?>

1 个答案:

答案 0 :(得分:0)

你可以用这个:

info.php的

<html>
<body>
<form action="test.php" method="post">
Target: <input type="text" name="target"><br>
<input type="submit">
<select name="option">
  <option>First</option>
  <option>Second</option>
  <option>Third</option>
</select>
</form>

test.php的

<?php
$retval= "test";
foreach ($_POST as $k => $v) {
                $$k = $v;                       
                }

$last_line = system('ruby file.rb -u $target $option', $retval);

// Printing additional info
echo $retval."<br>";//will echo test
echo "Target: ".$target ." option: ". $option;
?>

我相信这会有所帮助

//老回答 我相信你必须将后期数据分配给变量 您还必须将“taskOption”重命名为“option”

foreach ($_POST as $k => $v) {
                // edit: dont use that part, since you don't have a mysql connection$r = mysql_real_escape_string($v);
                $$k = $v; //$r;                     
                }