如何利用udid提高积分墙平台防刷/防伪能力?

点击测试 https://authapi.applekuid.com

目前国内有很多获取udid的方法,例如蒲公英 还有其他的网站都提供了获取udid的功能,但是如何通过代码集成获取?我分析过国内的文章,大部分都差不多,基本都是可以伪装验证通过的;如何保证获取的是真正的设备的udid

如何获取苹果真正的udid?

baidu 搜索不下千篇的文章,没有一个是安全 或者可以说是的可以安全防止伪装 伪造udid

市面上是如何获取udid?  
1、引导用户安装udid描述文件  
2、安装描述文件后 手机会向服务器发送 udid imei 机型等信息

但是 怎么知道是真的 还是假的?

怎么知道是真的 还是假的?

不好意思 目前市面上暂时没有 目前已经出现很多伪装udid的软件 有通过fiddler软件修改 还各种软件 都是一些撸羊毛的团队在维护

是不是真的不能防止伪装?

是不是真的不能防止伪装?

接下来 我们先来看下 普通的udid获取方式

1.准备一个苹果描述文件 .mobileconfig


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
 
<plist version="1.0">
    <dict>
        <key>PayloadContent</key>
        <dict>
            <key>URL</key>
            <string>http://xxx/app/uuid</string>
            <key>DeviceAttributes</key>
            <array>
                <string>UDID</string>
                <string>IMEI</string>
                <string>ICCID</string>
                <string>VERSION</string>
                <string>PRODUCT</string>
            </array>
        </dict>
        <key>PayloadOrganization</key>
        <string>www.yun-bangshou.com</string>
        <key>PayloadDisplayName</key>
        <string>xxx</string>
        <key>PayloadVersion</key>
        <integer>1</integer>
        <key>PayloadUUID</key>
        <string>8C7AD0B8-3900-44DF-A52F-3C4F92921807</string>
        <key>PayloadIdentifier</key>
        <string>com.yun-bangshou.profile-service</string>
        <key>PayloadDescription</key>
        <string>获取当前iOS设备的UDID号码</string>
        <key>PayloadType</key>
        <string>Profile Service</string>
    </dict>
</plist>

2.把文件放到web服务器上

3.引导用户下载文件的链接

4.用户安装后 设备会向http://xxx/app/uuid 发送设备的信息

<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <dict>
    <key>IMEI</key>
    <string>12 123456 123456 7</string>
    <key>PRODUCT</key>
    <string>iPhone4,1</string>
    <key>UDID</key>
    <string>b59769e6c28b73b1195009d4b21cXXXXXXXXXXXX</string>
    <key>VERSION</key>
    <string>9B206</string>
  </dict>
</plist>

但是 这就结束了 不还远远不够 这些都不是安全的

是否安全真正安全获取

答案是否定的,无法识别是否是苹果手机,通过抓包(https://authapi.applekuid.com)发现里边的获取udid的方式 和我们的不一样,里边的数据有4次请求,基本都是加密的,几天都没有研究出来,有兴趣的可以去研究一下!

  • 9
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您可以使用 Python 的网络库,如 `socket` 或 `requests` 库,来获取指定 URL 的 IP 地址。 使用 `socket` 库: ``` import socket def get_ip_address(host): return socket.gethostbyname(host) host = "udid.iosyuan.com" print(get_ip_address(host)) ``` 使用 `requests` 库: ``` import requests def get_ip_address(host): return requests.get("https://" + host).raw._connection.sock.getpeername()[0] host = "udid.iosyuan.com" print(get_ip_address(host)) ``` 上面的代码将会返回该 URL 的 IP 地址。 ### 回答2: 要通过Python获取https://udid.iosyuan.com的真实IP,我们可以使用socket库和requests库来实现。 首先,我们需要使用requests库发送GET请求到https://udid.iosyuan.com,并获取网页的源代码。可以使用以下代码进行请求和获取响应的过程: ```python import requests url = "https://udid.iosyuan.com" response = requests.get(url) source_code = response.text ``` 接下来,我们可以使用正则表达式来提取源代码中的IP地址。由于具体的源代码结构不确定,这里我们只考虑提取合法的IP地址。可以使用以下代码来实现正则表达式匹配: ```python import re ip_pattern = r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}" ip_list = re.findall(ip_pattern, source_code) ``` 最后,我们可以输出提取到的IP地址。完整的代码如下: ```python import requests import re url = "https://udid.iosyuan.com" response = requests.get(url) source_code = response.text ip_pattern = r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}" ip_list = re.findall(ip_pattern, source_code) for ip in ip_list: print(ip) ``` 这样我们就可以使用Python获取https://udid.iosyuan.com的真实IP地址了。注意,由于网页的结构可能会发生变化,以上代码可能需要根据实际情况进行调整。 ### 回答3: 使用Python获取https://udid.iosyuan.com的真实IP地址可以通过以下步骤实现: 1. 首先,需要导入所需的库,包括`requests`和`socket`库。可以使用`pip install requests`和`pip install socket`命令进行安装。 2. 创建一个函数来获取真实IP地址,命名为`get_real_ip()`。 3. 在函数中,使用`requests.get()`函数发送一个GET请求到`https://udid.iosyuan.com`网站。 4. 然后,通过`response.text`属性获取响应的HTML内容。 5. 接下来,使用`socket.getaddrinfo()`函数来解析HTML内容中的主机名,获取其对应的IP地址。 6. 最后,将获取到的IP地址返回给调用函数的部分。 下面是一个示例代码: ```python import requests import socket def get_real_ip(): url = 'https://udid.iosyuan.com' response = requests.get(url) html_content = response.text host_name = html_content.split()[2].split("/")[2] ip = socket.getaddrinfo(host_name, None)[0][4][0] return ip # 调用函数并打印真实IP地址 ip_address = get_real_ip() print("真实IP地址是:" + ip_address) ``` 以上代码通过发送GET请求获取网页内容,并从中解析出IP地址。请注意,`getaddrinfo()`函数可能会返回多个IP地址,我们只需使用第一个即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值