需要做一个验证,想了各种办法都不行。
老板要求用 PHP 实现,现阶段用 JS 或者 PHP 实现都可以,其他语言也可以,借鉴一下思路...
要求不使用 AcitiveX 和 IE 有可能吗?
1
ChoateYao 2018-09-20 10:45:16 +08:00
没有,不现实,Mac 地址能伪造。
|
2
ligthdawn 2018-09-20 10:45:21 +08:00
应该不行吧,如果可以获取也只是获取到网关的 mac 地址。mark 一下,等大神回答
|
3
ashes1122 2018-09-20 10:46:11 +08:00
弹框,提示用户:请输入您的 Mac 地址。
|
4
VensonEEE 2018-09-20 10:51:40 +08:00
让人装 ActiveX 不光可以要 mac 连哪个兜里有啥文件都能搞出来。
|
5
aa514758835 2018-09-20 10:54:47 +08:00
@ashes1122 真天才
|
6
KuroNekoFan 2018-09-20 11:02:44 +08:00 via iPhone
java 来说 request 对象有 remoteIp,php/nodejs 自己看文档吧,浏览器端 js 应该是无法获取的
|
7
KuroNekoFan 2018-09-20 11:03:17 +08:00 via iPhone
哦 mac,当我没说过😅
|
8
fcten 2018-09-20 11:05:24 +08:00
如果 php/js 能做到这件事,那不是平时上网啥隐私都被扒干净了?
|
9
whypool 2018-09-20 11:11:25 +08:00
不能
如果要获取,用 nw/el 封一个客户端,里面加 node 的包可以获取 mac 地址 |
10
ai0by OP 看来是我想多了😅
|
11
alwayshere 2018-09-20 11:25:52 +08:00
反正都能伪造,你获取有啥用
|
12
imn1 2018-09-20 11:27:54 +08:00
可以获取的话,还有那么多研究 browser fingerprint 的都是傻子?
|
13
respect11 2018-09-20 11:39:22 +08:00
刚毕业的时候,老板也有这种要求,然后我走了。。。
|
14
delectate 2018-09-20 11:47:05 +08:00
没办法,不可能。
|
15
LuffyGu 2018-09-20 13:13:13 +08:00
貌似不容易,其实就是很难
|
16
xenme 2018-09-20 13:19:21 +08:00 via iPhone
搞到一个人 0day 就有了
|
17
cqu1980 2018-09-20 13:19:48 +08:00 1
你们老板不会提需求,应该是:网站可以感应用户的想法,随时提供用户想要的样式和功能。比如用户向购物,立马变成购物网站,用户想搜索,立马变成搜索引擎,用户想下载软件,立马变成软件下载网站。一个网站,可以提供用户全部想想。
|
18
lihongjie0209 2018-09-20 13:20:07 +08:00
@ligthdawn 和网关有什么关系
|
19
lihongjie0209 2018-09-20 13:30:13 +08:00 2
假如 PHP/JS 是服务端, 答案是不可能.
你需要了解一下网络的下三层是怎么传输的, MAC 地址是二层地址, 在客户端到客户的路由器, 路由器到路由器, 路由器到你们的服务器之间的每一跳都会改变, 哪怕你拦截你服务器的所有二层流量, 那么你拿到的也是把流量转发给你的路由器的 MAC, 更不用说这些高级语言无法拦截二层流量. 假如你的 JS 是跑在客户的浏览器中的, 答案是不可能. 浏览器是七层的软件, 下三层传输对于浏览器是完全透明的, 你的浏览器都不知道有 MAC 地址的存在, 更不用说提供一个 API 让你获取 MAC 地址了. 假如你的 JS 是跑在客户端的 NodeJS 中, 答案是可能的. 但是看你的提问, 你应该不想开发一个 NodeJS 软件然后给客户安装, 最后只是获取客户的 MAC 地址. |
20
lihongjie0209 2018-09-20 13:32:45 +08:00 1
|
21
airdge 2018-09-20 13:42:14 +08:00 1
弄 ip 验证不是简单点
|
22
ai0by OP @lihongjie0209 感谢您的回答,我们只是单纯的做个网站的验证,因为内容比较保密所以想到了这个验证方式
|
25
wuhhhh 2018-09-20 14:48:57 +08:00 via iPhone
保密用 mac。。。你老板跟艳红可以说互相理解了
|
26
aiyov 2018-09-20 14:49:09 +08:00
用 ie 浏览器获取过 mac 地址
|
27
rabbbit 2018-09-20 14:55:02 +08:00 1
用不着 mac,收集浏览器 /系统指纹就能定位了
例如 系统字体 GPU 信息 时区 分辨率 浏览器版本 Canvas 指纹 WebGL 指纹 AudioContext 指纹 WebRTC |
28
t6attack 2018-09-20 14:59:57 +08:00 1
先说 mac 地址的问题。这个地址本身就是可以随便改的,在网卡属性里改。这是很常见的操作。
比如校园里的 dr.com ,你的网费到期了,想借用同学的帐号上网。就需要先把你的网卡 mac 改成他的。 |
29
ai0by OP @wuhhhh 我们也没想那么多,哈哈,就是感觉无线网可以绑定 mac 地址,就让网页也绑定一下,想不到这个问题这么尴尬。
|
32
beastk 2018-09-20 16:24:57 +08:00 via iPhone
除非有漏洞,要不然不可能,不然广告联盟不得搞翻天了
|
33
ligthdawn 2018-09-20 18:03:55 +08:00
@lihongjie0209 当发送一个 ip 包的时候,通过 ARP 协议获取的 MAC 地址并不是一个真正的远程端的 MAC 地址,而是网关的 MAC 地址,我是这么理解的。有问题的话,请指出
|
34
fox0001 2018-09-20 18:36:27 +08:00 via Android
要不用 cookies。验证成功后,把唯一码写在 cookie 中,没有唯一码或唯一码有误的,要求客户端再次验证
|
35
yingfengi 2018-09-20 18:39:11 +08:00 via Android
七层模型了解下
|
36
lihongjie0209 2018-09-20 19:18:19 +08:00
@ligthdawn 你的报文传给网关之后, 网关转发给运营商, 运营商内部再转发, 最后到服务器, 每一次转发源 MAC 地址和目的 MAC 地址都会改变, 所以哪怕能获取也获取不到
|
37
x86 2018-09-20 19:22:27 +08:00
弹框让输入,前 5 次直接返回错误迷惑下他
|
38
BQsummer 2018-09-20 21:49:11 +08:00 via Android
设备指纹还是比较成熟的,能不能用要看具体需求
|
39
benzzz 2018-09-20 21:55:58 +08:00 via iPhone
chrome 插件不知道可不可以
|
40
githua 2018-09-20 23:09:40 +08:00
定制一个浏览器,请求你网站的时候,把 mac 附上就行了。
|
41
hermithacker 2018-09-21 09:28:49 +08:00
挂马?
|