很多人喜欢在朋友圈晒“票”
晒“票”的利用:
我指的“票”有很多,发票、车票、账单、身份证等,许多年轻人会将一段出行或者某些花费收到的一些票据在朋友圈或空间晒一晒 “又开始一段新的旅途”、“今天又破费了”,虽然他们会将身份证号的某些数字给遮盖,但是了解身份证号构成的都知道是由地址码、出生日期码、顺序码和校验码组成的。知道这些还不简单,经过一些简单的操作,大多数的号都能知道,只有最后几位是随机生成的。社工师通过代码进行遍历,或者到阿里云的身份证实名认证接口就可以查到你的身份证详细信息了,连你的身份证头像都有。(花点钱的事儿)
作为测试,我从网上上找了一张别人的身份证
从火车票中,大概可以获取以下信息
姓名 马子章
性别 男 (18位身份证倒数第二位为顺序码,顺序码为奇数为男性,偶数为女性)
不完整身份证号:3702031988****8611*
通过以下程序可以生成一批可能是他的身份证号
```
#coding:utf-8
import time
# 身份证号 3702031988****8611
# 姓名 马子章
s="3702031988****8611"
sfz = [s.replace('****',j[4:]) for j in [time.strftime('%Y%m%d',time.localtime(i)) for i in range(int(time.mktime(time.strptime(s[6:10]+'0101','%Y%m%d'))),int(time.mktime(time.strptime(s[6:10]+'1231','%Y%m%d')))+1,3600*24)] if s[-1] == '10X98765432'[sum(map(lambda x: int(x[0]) * x[1], zip(s.replace('****',j[4:]), [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]) )) % 11]]
for i in sfz:
print i
```
生成的号码如下:
```
370203198801048611
370203198801128611
370203198801208611
370203198802198611
370203198802278611
370203198803078611
370203198803158611
370203198803238611
370203198803318611
370203198804038611
370203198804118611
370203198805188611
370203198805268611
370203198806068611
370203198806148611
370203198806228611
370203198806308611
370203198807028611
370203198807108611
370203198807298611
370203198808098611
370203198808178611
370203198808258611
370203198809058611
370203198809138611
370203198809218611
370203198810198611
370203198810278611
370203198811078611
370203198811158611
370203198811238611
370203198812038611
370203198812118611
```
现在需要在这些里面找到和 马子章 对应的身份证号。
通常一些实名认证的网站通常可以做到 阿里云就有身份验证api,
也都可以
举例):
在我的账户 → 实名认证
如果姓名和身份证号码对应,如下图所有(请注意粉红色提示语):
如果你的身份证号和姓名不符合,则如下图所示:
本次测试发现,尽管火车票用户的身份证号做了模糊化处理,但还是可以通过技术手段获取对方的身份证号。
网站验证虽然有点麻烦,但是通过批量生成然后再导入到阿里云的身份验证api当中去,进行批量验证,分分钟验证出来。
*仅作技术交流,勿用作非法用途!*
往期推荐
本文始发于微信公众号(零度安全攻防实验室):利用火车票获取你的身份信息
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论