首页 > 其他分享 >解决服务器取证过程中宝塔强制绑定手机号的问题

解决服务器取证过程中宝塔强制绑定手机号的问题

时间:2023-09-30 17:44:58浏览次数:47  
标签:取证 www 手机号 宝塔 softList 绑定 list get

声明

本文中提及的方式仅是为了便于服务器取证的研究,仅适用于无法出网的真实取证鉴定情况。

请不要在生产环境随意修改宝塔服务的任何文件!

分析

目前,宝塔面板已经强制要求绑定手机号。这给取证工作带来很大的不便,尤其是在实际工作中,服务器是不可以连接互联网的,因此必须解决掉这个问题。好在我们知道,宝塔面板是使用python开发的,我们可以轻松地修改代码。

先从路由入手,路由是bind

vscode连上服务器,选/www/server/panel作为工作目录,搜索/bind

/BTPanel/__init__.py中找到路由定义,从这个写法能看出宝塔面板的服务端用的的Django框架

直接看一眼顶针的is_bind函数,位于public下,这是自己写的包,也就是/class/public.py

找一下函数,明显发现是获取了get_user_info的返回值

看一眼get_user_info,具体逻辑就是从宝塔面板服务端的目录下的/data/userInfo.json读取数据,如果文件不存在就返回一个空字典,存在就拿值。所以我们只需要给值就可以了

先随意给值,添加到文件/www/server/panel/data/userInfo.json,重启宝塔

{
  "uid":1,
  "address":"",
  "access_key":"",
  "username":"WXjzc",
  "serverid":""
}

现在就不会强制要求绑定手机号了,但是获取软件列表会失败,问题出在get_cloud_list这个函数

定位代码,尝试直接注掉看看

抛了个KeyError,看了一下是后面字典里给list赋值了

加一句softList.update({'list':[]})

重启后报下一个错,这是专业版判断的字段,为0时是永久专业版,这个值同样是在get_cloud_list里给的,应该是请求网络时拿到的,不过我们没有登录,直接赋一个上去

重启之后就再也没有弹窗了,缺点是没法拿到软件列表

总结

总结一下修改的点

添加文件/www/server/panel/userInfo.json,并写入以下内容

{
  "uid":1,
  "address":"",
  "access_key":"",
  "username":"",
  "serverid":""
}

修改文件/www/server/panel/class/panelPlugin.py,将如下代码注释或删除

if not 'list' in softList:
    if 'msg' in softList:
        raise public.PanelError(softList['msg'])
    else:
        raise public.PanelError('获取插件列表失败!')

在上述代码的下方添加如下代码

softList.update({'list':[]})
softList.update({'pro':0})

随后重启宝塔面板服务

标签:取证,www,手机号,宝塔,softList,绑定,list,get
From: https://www.cnblogs.com/WXjzc/p/17738053.html

相关文章

  • 下拉框选择与数据集参数的绑定
    步骤:1.制作数据集,并且在数据集的where条件后面添加上数据集参数。2.在报表设计器中添加控件:下拉框选择控件。3.给下拉框控件绑定参数(命名),绑定到数据集中where后面的参数中。4.选中下拉框选项。经过上面四步,发现在选择了下拉框选项中的参......
  • 带您了解视频融合/视频监控平台EasyCVR分组批量绑定/取消设备功能
    EasyCVR平台是一款具备丰富灵活视频能力的安防视频监控与集中存储解决方案。该平台支持多种主流标准协议,包括国标GB28181、RTSP/Onvif、RTMP等,并且可以接入各种厂家的私有协议与SDK,例如海康Ehome、海大宇等设备的SDK。EasyCVR平台不仅具备传统安防视频监控的能力,还具备接入AI智能......
  • Applescript成功实现imessage数据筛选,imessage蓝号检测,无痕检测手机号是否注册imess
    一、imessages数据检测的两种方式:1.人工筛选,将要验证的号码输出到文件中,以逗号分隔。再将文件中的号码粘贴到iMessage客户端的地址栏,iMessage客户端会自动逐个检验该号码是否为iMessage账号,检验速度视网速而定。红色表示不是iMessage账号,蓝色表示iMessage账号。2.编写苹果MacOs......
  • Tomcat-jdk绑定配置
    命令cd/tomcat8/conf/修改配置文件viserver.xml为tomcat指定JDK环境vi/usr/local/tomcat8/bin/startup.sh添加exportJAVA_HOME=/usr/java/jdk1.8.0_131exportJRE_HOME=$JAVA_HOME/jreexportCLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/libexportPATH=$JAVA_HOME......
  • 23年9月最新微信小程序 手机号授权 (uniapp+盛派SDK) 帮你踩坑
    一、背景微信小程序手机号授权接口,从23年8月开始实行付费验证。文档地址:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/getRealtimePhoneNumber.html 新版手机号授权说明如下:自2023年8月28日起【手机号实时验证组件】将需要付费使用。标准单价......
  • ORA-01008:并非所有变量都已绑定-解决办法
        近期批量处理数据,后台用JAVA编写,连接Oracle数据库,程序运行报ORA-01008问题。解决这个问题时遇见的坑较多,下面复盘现象、问题提出解决办法,希望能帮到遇见同类问题的你。调试问题:后台代码:/***插入操作的封装***/publicstaticvoidinsertRo......
  • 成功实现FaceTime语音,FaceTime视频,FaceTime数据筛选,检测手机号是否开通FaceTime的
    FaceTime是苹果公司iOS和macOS(以前称MacOSX或OSX)内置的一款视频通话软件,通过Wi-Fi或者蜂窝数据接入互联网,在两个装有FaceTime的设备之间实现视频通话。其要求通话双方均具有装有FaceTime的苹果设备,苹果ID以及可接入互联网的3G/4G/5G或者Wi-Fi网络。 一、Windows电脑上部署......
  • C#中DataGridView控件绑定控件绑定数据源方式
    第一种:DataSetds=newDataSet();this.dataGridView1.DataSource=ds.Table[0];第二种:DataTabledt=newDataTable();this.dataGridView1.DataSource=dt;第三种:DataSetds=newDataSet();this.dataGridView1.DataSource=ds.Tables["表名"];第四种:DataSetds=newDataSet......
  • Applescript脚本实现全自动无痕检测手机号码是否注册iMessage的原理
    一、检测数据的两种方式:1.人工筛选,将要验证的号码输出到文件中,以逗号分隔。再将文件中的号码粘贴到iMessage客户端的地址栏,iMessage客户端会自动逐个检验该号码是否为iMessage账号,检验速度视网速而定。红色表示不是iMessage账号,蓝色表示iMessage账号。2.编写脚本控制Macos/iphon......
  • Winform中使用System.Windows.Forms.Timer多次启动停止计时器时绑定事件会重复多次执
    场景C#中实现计时器功能(定时任务和计时多长时间后执行某方法):https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106274074以上关于定时器的使用。在实现点击按钮启动定时器,点击停止按钮停止定时器时发现,重复多次后会导致定时器方法累计重复执行。联想到如下情况......