盘锦建设资质网站有人做几个蝎子养殖门户网站
biteme
远离我的服务器!
端口扫描
循例 nmap

Web枚举
打开一看是一个默认页面

扫一波

打thm这么久,貌似还是第一次见带验证码的登录

信息有限,对着/console再扫一波

查看/securimage

但似乎没有找到能利用的信息
回到console, 在源码发现一个做了混淆的js
function handleSubmit() {eval(function(p,a,c,k,e,r){e=function(c){return c.toString(a)};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('0.1(\'2\').3=\'4\';5.6(\'@7 8 9 a b c d e f g h i... j\');',20,20,'document|getElementById|clicked|value|yes|console|log|fred|I|turned|on|php|file|syntax|highlighting|for|you|to|review|jason'.split('|'),0,{}))return true;}
将其丢到浏览器控制台

搜索一下

瞬间黑盒变白盒

跟到functions.phps

继续跟到config.phps

在functions.phps中,通过将$user转十六进制去验证的,那么这一串字符串肯定就是十六进制字符串,使用xxd解码

得到一个账户名
那么对于密码:
function is_valid_pwd($pwd) {$hash = md5($pwd);return substr($hash, -3) === '001';
}
这段代码将会将$pwd进行MD5,然后判断MD5的后三位是否为001
这里python写个脚本
import hashlibwith open('/usr/share/wordlists/rockyou.txt', 'r', encoding='ISO-8859-1') as f1:for val in f1.readlines():val = val.strip()has = hashlib.md5(val.encode('utf-8')).hexdigest()if has[len(has)-3:len(has)] == '001':print(f'{val} : {has}')

如果你的电脑足够强悍,也可以试试这个bash一句话

使用刚刚获得的账户和脚本跑出来的任意密码,登录

有mfa,但庆幸的是并没有任何输入次数限制,四位数字我们可以很轻松爆破出来
bash生成字典

ffuf直接爆


登录进去,发现直接就是一个文件包含

但似乎无法通过伪协议造成rce
由于可以查看任意目录,发现jason/.ssh下有id_rsa,尝试读取出来

直接登录ssh,发现需要密码

ssh2john+john直接爆

成功进来

横向移动
查看sudo -l

直接移动到fred

权限提升
查看sudo -l

又是些邪门歪道的提权
根据以往的经验,基本都是在配置文件中作妖

切换到配置文件目录,尝试find一下哪些文件我们当前用户所有

果然有

修改好后,重启服务

现在需要想办法触发它
在jail.local定义了相关规则

用hydra随便跑一下



getroot
