OVerTheWire:NATAS通关0-20

LV0

  • natas是一些服务端的安全基础知识,ok,试一下吧
  • You can find the password for the next level on this page.
    打开就是这句话,在此页能找到密码,但是找不到呀,那就看下源码吧 F12
  • 注释里找到密码
  • The password for natas1 is gtVrDuiDfck831PqWsLEZy5gyDz1clto

LV0-1

  • 登陆进去还是一句一样的话,不过右键不能点,但是我们也不用右键,直接 F12
  • 在注释里找到密码
  • The password for natas2 is ZluruAthQk7Q2MqmDeTiUij2ZvWy2mBi

Lv1-2

  • There is nothing on this page
    上来跟我说这页什么都没有,好吧,还是f12来看看
  • 结果看到有一张图片,路径是files/pixel.png,看看有没有文件泄露什么的,连接files目录,底下有两个文件
  • 一个是那张图片,一个是user.txt,自然用url去连一下,返回一堆字符串,从中得到密码
  • 密码:
    natas3:sJIJNW6ucpu6HPZ1ZAchaDtwd7oGrD14

Lv2-3

  • 上来还说什么都没有,好吧,还是f12来看看
  • 注释里说这次没有信息泄露了,谷歌都找不到,好吧
  • 实在不知道去哪找,网上找了一下,原来看一下爬虫协议 ok
  • 连到robots.txt,发现有个目录,连到目录,找到密码
  • Z9tkRkWmpt9Qr7XrR5jWRkgOU901swEZ

Lv3-4

  • 登陆进去看看
    Access disallowed. You are visiting from “” while authorized users should come only from “http://natas5.natas.labs.overthewire.org/” 提示说用户只能来自于natas5
  • 那就修改一下请求头中的referer, http协议是不检查的,随便写从哪里来它都信.
  • 简单,用火狐的hackbar把始发地改一下就是了
  • The password for natas5 is
    iX6IOfmpN7AYOQGPwtn3fXpbaJVJcHfq

Lv4-5

  • 登陆进去说没有登陆,不是登陆状态,这个自然就想到cookie了
  • 用f12看看请求头,cookie里面有loggedin=0, 用hackbar改成1看看,果断就登陆进去了
  • Access granted. The password for natas6 is
  • aGoY4q2Dc6MgDq4oL4YtoKtyAg9PeHa1

Lv5-6

  • 登陆进去,提示要输入密码,不知道密码呀,f12以下,没看出什么名堂
  • 然后看到网页上面有个源代码的按钮,点以下,出现了php源码
  • 有一个包含文件,说是这个秘密与包含的那个文件的密码一样就能得到密码
  • 二话不说,连那个包含文件,没有反应,应该是解析了,F12看一下
    $secret = “FOEIUWGHFEEUHOFUOIU”;
  • 把这个秘密拿到之前连接提交一下,得到密码
  • 7z3hEENjQtflzgnT29q7wAvMNfZdh0i9

LV6-7

  • 打开发现有两个按钮,按一下,没什么特别的提示,但是可以看到地址栏中page参数变化,
  • 试试有没有文件读取漏洞吧,直接把page参数改成/etc/natas_webpass/natas8
  • 成功读到密码
    DBfUBfqQG69KvJvJ1iAbMoIpwSNQ9bWe

Lv7-8

  • 等进去之后,有给源码,看一下
  • 源码给了一个函数和一个密码,意思是用户输入的密码经过这个函数转换之后与这个密码比较,一样就通过
  • 这个函数的内容是把输入的内容base64加密,然后翻转加密后的字符,然后转换成16进制,返回这个结果
  • 知道了密码,知道了加密方式,直接解密就是了,先把16进制数字转换成字符串,再把字符串翻转,再把翻转的字符串base64解密,最后得到这么一个结果
    oubWYf2kBq
  • 把这个密码输入进去,得到答案
    W0mMhUcRRnG8dcghE4qvk3JA9lGt8nDl

Lv8-9

  • 等进去一看,是个输入框,随便打个字母进去,输出很多单词,类似字典的功能吧,打开源码看看
  • 发现有一个外部执行函数,passthru,这个函数会执行外部的命令,并将结果显示出来
  • 那么就更改一下要执行的命令,& cat /etc/natas_webpass/natas10 # 前面$是把grep函数阻断,后面#是把后面的注释,然后得到密码
  • nOpp1igQAkUzaI1GUUjzn1bFVj7xCNzu

Lv 9-10

  • 和上题目一样,命令注入,发现不行,提示说过滤了字符,查看源码
  • 过滤了[]&;|,这样就无法打断grep,没有问题,可以直接用grep找呀
  • .* /etc/natas_webpass/natas11 grep支持正则 .*表示任意字符任意次 爆出密码
  • U82q5TCMMQ9xuFoI3dYX61s7OZD9JKoK

Lv 10-11

<?

$defaultdata = array( "showpassword"=>"no", "bgcolor"=>"#ffffff");

function xor_encrypt($in) {
   
    $key = '<censored>';
    $text = $in;
    $outText = '';

    // Iterate through each character
    for($i=0;$i<strlen($text);$i++) {
   
    $outText .= $text[$i] ^ $key[$i % strlen($key)];
    }

    return $outText;
}

function loadData($def) {
   
    global $_COOKIE;
    $mydata = $def;
    if(array_key_exists("data", $_COOKIE)) {
   
    $tempdata = json_decode(xor_encrypt(base64_decode($_COOKIE["data"])), true);
    
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值