数据剖析与可视化:谁是安全圈的吃鸡第一人

放假和小伙伴们打了几把PUBG,大半年没碰,竟然也意外地躺着吃了次鸡。吃鸡这个游戏公然得4个知道的人打(dai)战(dai)术(wo)才更风趣。 因为身边搞安全的人比较多,之前也会和一些安全圈的大佬一...

放假和小伙伴们打了几把PUBG,大半年没碰,竟然也意外地躺着吃了次鸡。吃鸡这个游戏公然得4个知道的人打(dai)战(dai)术(wo)才更风趣。
因为身边搞安全的人比较多,之前也会和一些安全圈的大佬一同玩,常常会有些知道或不知道的黑阔大佬开着高科技带着躺鸡。当然笔者也曾羞耻地开过挂带妹(留念号被封的第193天)。
那么这些黑阔大佬们,在不开挂的情况下,谁会是他们之中技能最好的呢?带着这样的疑问,试着从数据剖析的视点来看看谁会是安全圈的吃鸡第一人。
注:全文所指的“安全圈”是一个十分狭义的概念,在本文中仅掩盖到小部分安全从业者玩家,所以标题有些夸张。如有其他过错也欢迎指出。
0×01 数据搜集
怎样才干知道哪些安全从业者在玩这个游戏,他们的ID又是什么呢?
在一些APP里能够查到玩家的战绩,其间比较有价值的是,还能看到每位玩家的老友列表。
那么能够有这么个思路,也便是一个广度优先遍历:
1.确认一个初始的ID链表,并确保初始链表内都是安全圈内人士。
2.遍历初始链表内每一位玩家的一切老友。
3.当链表内H的老友J,一起也是链表内别的两位黑客的一起老友,那么以为J也是安全圈内人士,加入到链表尾处。
4.向后迭代重复2、3。
着手完结
发现走的是https,挂上证书以MITM的方法来监听https流量:

能够发现数据是以json格局传递的,写个python脚本来主动完结获取数据,单线程+限速(一方面不至于给别人家的api爬挂了另一方面也不至于触发IDS、anti-CC等机制)。
脚本首要代码是:
def r_get(nickname,offset):
#发送给api的request
...
    return json#回来一个json格局
def get_friends(nickname):
    offset  = 0
    res_js = r_get(nickname,str(offset))
    temp_friends = res_js['result']['board']
    if res_js['status'] == "ok":
        while len(res_js['result']['board']) == 30:
            offset = offset + 30
            res_js = r_get(nickname,str(offset))
            temp_friends = temp_friends + res_js['result']['board']
        print("   {0}   的老友人数    {1}".format(res_js['result']['user_rank']['nickname'], len(temp_friends) -1 ))
        friends = []
        Wxname  = ""
        Wxsex = ""
        Wxavatar  = ""
        sql = ""
        for playerinfo in temp_friends:
            if playerinfo['nickname'] != res_js['result']['user_rank']['nickname']:
                friends.append(playerinfo['nickname'])
            elif playerinfo.has_key('heybox_info') == True:
                Wxname = playerinfo['heybox_info']['username']
                Wxsex = playerinfo['heybox_info']['sex']
                Wxavatar = playerinfo['heybox_info']['avartar']
        friends_s = ','.join(friends)
        sql = "INSERT INTO player (nickname,avatar,steamID,friends,Wxname,Wxsex,Wxavatar)
              VALUES ('{0}','{1}','{2}','{3}','{4}','{5}','{6}')".format(res_js['result']['user_rank']['nickname'],res_js['result']['user_rank']['avatar'], res_js['result']['user_rank']['steam_id'],friends_s,Wxname,Wxsex,Wxavatar)
        return friends,sql     
    else:
        print("获取{0}的老友人数失利, 回来{1}".format(res_js['result']['user_rank']['nickname'],res_js['msg']))
        return 1
def record_rds(sql):
    #db操作
def main():
   ...
笔者先确认一份初始安全圈列表,包含“Rickyhao”、“RicterZ”、“r3dr41n”、“PwnDog”等。这些人或是在bat、360等公司从事安全相关作业,或是笔者信安专业的同学,或ID显着带有安全的特征(PwnDog),总归都是比较坚信的安全圈人士。
以这些人为初始列表,很快就有几位玩家被划定为安全圈人士。

[1] [2] [3] [4] [5]  黑客接单网

  • 发表于 2021-04-09 12:34
  • 阅读 ( 231 )
  • 分类:互联网

0 条评论

请先 登录 后评论
w小钢炮
w小钢炮

687 篇文章

你可能感兴趣的文章

相关问题