Natas32 Writeup(Perl 远程代码执行)
Natas32:
打开后和natas31相似的界面,并且提示,这次您需要证明可以远程代码执行,Webroot中有一个二进制文件可以执行。
my $cgi = CGI->new; if ($cgi->upload(‘file‘)) { my $file = $cgi->param(‘file‘); print ‘<table class="sortable table table-hover table-striped">‘; $i=0; while (<$file>) { my @elements=split /,/, $_; if($i==0){ # header print "<tr>"; foreach(@elements){ print "<th>".$cgi->escapeHTML($_)."</th>"; } print "</tr>"; } else{ # table content print "<tr>"; foreach(@elements){ print "<td>".$cgi->escapeHTML($_)."</td>"; } print "</tr>"; } $i+=1; } print ‘</table>‘; } else{ print <<END;
natas32-sourcecode.html
于是延续上一题的思路,第一个file添加ARGV,URL加入命令ls -l . |查看Webroot目录下的文件,得到的结果中可以看到有一个getpassword.c程序文件。
查看getpassword.c文件的内容是,读取/etc/natas_webpass/natas33。
尝试在URL后面直接输入getpassword文件执行,成功得到flag。
flag:shoogeiGa2yee3de6Aex8uaXeech5eey
参考:https://blog.csdn.net/baidu_35297930/article/details/99974886
相关推荐
边城客栈学无止境 2020-07-05
Walter的学习笔记 2020-07-04
A宇 2020-06-14
边城客栈学无止境 2020-06-10
邓博学习笔记 2020-06-03
davidliu00 2020-05-26
ShiShuo 2020-05-16
Aggressivesnail 2020-05-10
ShiShuo 2020-04-26
hanxingwang00 2020-04-22
ShiShuo 2020-03-06
ShiShuo 2020-03-05
Aggressivesnail 2020-02-28
aaLiweipeng 2020-02-01
amberom 2020-01-16
Walter的学习笔记 2020-01-06
Aggressivesnail 2019-12-31