Windows

关于pac文件对本机IPv6地址解析的方法

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

更新:2010-03-23 22:42:59

更新说明:测试不够充分,刚才又发现了几个之前没注意的问题,补充更新之。

更新1:Firefox 3.6的myIpAddress()函数对于有IPv6协议栈的主机的支持还是有问题,经过在Windows XP SP3+Firefox 3.6上测试,发现返回的是::1!

临时解决方法:about:config中,手工编辑设置项:network.dns.disableIPv6为true

chrome的最新代码分支已经解决了这个bug!

更新2:在Firefox中调试pac文件的技巧!

直接alert(msg),然后在“错误控制台”里可以看到msg

更新3:IE支持一系列新的pac扩展函数,主要针对的就是IPv6的支持!见参考资源4.

更新4:Ubuntu 9.04+Firefox 3.6组合下,myIpAddress()函数返回的地址居然是127.0.1.1! 好在Chrome 5解析依然可以返回正确的本机IP地址。

更新5:在Ubuntu下修复Firefox的解析bug可以采用修改hosts文件的方法,具体来说,添加本机的默认路由IP地址所对应主机名(bash下可以使用hostname命令查看当前主机名)的记录。

如:

 118.zzz.xxx.167    your-computer-name

自从买了主机以来,一直使用pac文件来实现智能的代理上网,支持的智能代理功能包括:

  1. 根据本机IP地址是教育网还是公网选择正确的默认代理地址,达到在教育网访问免费IP地址站点时直连,在公网访问教育网地址时使用学校的代理或VPN
  2. 根据目的网址是否被河蟹选择正确的代理地址

刚开始的时候一直有一个bug没有解决,那就是在学校使用的时候无法正确的识别本机IP地址,使用ADSL时就没有问题。通过一段时间的摸索之后,发现了问题所在!

IPv6!

由于教育网已经普及了IPv6地址,因此Firefox在解释执行myIpAddress()函数时返回的IP地址是IPv6的地址!而我之前在pac脚本里一直使用的是这段代码来判断本机IP地址的:

isInNet(myIpAddress(),"59.64.0.0","255.255.0.0")

上述代码在纯IPv4环境中是没有问题的,但关键问题是在有IPv6地址的主机上,myIpAddress()返回的地址格式是IPv6格式的!因此,isInNet函数就会解析失败了。

通过Google和自己的动手实践,现在改用以下代码来检测本机IP地址

if (shExpMatch(myIpAddress(), "*:59.64.*") || isInNet(myIpAddress(),"59.64.0.0","255.255.0.0") )

通过一段时间的测试来看,在以下平台和浏览器上测试通过上述代码:

  1. Windows XP:  Firefox 3.6/IE 8/Chrome 5
  2. Ubuntu: Firefox 3.6/Chrome 5

附几段有用的pac代码片段

var resolved_ip = dnsResolve(host);
 
if (isInNet(resolved_ip, "10.0.0.0", "255.0.0.0") ||
		isInNet(resolved_ip, "172.16.0.0",  "255.240.0.0") ||
		isInNet(resolved_ip, "192.168.0.0", "255.255.0.0") ||
		isInNet(resolved_ip, "127.0.0.0", "255.255.255.0"))
{
	return "DIRECT";
}
DEFAULT = "PROXY proxy.bupt.edu.cn:8080";
 
if(/\.cnki\.net/i.test(url))  return "DIRECT";
if(/\.ieee\.org/i.test(url)) return "DIRECT";
if(/\.sciencedirect\.com/i.test(url)) return "DIRECT";
if(/\.edu\.cn/i.test(url)) return "DIRECT";
if(/\.springerlink\.com/i.test(url)) return "DIRECT";

参考资源

  1. proxy.pac myIpAddress() returns incorrect format?
  2. Autoconfigure Scripts for Proxy Settings – Apr. 22, 2004
  3. http://autoproxy-gfwlist.googlecode.com/svn/trunk/gfwlist.txt
  4. http://blogs.msdn.com/wndp/archive/2006/07/18/IPV6-WPAD-for-WinHttp-and-WinInet.aspx

[推荐]基于Windbg的一个漏洞可利用性分析插件

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

微软在最近的CanSec West 发布了一个开源的WinDBG 插件 !exploitable Crash Analyzer (MSEC.dll),该插件主要用于分析程序崩溃和引起崩溃的程序bug是否可以被漏洞利用之间存在关联,同时,还可以便于微软确认漏洞的唯一性。

MSEC 开源项目的主页: http://msecdbg.codeplex.com/ 上有该插件的下载。 解压之后,把  MSEC.dll 放到 WinDBG 安装目录的的 winext 子目录下。

这个工具的价值和用处我就不加评论了,相关链接我汇聚了一下:

  1. http://www.securityfocus.com/brief/928 新闻
  2. http://blogs.technet.com/srd/archive/2009/04/08/the-history-of-the-exploitable-crash-analyzer.aspx 项目研发历史
  3. http://cansecwest.com/csw09archive.html PPT下载
  4. http://peachfuzzer.com/ 一个支持!exploitable Crash Analyzer的fuzz工具

