WannaCry 勒索病毒与 Windows 安全性更新档下载网址
这两天 WannaCry (WanaCrypt0r 2.0) 勒索病毒肆虐,台湾成为全球第二重灾区!!
这个病毒是针对 Windows 的 SMB 漏洞进行攻击,大部分其他病毒均是透过执行病毒所感染的档案来传播,与其他病毒不同的是,WannaCry 勒索病毒具有自行在“局域网路”扩散的能力。
目前确定会遭受感染的作业系统为 Windows XP/Vista/7/8/8.1/10、Windows Server 2003/2008/2012,意思就是所有的 Windows 版本都会遭受感染。
本站推荐的 Chrome 浏览器扩充套件 (Extensions)
要使用这些扩充套件,你得先安装 Google Chrome 浏览器。
书签/稍后阅读
- Save to Pocket: 快速储存连结及网页内容到它的“Pocket”网站,之后你可以在它的网站或行动装置上阅读储存的网页 (Pocket 行动装置版本)。它会重新编排网页,让网页更加容易阅读。以前它的名字叫“Read it Later”。
- Diigo Web Collector: 网络书签,其功能像以前“Delicious 美味书签”的加强版。
- Bookmarkie: 弹出式书签栏。
- 备选: 书签侧边栏 - 在浏览器视窗边缘增加一个可切换的书签侧边栏。
设定 MediaWiki 可以上传 zip 档
MediaWiki 默认只能上传 png、gif、jpg、jpeg 这些图档,我们可以在 LocalSettings.php 编辑:
$wgEnableUploads = false; $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg' );
加入你额外想要上传的档案类型 (找不到这两行的话就自己加上去):
$wgEnableUploads = true; $wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'zip', 'pdf', 'rar' );
上面的目的是为了可以额外再上传 zip、pdf、rar 类型的档案。可惜事与愿违,上传 pdf 与 rar 档都没问是,但要上传 zip 档却给我出现:
MIME 类别 "application/zip" 不是容许的档案格式。
原来是因为 MediaWiki 有设一些副档名的“黑名单”,刚好 zip 就在其中,设定档在: includes/DefaultSettings.php
找到内容:
$wgMimeTypeBlacklist= array(
# HTML may contain cookie-stealing JavaScript and web bugs
'text/html', 'text/javascript', 'text/x-javascript', 'application/x-shellscript',
# PHP scripts may execute arbitrary code on the server
'application/x-php', 'text/x-php',
# Other types that may be interpreted by some servers
'text/x-python', 'text/x-perl', 'text/x-bash', 'text/x-sh', 'text/x-csh',
# Client-side hazards on Internet Explorer
'text/scriptlet', 'application/x-msdownload',
# Windows metafile, client-side vulnerability on some systems
'application/x-msmetafile',
# A ZIP file may be a valid Java archive containing an applet which exploits the
# same-origin policy to steal cookies
'application/zip',
);
将“'application/zip',”删除即可。
至于上传 zip 档未来的后果会是如何...这我就不能预料了。
解决 Windows 10 自动开机的问题
查看系统的电源设定
1. 查询最近一次电脑被唤醒的原因,于 cmd 命令提示字符执行:
powercfg /lastwake
唤醒记录计数 - 1 唤醒记录 [0] 唤醒来源计数 - 1 唤醒来源 [0] 类型: 唤醒计时器 拥有者: [SERVICE] \Device\HarddiskVolume2\Windows\System32\svchost.exe (SystemEventsBroker) 拥有者提供的原因: Windows 将执行 'NT TASK\2BrightSparks\SyncBackFree\ASUS-User\DailyBackup' 排定要求唤醒电脑的工作。
2. 查询系统中已设定用来唤醒电脑的程序,于 cmd 命令提示字符执行:
powercfg /waketimers
没有的话会显示:
系统没有使用中的唤醒计时器。
有的话会显示:
[SERVICE] \Device\HarddiskVolume2\Windows\System32\svchost.exe (SystemEventsBroker) 设定的计时器在 下午 10:59:29 的 2017/2/11 到期。 原因: Windows 将执行 'NT TASK\2BrightSparks\SyncBackFree\ASUS-User\DailyBackup' 排定要求唤醒电脑的工作。
你得依查询的状况去找出程式来关闭唤醒电脑功能。
例如,根据上面于我的电脑执行 powercfg 所得到的结果,我必须去执行 SyncBack 程式,将 Profile: DailyBackup 于排程设定中的“Wake the computer to run this task”选项给关闭。
自动维护
Windows 的“自动维护”功能也会唤醒电脑。
关闭唤醒的步骤:
- 进到 控制台\系统及安全性\安全性与维护\自动维护。
- 将“允许排定的维护在排定的时间唤醒我的电脑”给取消勾选:
参考网页
[JavaScript]如何防止自己的网站被别人以 iframe 盖台嵌入 (与反制办法)
“iframe (内置框架)”是用来在网页中的特定位置嵌入另一个网页。目前 Facebook、Google+、Twitter...等用来在网页上显示社群内容的社群元件,几乎都是以 iframe 实作出来的。
原本框架是一种很好的应用,但如果是自己辛苦制作的网页被别人的网站以 iframe 嵌入,因而出现在别人的网站里,成为别人网站的一部份!!这种感觉就像是自己的心血被别人整碗捧走一样!!
导回自已网站的方法
方法 1
于网页的原始码加入以下 Script:
<script type="text/javascript"> if( top.location != document.location ){ top.location.href = document.location.href; } </script>
以上的 Script 会检查浏览器最上层视窗的网址是否与目前网页的网址一致,如果不一致,则把最上层视窗的网址改为目前网页的网址,就酱。
方法 2 (反制办法)
于网页的原始码加入以下 Script:
<script type="text/javascript"> if( top.location != document.location ){ document.write("<h1 style='color:#FF0000'>未经授权嵌入别人的网页是可耻的行为!!</h1>(<a href='"+document.location+"' target='_blank'>原站网址</a>)"); } </script>
以上的 Script 会检查浏览器最上层视窗的网址是否与目前网页的网址一致,如果不一致,就显示:
未经授权嵌入别人的网页是可耻的行为!!
(原站网址)
我比较不喜欢与人家互呛,所以我通常是用“方法 1”啦!
[MySQL]数据库的备份与还原
数据库汇出/备份
1. 备份单一数据库:
$ mysqldump -u Username -p --opt DatabaseName > Backup.sql
2. 仅备份特定数据库下的资料表:
$ mysqldump -u Username -p --opt DatabaseName Table1 Table2... > Backup.sql
3. 仅汇出资料表结构:
$ mysqldump -u Username -p --opt --no-data DatabaseName > Backup.sql
4. 备份全部的数据库:
$ mysqldump -u Username -p -A --opt > AllBackup.sql
mysql/mysqldump/mysqladmin 与“登入”有关的参数说明:
- -u Username: 用来存取 mysql 资料表的用户名称。此参数可省略,若省略,则表示为目前登入 linux 的用户名称。
- -p: 于执行时再询问密码。
- -pPassword: 用来存取 mysql 资料表的密码,-p 与 Password 的中间不可有空格。
数据库汇入/还原
1. 建立数据库,再从备份档汇入单一数据库:
$ mysqladmin -u Username -p create DatabaseName
$ mysql -u Username -p DatabaseName < Backup.sql
2. 从备份档汇入全部的数据库 (不需先建立数据库):
$ mysql -u Username -p < AllBackup.sql
状况处理:
状况 1.
汇入数据库时出现错误讯息: Unknown collation: 'utf8mb4_unicode_ci' 或 Unknown collation: 'utf8mb4_unicode_520_ci'
说明:
MySQL 于 v5.5.3 版之后才有“utf8mb4”的编码格式。原本 utf8 的最大编码长度为 3bytes,而 utf8mb4 的最大编码长度为 4bytes,因此它比 utf8 可以储存更多的字符。但是以常用的文字来讲,utf8 已经完全足够使用了。若不升级 MySQL Server,则只须将汇入的字符编码格式改为原本的 utf8。
解决方法:
先将备份档中的 utf8mb4 字串替换成 utf8: (以下的三行指令需依照顺序执行)
$ sed -i 's/utf8mb4_unicode_ci/utf8_general_ci/g' Backup.sql $ sed -i 's/utf8mb4_unicode_520_ci/utf8_general_ci/g' Backup.sql $ sed -i 's/utf8mb4/utf8/g' Backup.sql
全部替换完再进行汇入:
$ mysql -u Username -p DatabaseName < Backup.sql
状况 2.
以 mysqldump 汇出数据库时出现错误讯息: Got error: 1044: Access denied for user 'backup'@'localhost' to database 'test' when using LOCK TABLES
说明:
这错误讯息已说明了用来执行 mysqldump 的帐号没有“LOCK TABLES”权限! 通常用 root 帐号汇出数据库不会发生这个问题,因为我们会给 root 所有的权限。然而我们在设定其它帐号时可能会忘了给它设定“LOCK TABLES”权限,而执行 mysqldump 至少需要“SELECT”与“LOCK TABLES”权限才行,最好再加上“SHOW VIEW”、“EVENT”与“TRIGGER”。
解决方法:
重新授予用户权限:
grant SELECT, LOCK TABLES, SHOW VIEW, EVENT, TRIGGER on *.* to 'backup'@'localhost' identified by '{Password}';
flush privileges;
状况 3.
从 cpanel 下载的 MySQL 档案格式为 *.gz,可以用 gunzip 解压缩:
$ gunzip Backup.sql.gz
注意: 使用 gunzip 解压缩后,原本的 *.gz 会被删除!!若要保留旧档,须改用下列指令:
$ gunzip -c Backup.sql.gz > Backup.sql
数据库离线备份/还原
MySQL 的数据库放在 /var/lib/mysql 下,以数据库的名称做为目录的名称。直接将 /var/lib/mysql 下的数据库目录用 tar 指令个别压缩起来即可做为备份。要还原再把档案解压缩回去。
要以这种方式执行备份与还原都必须先停止 MySQL 的服务:
$ service mysqld stop
参考网页
处理 DNS 的 CNAME 造成收件者错误的问题
第一次遇到客户因为自己 Server 的 DNS 问题,造成我方要寄信给客户时,收件者的 EMail Address 会于 SMTP Server 端被自动变更 (寄给 [email protected] 会变成寄给 [email protected]),以致于客户收不到 EMail 的问题!! (客户可能以为是我方的问题)
我自己测试的结果是与 DNS 的 CNAME 有关:
C:\>nslookup -type=cname example.com Server: dns.hinet.net Address: 168.95.1.1 example.com canonical name = other.example.com
同时我在网络上找到一篇微软的 KB 文件,已经写得很清楚了,我就直接把内容放上来。
免跑银行,直接线上领取 Google AdSense 广告收入 (西联汇款)
2020/12/30 更新:
Google 通知,将于 2021 年初停止透过西联汇款支付款项,所以本网页的教学大概也没什么用了。
如要继续收到 Google 支付的款项,你必须登入自己的帐户,然后新增或选取其他收款方式 (汇款或支票)。
之前的内容:
Google AdSense
约莫等了半年,终于又收到了一笔 Google AdSense 的广告收入了,算是农历过年前的一个小小小红包。
在台湾,AdSense 的用户可以使用“西联汇款”来进行收款,目前台湾有支援西联汇款的银行有京城银行、大众银行与元大银行。
我是使用“京城银行”,这个有点陌生的银行。它的“网络西联汇款”服务可以直接将我的 AdSense 广告收益从美金转为台币存入我的银行帐户,并且不收取任何手续费、不用等待,但是会有汇损的问题。
不过我今天要操作收款时,发现做为“汇款人”的 Google 的身份又改变了! 原本的身份“Google Ireland Ltd. (爱尔兰)”,更早之前是“Google Inc. (美国)”,现在的汇款人身份则为“Google Asia Pacific Pte. Ltd. (新加坡)”!
这个付款人的资讯会影响我们能否正常收款,不过没关系,下面会教你如何识别付款者的身份。
INFORMATION
我们解决了什么问题?我们创造了什么价值?
近期回响