Skip to content

Commit 2b83d15

Browse files
committed
Security: Replace HTML form with FormValidator to avoid possible XSS when uploading file in some tool
1 parent 7080b9b commit 2b83d15

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

main/upload/form.document.php

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,25 @@
1717
Display::display_header($nameTools, "Doc");
1818
// Show the title
1919
api_display_tool_title($nameTools.$add_group_to_title);
20-
?>
2120

21+
$frmUpload = new FormValidator('form_div', 'post', 'upload.php');
22+
$frmUpload->addElement('hidden', 'curdirpath', $path);
23+
$frmUpload->addElement('hidden', 'tool', $my_tool);
24+
$frmUpload->addElement('file', 'user_file', get_lang('FileToUpload'));
25+
$frmUpload->addRule('user_file', get_lang('ThisFieldIsRequired'), 'required');
26+
$frmUpload->addButtonUpload(get_lang('Upload'));
27+
28+
echo '
2229
<div id="dynamic_div" style="display:block;margin-left:40%;margin-top:10px;height:50px;">
2330
</div>
2431
<div id="upload_form_div" name="form_div" style="display:block;">
25-
<form method="POST" action="upload.php" id="upload_form" enctype="multipart/form-data">
26-
<input type="hidden" name="curdirpath" value="<?php echo $path; ?>">
27-
<input type="hidden" name="tool" value="<?php echo $my_tool; ?>">
28-
<input type="file" name="user_file">
29-
<input type="submit" name="submit" value="Upload">
30-
</form>
32+
';
33+
34+
$frmUpload->display();
35+
36+
echo '
3137
</div>
3238
<br/>
33-
<?php
39+
';
3440

3541
Display::display_footer();

0 commit comments

Comments
 (0)