摘要: Natas34: 登录什么都不用做,闯关结束!撒花~~~ 阅读全文
posted @ 2020-03-06 23:05 zhengna 阅读(188) 评论(0) 推荐(0)
摘要: Natas33: 又是一个上传文件的页面,源码如下: // graz XeR, the first to solve it! thanks for the feedback! // ~morla class Executor{ private $filename=""; //三个私有参数 priva 阅读全文
posted @ 2020-03-06 23:04 zhengna 阅读(706) 评论(0) 推荐(1)
摘要: Natas32: 打开后和natas31相似的界面,并且提示,这次您需要证明可以远程代码执行,Webroot中有一个二进制文件可以执行。 my $cgi = CGI->new; if ($cgi->upload('file')) { my $file = $cgi->param('file'); p 阅读全文
posted @ 2020-03-06 23:03 zhengna 阅读(578) 评论(0) 推荐(0)
摘要: Natas31: 源码如下: my $cgi = CGI->new; if ($cgi->upload('file')) { my $file = $cgi->param('file'); print '<table class="sortable table table-hover table-s 阅读全文
posted @ 2020-03-06 23:02 zhengna 阅读(553) 评论(0) 推荐(0)
摘要: Natas30: 本关是一个登录页面,查看源码,可以发现关键代码。 if ('POST' eq request_method && param('username') && param('password')){ my $dbh = DBI->connect( "DBI:mysql:natas30" 阅读全文
posted @ 2020-03-06 23:01 zhengna 阅读(586) 评论(0) 推荐(0)
摘要: Natas29: 本关打开后,可以看到一个下拉列表,选择不同的内容,会得到不同的大量文本的页面。 观察url部分:http://natas29.natas.labs.overthewire.org/index.pl?file=perl+underground 感觉是一个命令注入,尝试一下file=| 阅读全文
posted @ 2020-03-06 23:00 zhengna 阅读(1084) 评论(0) 推荐(0)
摘要: Natas28: 页面显示这是一个笑话库,可以查找提交字符串所在的笑话内容并随机返回。 初步探索 burp抓包发现,流程是post表单提交一个明文后返回一个重定向,然后get请求一个加密参数返回查询结果。这个加密的参数一定以某种方式包含了我们的输入。 我们尝试修改get请求中query的值,返回报错 阅读全文
posted @ 2020-03-06 22:59 zhengna 阅读(1248) 评论(0) 推荐(1)
摘要: Natas27: 一个登录节界面,查看源码。 <html> <head> <!-- This stuff in the header has nothing to do with the level --> <link rel="stylesheet" type="text/css" href="h 阅读全文
posted @ 2020-03-06 22:58 zhengna 阅读(606) 评论(0) 推荐(0)
摘要: Natas26: 打开页面是一个输入坐标点进行绘图的页面。 <html> <head> <!-- This stuff in the header has nothing to do with the level --> <link rel="stylesheet" type="text/css" 阅读全文
posted @ 2020-03-06 22:57 zhengna 阅读(665) 评论(0) 推荐(0)
摘要: Natas25: 打开页面,是一段引文以及可以选择语言的下拉list。查看源码,发现关键代码: function setLanguage(){ //选择语言 /* language setup */ if(array_key_exists("lang",$_REQUEST)) //如果请求提交的参数 阅读全文
posted @ 2020-03-06 22:56 zhengna 阅读(488) 评论(0) 推荐(0)
摘要: Natas24: 一个登录页面,查看源码,发现关键代码: if(array_key_exists("passwd",$_REQUEST)){ if(!strcmp($_REQUEST["passwd"],"<censored>")){ echo "<br>The credentials for th 阅读全文
posted @ 2020-03-06 22:55 zhengna 阅读(1498) 评论(0) 推荐(1)
摘要: Natas23: 一个登录页面,查看源码,发现关键代码: if(array_key_exists("passwd",$_REQUEST)){ if(strstr($_REQUEST["passwd"],"iloveyou") && ($_REQUEST["passwd"] > 10 )){ echo 阅读全文
posted @ 2020-03-06 22:54 zhengna 阅读(318) 评论(0) 推荐(0)
摘要: Natas22: 打开页面是一个空白页面,查看源码,看起来好像是需要我们在url中添加“revelio”参数即可,然而实验了之后发现浏览器跳转回了原来的页面。 再次仔细审计源码,会看到页面开头有一个重定向。关键代码: if(array_key_exists("revelio", $_GET)) { 阅读全文
posted @ 2020-03-06 22:51 zhengna 阅读(421) 评论(0) 推荐(0)
摘要: Natas21: 第一个网页 第二个网页 提示http://natas21.natas.labs.overthewire.org/页面和http://natas21-experimenter.natas.labs.overthewire.org页面同位,也就是共用服务器,session也是共用的。 阅读全文
posted @ 2020-03-06 22:50 zhengna 阅读(644) 评论(0) 推荐(0)
摘要: Natas20: 读取源码,发现把sessionID存到了文件中,按键值对存在,以空格分隔,如果$_SESSION["admin"]==1,则成功登陆,得到flag。并且通过查询所提交的参数,也会被存到文件中,因此,可以采取注入键值对admin 1的方式来实现修改。使用burp抓包,将name参数修 阅读全文
posted @ 2020-03-06 22:48 zhengna 阅读(593) 评论(0) 推荐(0)
摘要: Natas19: 提示,与上一题源码类似,只是PHPSESSID不连续。随便输入username和password,抓包观察PHPSESSID,发现是输入的信息,按照id-username的格式,由ascill码转化为16进制,猜测正确PHPSESSID,应该是id-admin,用python构造字 阅读全文
posted @ 2020-03-06 22:47 zhengna 阅读(1902) 评论(0) 推荐(0)
摘要: Natas18: 一个登录界面,查看源码,发现没有连接数据库,使用Session登录,且$maxid设定了不大的上限,选择采取爆破。 源码解析: <html> <head> <!-- This stuff in the header has nothing to do with the level 阅读全文
posted @ 2020-03-06 22:46 zhengna 阅读(930) 评论(0) 推荐(0)
摘要: Natas17: 源码如下 /* CREATE TABLE `users` ( `username` varchar(64) DEFAULT NULL, `password` varchar(64) DEFAULT NULL ); */ if(array_key_exists("username", 阅读全文
posted @ 2020-03-06 22:45 zhengna 阅读(542) 评论(0) 推荐(0)
摘要: Natas16: 源码如下 <? $key = ""; if(array_key_exists("needle", $_REQUEST)) { $key = $_REQUEST["needle"]; } if($key != "") { if(preg_match('/[;|&`\'"]/',$ke 阅读全文
posted @ 2020-03-06 22:44 zhengna 阅读(488) 评论(0) 推荐(0)
摘要: Natas15: 源码如下 /* CREATE TABLE `users` ( `username` varchar(64) DEFAULT NULL, `password` varchar(64) DEFAULT NULL ); */ if(array_key_exists("username", 阅读全文
posted @ 2020-03-06 22:09 zhengna 阅读(745) 评论(0) 推荐(0)
摘要: Natas14: 是一个登录页面。源码如下。 if(array_key_exists("username", $_REQUEST)) { $link = mysql_connect('localhost', 'natas14', '<censored>'); mysql_select_db('nat 阅读全文
posted @ 2020-03-06 22:08 zhengna 阅读(596) 评论(0) 推荐(0)
摘要: Natas13: 与上一关页面类似,还是文件上传,只是多了提示“出于安全原因,我们现在仅接受图像文件!”。源码如下 function genRandomString() { $length = 10; $characters = "0123456789abcdefghijklmnopqrstuvwx 阅读全文
posted @ 2020-03-06 22:07 zhengna 阅读(509) 评论(0) 推荐(0)
摘要: Natas12: 文件上传页面,源码如下: function genRandomString() { $length = 10; $characters = "0123456789abcdefghijklmnopqrstuvwxyz"; $string = ""; for ($p = 0; $p < 阅读全文
posted @ 2020-03-06 22:06 zhengna 阅读(486) 评论(0) 推荐(0)
摘要: Natas11: 页面提示cookie被异或加密保护,查看源码,发现了一个预定义参数和三个函数。 //预定义参数,猜测将showpassword设置为yes即可得到密码。 $defaultdata = array( "showpassword"=>"no", "bgcolor"=>"#ffffff" 阅读全文
posted @ 2020-03-06 22:05 zhengna 阅读(760) 评论(0) 推荐(0)
摘要: Natas10: 页面与上一关类似,只是增加了提示“出于安全原因,我们现在过滤某些字符”。 查看源码,发现关键代码如下: $key = ""; if(array_key_exists("needle", $_REQUEST)) { $key = $_REQUEST["needle"]; } if($ 阅读全文
posted @ 2020-03-06 22:04 zhengna 阅读(407) 评论(0) 推荐(0)
摘要: Natas9: 审计源码,发现关键代码: $key = ""; if(array_key_exists("needle", $_REQUEST)) { $key = $_REQUEST["needle"]; } if($key != "") { passthru("grep -i $key dict 阅读全文
posted @ 2020-03-06 22:03 zhengna 阅读(410) 评论(0) 推荐(0)
摘要: Natas8: 同样给了php源码,审计源码,发现给了一个预设参数encodedSecret,以及一个加密函数encodeSecret, 该函数将secret参数先进行base64编码、然后用strrev 函数进行倒序,再用 bin2hex 函数转为16进制,返回结果。如果点击提交,且post传入的 阅读全文
posted @ 2020-03-06 22:02 zhengna 阅读(444) 评论(0) 推荐(0)
摘要: Natas7: 页面出现了两个选项,点击后跳转,观察url发现了page参数,猜测可能存在任意文件读取漏洞。 且源码给了提示,密码在/etc/natas_webpass/natas8 中。 将/etc/natas_webpass/natas8设为page参数的值,成功读取到flag。 flag:DB 阅读全文
posted @ 2020-03-06 22:01 zhengna 阅读(284) 评论(0) 推荐(0)
摘要: Natas6: 该题提供了php源码,点击查看分析,发现调用了includes/secret.inc页面,在输入一个变量secret后,如果和includes/secret.inc中 预设的secret相同,则输出密码。 include "includes/secret.inc"; if(array 阅读全文
posted @ 2020-03-06 22:00 zhengna 阅读(306) 评论(0) 推荐(0)
摘要: Natas5: 提示不允许进入,没有登录,burp抓包,查看cookie信息后发现存在loggedin项,且值为0,猜测该值代表是否登录,将其修改为1,得到flag。 flag:aGoY4q2Dc6MgDq4oL4YtoKtyAg9PeHa1 阅读全文
posted @ 2020-03-06 21:59 zhengna 阅读(234) 评论(0) 推荐(0)
摘要: Natas4: 提示来源出错,合法用户只能来自"http://natas5.natas.labs.overthewire.org/"。 在http的header中,referer代表从哪里跳转到本页面,只需要将该url写入到referer中即可。 修改referer的值,可以用Burp Suite抓 阅读全文
posted @ 2020-03-06 21:58 zhengna 阅读(482) 评论(0) 推荐(0)
摘要: Natas3: 页面提示本页面什么都没有。 在源码中发现提示:无信息泄露,谷歌这次不会发现它。提到了搜索引擎,猜测爬虫协议robots.txt中存在信息泄露,访问网站爬虫协议http://natas3.natas.labs.overthewire.org/robots.txt,发现Disallow: 阅读全文
posted @ 2020-03-06 21:57 zhengna 阅读(330) 评论(0) 推荐(0)
摘要: Natas2: 查看源码,发现页面隐藏了一个图片的连接,分析图片,无隐写内容,联想到目录权限问题,访问同级目录http://natas2.natas.labs.overthewire.org/files,发现存在名为users.txt的文件,读取得到flag。 flag:sJIJNW6ucpu6HP 阅读全文
posted @ 2020-03-06 21:55 zhengna 阅读(371) 评论(0) 推荐(0)
摘要: Natas2: 提示密码就在本页,但右键被禁用,可以使用F12或者抓包查看元素得到flag。 flag:ZluruAthQk7Q2MqmDeTiUij2ZvWy2mBi 常用的查看源码方法:右键查看、F12查看元素,给页面url前加’view-source:’查看,使用Linux Curl命令查看, 阅读全文
posted @ 2020-03-06 21:54 zhengna 阅读(214) 评论(0) 推荐(0)
摘要: Natas0: 提示密码就在本页,右键查看源码,注释中发现flag。 flag:gtVrDuiDfck831PqWsLEZy5gyDz1clto 总结:客户端代码注释中切勿保存敏感信息。 阅读全文
posted @ 2020-03-06 21:53 zhengna 阅读(268) 评论(0) 推荐(0)
摘要: Natas是一个教授服务器端Web安全基础知识的 wargame,通过在每一关寻找Web安全漏洞,来获取通往下一关的秘钥,适合新手入门Web安全。 传送门~ 接下来给大家分享一下,1-34题的WriteUp。 Natas0 Writeup(前端源码、敏感信息)Natas1 Writeup(查看页面源 阅读全文
posted @ 2020-03-06 21:39 zhengna 阅读(362) 评论(0) 推荐(0)