免费人脸识别工具可以跟踪社交媒体网站上的人
2018年8月9日,斯瓦蒂·汗德瓦尔(Swati Khandelwal
image.pngimage.png
社交媒体监控软件Trustwave的安全研究人员发布了新的开源工具,该工具使用面部识别技术在大量社交媒体网络中定位目标。
面部识别工具:Social Mapper,可自动搜索八个社交媒体平台的目标,包括Facebook,Instagram,Twitter,LinkedIn,Google +,俄罗斯社交网站VKontakte,以及中国的微博和豆瓣 - 基于他们的名字和图片。
该工具的创建者声称他们开发了Social Mapper情报收集工具,主要用于帮助渗透测试者和红客进行社会工程攻击。
尽管可以手动执行名称和图片的搜索,但Social Mapper可以更快地自动执行此类扫描,并且可以同时大规模的处理数百或数千人。
“在线进行情报收集是非常耗时的过程,通常首先尝试在各种社交媒体网站上找到的在线状态,”Trustwave在一篇详细介绍该工具的博客文章中解释道。
Social Mapper通过三个阶段运行:
阶段1 - 根据您提供的输入创建目标列表(由名称和图片组成)。该列表可以通过CSV文件中的链接,文件夹中的图像或LinkedIn上注册到公司的人员。
阶段2 自动开始在线搜索社交媒体网站以获得目标。
建议通过良好的互联网连接在夜间运行该工具,因为搜索可能需要超过15个小时才能获得1000个人的列表并使用大量带宽。
阶段3 - 搜索之后,社交映射器的第三阶段开始生成报告,例如包含指向目标列表的配置文件页面的链接的电子表格,或者包含用于快速检查和验证结果的照片的更直观的HTML报告。
Trustwave已经在GitHub上提供了Social Mapper,并且免费提供给所有人。 Social Mapper available on GitHub
Trustwave的Jacob Wilkin本周将在Black Hat USA会议上展示Social Mapper,IBM Research到也会详细介绍其AI驱动的恶意软件 DeepLocker.
image.png实现:Python selenium,代码比较适合练习爬虫
参考资料
- 本文涉及的python测试开发库 请在github上点赞,谢谢!
- 本文相关书籍下载
- 原文地址:https://thehackernews.com/2018/08/social-mapper-osint.html
- 工具github地址
代码示例
比如针对豆瓣的爬虫
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
from pyvirtualdisplay import Display
from time import sleep
import sys
import json
import os
from bs4 import BeautifulSoup
class Doubanfinder(object):
timeout = 10
def __init__(self,showbrowser):
display = Display(visible=0, size=(1600, 1024))
display.start()
if not showbrowser:
os.environ['MOZ_HEADLESS'] = '1'
self.driver = webdriver.Firefox()
self.driver.delete_all_cookies()
def doLogin(self,username,password):
self.driver.get("https://www.douban.com/login")
self.driver.execute_script('localStorage.clear();')
if(self.driver.title.encode('utf8','replace').startswith("登录")):
print "\n[+] Douban Login Page loaded successfully [+]"
wbUsername = self.driver.find_element_by_id("email")
wbUsername.send_keys(username)
wbPassword = self.driver.find_element_by_id("password")
wbPassword.send_keys(password)
#self.driver.find_element_by_id("login_button").click()
#self.driver.find_element_by_css_selector('a.submitBtn').click()
self.driver.find_element_by_css_selector('input[type=\'submit\']').click()
sleep(5)
if(self.driver.title.encode('utf8','replace').startswith("豆") == False):
print "[+] Douban Login Success [+]\n"
else:
print "[-] Douban Login Failed [-]\n"
def getDoubanProfiles(self,first_name,last_name):
#try:
url = "https://www.douban.com/search?cat=1005&q=" + first_name + "+" + last_name
self.driver.get(url)
sleep(3)
searchresponse = self.driver.page_source.encode('utf-8')
soupParser = BeautifulSoup(searchresponse, 'html.parser')
picturelist = []
for element in soupParser.find_all('div', {'class': 'pic'}):
try:
badlink = element.find('a')['href']
link = badlink.split('?url=', 1)[1].split('&query', 1)[0].replace("%3A",":").replace("%2F","/")
badprofilepiclinksmall = element.find('img')['src']
profilepic = badprofilepiclinksmall.replace("/icon/u","/icon/ul")
picturelist.append([link,profilepic,1.0])
except Exception as e:
print "Error"
print e
continue
return picturelist
#except Exception as e:
# picturelist = []
# print "Error"
# print e
# return picturelist
def kill(self):
self.driver.quit()