当前位置:首页 > 作者 星之宇 的所有文章

Bug描述

今天论坛有人说评论有BUG,我看了一下,无意中注意到isLogCanComment函数。

function isLogCanComment($blogId) { if (Option::get('iscomment') == 'n') { return false; } $query = $this->db->query("SELECT allow_remark FROM ".DB_PREFIX."blog WHERE gid=$blogId"); $show_remark = $this->db->fetch_array($query); if ($show_remark['allow_remark'] == 'n' || $show_remark === false) { return false; }else { return true; } }

以上是isLogCanComment函数的代码,数据库(连接方式使用mysqli)查询$show_remark的值应该是空值NULL,所以不能用===false。

注意:数据库连接方式使用mysqli就会出现这个问题

影响就是POST伪造gid,可以把评论发布到不存在或者未审核未发布的文章下,影响应该不大。

Routeros(ROS)X86的由于没有重置出厂值的按钮,忘记了密码,而且还要保留配置,就会变得比较麻烦,只能通过删除文件的方法来重置密码破解密码。


操作方法:

(我这边以ROS 6.47.9版本为例)

1、实体机可以通过Windows PE使用DiskGenius删除 rw/store/user.dat 即可。虚拟化使用DiskGenius专业版加载vmdk镜像,之后直接删除 rw/store/user.dat 即可。(Windows PE无法直接访问linux分区格式必须借助工具)。老版本的ROS 6.x到这步重启即可

2、新版本ROS,比如这边演示的6.47.9,还需要删除  rw/store/user.idx 文件和 rw/store/user 文件夹。

RouterOS(以下简称ROS)使用虚拟路由冗余协议Virtual Router Redundancy Protocol(以下简称VRRP)创建虚拟网关来实现双机热备功能。


VRRP协议原理:

VRRP协议可以通过多台路由器组成一个网关集合,使用VRRP虚拟网关作为终端用户的网关,当VRRP master路由器停止运行的时候,VRRP优先级最高的backup路由器就会重新生成为master状态,所有网络会切换到该路由器上。vrrp是master路由广播所有backup路由器。当backup收不到master的数据时,触发backup路由变为新的master路由。


实验环境和拓扑图:

主ROS:R1,备ROS:R2,双线公网,一台交换机

这里先讲讲VMWARE ESXI 6.5U1离线补丁包升级过程,因为离线升级是所有升级方法中最简单最快捷的。


一、升级准备

1、备份,重要资料一定要备份。


2、去VMWARE官网下载补丁包。

地址:http://www.vmware.com/patchmgr/download.portal(需要注册账号,请自行注册)

目前有两种补丁包:

1、每月提供的补丁包,文件名为:“ESXi650-201710001”,下载后是zip格式的

2、累计更新补丁包,文件名为:“update-from-esxi6.5-6.5_update01”,下载后是zip格式的

Windows10快速启动称为混合启动(HybridBoot),在Windows8操作系统就引入了这个功能:

以往如 Windows 7关机的时候会将用户会话和系统内核会话同时关闭掉,但在Windows 8 开始的操作系统中新增加了一个“混合启动”(Hybrid Boot)新功能,其原理是关机的时候只关闭用户会话,而系统内核会话则转入休眠状态(保存到一个文件中,下次开机时直接从这个文件中写回内存),从而提高系统启动速度,而微软更是把这个“混合启动”功能默认替代了关机功能。


“睡眠”模式

系统会将正在处理的数据保存到内存中,除内存以外的所有设备都停止供电,可以通过鼠标键盘等唤醒电脑,唤醒后的运行状态和睡眠之前一模一样,睡眠期间不可断电,断电的话内存上的所有数据全部丢失,只能重新开机。

新买的电脑,一般只有一个系统分区,那么在不重装系统的情况下Windows10如何调准分区呢?通过Win10自带的磁盘管理来操作。


一、压缩卷

1、“此电脑” ,右击属性,点击“管理”,打开计算机管理,点击“存储” --> "磁盘管理“


2、右击C盘,点击”压缩卷“


3、正在查询空间,稍等就好。


4、输入压缩空间量(MB),这边输入要划分出来的空间大小,直接输入大小就好,如果有强迫症的,需要整数划分出来的(按照GB大小*1024,填入就好)

我前面有文章《RouterOS利用DNSPOD的API接口实现DDNS动态解析》写过通过PHP服务器更新DNSPOD解析的域名IP,但是更多的是带来安全问题,所有这次写了一个RouterOS(以下简称ROS)的原生脚本来实现域名的动态解析。


版本说明

1、最低版本支持RouterOS v6.43,低于这个版本的要么升级,要么还是使用第三方服务器来动态解析。

2、不存在的记录,不会自动添加,需要手动在DNSPOD添加记录,线路为默认,不支持单记录多线路解析。为什么不加自动了添加域名之类的,因为一次添加永久有效,所以脚本中不添加自动了。节省ROS性能(我懒)

3、只支持IPv4,不支持IPv6

问题描述

通过Zabbix Web后台无法选择中文语言包,提示”You are not able to choose some of the languages, because locales for them are not installed on the web server.“


解决方法

1、通过命令安装中文语言包,SSH连接到zabbix,这边使用的是虚拟化版本,账号是root密码是zabbix。

[root@appliance ~]# dnf install langpacks-zh_CN.noarch


2、刷新Zabbix Web后台,这个时候可以选择简体中文,点一下更新即可