[推荐]一个在线备份和文件同步的网站

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

 强烈推荐使用牛13的 Dropbox 进行文件同步,注册 Dropbox 并在不同电脑安装 Dropbox 同步程序后,设置一个同步文件夹,就可以让 Dropbox 后台运行了,在该文件夹的任何操作都会同步到其它登录统一帐号的电脑。

Dropbox支持Windows、Linux和Mac OS系统的客户端程序,可以随时随地的同步文件夹,而无需考虑所使用的操作系统。

官方有一个介绍Dropbox功能和使用的短片

修改/etc/apt/source.list,加入以下两行更新源地址:

deb http://linux.getdropbox.com/ubuntu jaunty main
deb-src http://linux.getdropbox.com/ubuntu jaunty main

水木blog贴图不便,找个网上别人的图来展示一下Dropbox吧。


milw0rm最后的打包…

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

最新milw0rm站点数据镜像下载: Security Tools

PoC has gone with wind…


[Ubuntu小技巧系列之三]跨平台压缩文件解压缩乱码问题的解决

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

rar格式的比较好办,rar 3.6以后版本对unicode的支持更加智能化。Linux下使用rar进行压缩/解压缩时,可以使用-scuc,来强制指定文件名用unicode编码进行压缩和解压缩。对于zip格式的需要注意,Windows下创建的zip压缩包默认是使用的本地编码。即如果是简体中文的Win系统,则会使用GBK来存储文件名。此时,在Linux下解压缩包含中文文件名的压缩包时,需要在命令行使用参数-O cp936。同理,在Windows下如果用WinRAR来解压缩zip文件倒是没有这个限制,WinRAR会自动检测文件名的编码方式。不建议在Linux下使用gz/tar格式的压缩文件来给Windows机器共享文件,如果gz/tar压缩包中包含中文文件名会导致winrar解压缩包含中文文件名的文件时失败!


一次聪明反被聪明误的注册表操作T_T

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

由于系统空间比较宝贵,我喜欢将软件安装在其它分区,但每次安装软件时提示的默认安装路径都是C:\Program Files,还得修改太麻烦了~~
打开注册表,定位到”[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion]“,将右边窗
口中的ProgramFilesDir字符串值修改为我想要的路径d:\Program Files

这样设置确实让我方便了不少。但它带来很多弊端,比如打开Outlook Express时,会报告C盘磁盘已满或者内存不足的错误,并提示”MSOE.dll无法初始化”,另外还可以引起Media Player等系统程序的运行故障。

最近升级了一次WMP到11版本,打开PPLive要播放时提示版本不对,重装了WMP也不好用,突然想起了这个注册表的改动,恍然大悟,再改回去。。。

重新安装WMP11,ok!

教训――不可太偷懒了啊~~

 


恢复Windows右键菜单中的Edit with…

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

没事总爱折腾系统,每次用ghost恢复系统后,很多软件都可以不用安装,唯独UltraEdit比较讨厌,总没有找到恢复资源管理器中的右键菜单的”Edit with UltraEdit”的捷径方法,今天经过一番摸索,终于解决了这个问题,记录一下,免得自己忘了,也服务后来人

比如我想在资源管理器的右键菜单中增加一个名为:“Edit with UltraEdit”的快捷方式,并且关联这个菜单为用UltraEdit编辑器打开这个选定的文件,我们就可以建立这样一个注册表文件,如下:

Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\Edit with UltraEdit\command]
@=”D:\\Program Files\\UltraEdit-32\\Uedit32.exe %1″

上述代码中蓝色字体对应的部分就是UltraEdit可执行文件的路径

Windows XP+SP2 OK!

现在可以enjoy免安装vim和UltraEdit的乐趣咯~~


关于Office 2003之word启动速度巨慢的原因分析及解决之道【收集整理】

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息

关于Office 2003之word启动速度巨慢的原因分析及解决之道:
问题产生的可能原因:
1 安装了Arcobat完全版
2 安装了Norton的office监控
3 mathtype
4 中毒
5 word中所使用的宏作者证书过期
6.其他

解决之道:
1.使用Reader或第三方pdf阅读工具,如FoxIt
2.关闭office监控(其他杀软设置类似)
3.证书失效引起,见5的解决方法
4.杀毒
5.有两种方法,最省事的方法是第二种
Word 菜单:工具 => 宏 => 安全性 => 可靠发行商,依次查看每个证书。如果证书已经
失效(有黄色或红色警告标记),可以采用如下步骤手动信任该证书:1)导出该证书
到文件(Certificate => Details => Copy to File)。(2)打开证书文件,并将其安
装到 Trusted People 目录。
ie>工具>internet选项>高级>安全>去掉”检查发行商的证书吊销”前的勾,这样子可能会有安全隐患,实在忍受不了的可以试试
6.待补充

感谢水木OfficeSoft版精华区前辈们的劳动为我解决了一个长期没有解决的难题:)


  • GTalk with me!

  • 订阅我的博客

  •  

    2010年九月
    « 八    
     12345
    6789101112
    13141516171819
    20212223242526
    27282930  
  • Google朋友圈

  • 文章分类

  • 量子统计

  • Copyright © 1996-2010 猪在笑. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress
    Page 1 of 11