重磅!共享单车漏洞独家发布。

惯于长夜过春时,挈妇将雏鬓有丝。
梦里依稀慈母泪,城头变幻大王旗。
忍看朋辈成新鬼,怒向刀丛觅小诗。
吟罢低眉无写处,月光如水照缁衣。

——鲁迅

 

时代变化之快,让人目瞪口呆。

 

谁能想到一千年之后,拳打镇关西的鲁提辖,开了一家粥粉面店。用自家杀猪的的肉,开自家店,自产自销,本也无可厚非。

 

然后令人吃惊的是,当年杀人不眨眼,胸前挺着一对金字招牌肉包子的孙二娘,竟然不卖人肉包子了,改行卖起了一种锁。这个锁号称固若金汤,无人能破。因为,它根本就没有锁孔!

 

锁,是一把好锁

 

为了证明这把锁是一把好锁,孙二娘广发英雄帖。悬赏:谁若能打开此锁,孙二娘将如花似玉的女儿相赠,另送比特币铜钱一万枚。

 

武林顿时像炸了锅一样,沸腾了起来。各路锁匠来了一拨又一波,但无一不望锁兴叹。因为没有锁孔,个个都像老鼠咬龟,无从下口。于是又人质疑这把锁不能正常使用。

 

只见孙二娘冷笑一声,从胸前的人肉大包子中间掏出一部爱疯手机,轻轻一点上面的APP,只听见清脆“叮”的一声,锁应声打开。

 

锁匠们顿时目瞪口呆。这是什么鬼,这么先进?真是闻所未闻。

 

科普时间一

 

孙二娘用的其实是一把云锁。通过手机APP,登陆云服务器,向锁发送云开锁指令,最后把锁打开。

 

工作原理

 

生产锁的时候,工匠们会向锁的flash写入设备ID,我们简称为DID。锁由内置电池供电,上电和正常工作的时候,锁会自动连接到云服务器,建立长连接。因为云服务器都有固定的IP,所以这一点不难理解。

 

为了保持长连接,锁必须定时向云服务器上报心跳脉冲信号。一旦心跳信号没有得到正确的回复,锁马上切换到定时重新连接服务器模式。为何是定时而不是不断尝试连接呢,主要的原因是为了省电。每一次尝试连接都会发出无线信号,消耗一定的电能。

 

既然是一把云锁,根本就没有锁眼,所以传统的锁匠自然不能把它打开。

 

孙二娘的锁因此名声大噪。江湖上的共享单车厂商纷纷找孙二娘合作,孙二娘真是赚的盘满钵满。

 

有码农的地方就有江湖

 

此事惊动了地球上的第三物种——程序员。程序员作为男人和女人之外的第三物种,并非浪得虚名。平日里一直忙于加班的程序员,得知这一消息之后,喜出望外,认为改变码农命运的时候到了。大魔王锋哥带领他的程序员兄弟们粉墨登场。

 

一日,孙二娘正在她的锁铺里面乘凉。店外忽然传来一声大喝:“我呸,孙二娘快快出来?”孙二娘心中一顿骂,心想那里来的泼猴,莫不是又是不知天高地厚来开锁的吧。出门一看,大吃一惊,只见那厮:

 

黑熊般一身粗肉,

铁牛似遍体顽皮。

交加一字赤黄眉,

双眼赤丝乱系。

怒发浑如贴刷,

狰狞好似狻猊。

 

孙二娘心里一哆嗦,此人不就是大魔王锋哥的大弟子倪震天?于是,赶忙走上前。心想,锋哥已经退隐江湖好多年了,难道今天要来踢馆?

 

正在思索,门外忽然传来一阵爽朗的笑声:“孙二娘,今天让我来开开你的锁。” 声音刚还在千里之外,人忽然就到了跟前。孙二娘定睛一看,来人羽扇纶巾,果然是锋哥。锋哥带着他的程序员兄弟,今日来破孙二娘的锁。

 

孙二娘一声招牌式冷笑:“老娘的锁也不是那么好破”。锋哥打断了她的话,说:“孙二娘,我等想在开锁之前,验验你的赏品,是否可以。”

 

孙二娘说:“所有来开锁的人都一视同仁,当然可以。”

 

于是呼出她的女儿,端是长的好看。有诗为证:

 

脸如莲萼,

唇似樱桃。

两弯眉画远山青,

一对眼明秋水润。

纤腰婀娜,

绿罗裙掩映金莲;

素体馨香,

绛纱袖轻笼玉笋。

凤钗斜插笼云髻,

象板高擎立玳筵。

 

锋哥大喝一声:“我呸,我等程序员每晚都要加班,哪有空理你这妖女。”快把比特币拿出来验一验。

 

漏洞,又见漏洞

 

验完比特币之后,孙二娘冷冷的说:“想你锋哥,也是江湖响当当的人物,今天莫要把招牌砸在我这里了。”

 

锋哥也不答话,在认真的研究起了孙二娘的锁。忽然抬起头来问孙二娘:“你的锁,可以远程通过APP来打开,是否可以通过APP关闭?“ 孙二娘说:”不能,我的锁只负责打开,不负责关闭。如果要关闭,需要用户现场手动关闭。“

 

科普时间二

 

用过摩拜单车或者小黄单车的同学都应该知道,每次用完单车,都必须手动把锁锁上。为何?因为膜拜和小黄单车的锁,都是没有电机的,通过弹簧的弹力,把机械锁打开。所以自然不能通过远程把锁关闭。

 

锋哥说:”如果用户用完了共享单车,忘记锁了,或者锁了但是信号没有发送到服务器,怎么办?“ 孙二娘得意的说:”可以通过手机APP,结束计费!“

 

锋哥一字一顿的说:”如果,所有的用户结束骑行之后,都不锁单车,都通过APP来结束计费,会怎么样?“

 

孙二娘突然大汗淋漓,嘶声道:”所有的单车,车锁都会被打开,变成真正的共享单车。“

 

锋哥拿起桌上的比特币,问孙二娘:“我是不是可以走了”,孙二娘瘫坐在地上,无力的点了点头。锋哥带着他的程序员兄弟,从孙二娘女儿的面前走过,头也不回的走了。

 

后记

 

文章写的比较俏皮,但是共享单车的漏洞说的都是事实。因为锁是单向的,只能远程开启,但是不能通过远程关闭。而且,因为信号覆盖的问题,有些地方会没有信号,所以共享单车的APP必须要留一个接口来结束计费。这就造成了一个无法弥补的漏洞,就是当所有的人用完单车,都通过APP结束计费,那么所有的共享单车,只要用一次,就可以一直处于开锁的状态。就成为了真正意义上的“共享单车”。

 

当然,我相信以我们的素质,这样的事情应该不会发生。

 

最后干货

 

现在包括摩拜单车在内,都是免押金使用单车的,但是我发现很多人都不知道。如果你还有押金在共享单车的账户,可以把押金退回,也一样可以使用共享单车哦。另外,锋哥已经模仿孙二娘的锁的原理,写成了一个例子程序,你也可以亲自测试哦。原理是通过编程牛人公众号和PC机的软件绑定,就可以通过公众号向PC机发送指令控制它锁屏或者关机:

PC端的电脑软件下载地址为:

https://pan.baidu.com/s/1wSZKnyXgARrylQxhDdPePQ

如果你觉得有用,欢迎转发!

锋哥培训宝典、公众号回复“1”

posted @ 2018-08-20 10:40  锋哥程序十年  阅读(730)  评论(1编辑  收藏  举报