使用Python实现指定Twitter用户Followers收集

介绍

许多企业并没有意识到他们的很多数据暴露在公网可能被黑客收集并利用。你可以通过不同的地方收集到这些信息。这些信息通常包括IP范围、域名、电子邮件、公共财务数据,组织信息、使用的技术框架,雇员职称,电话、用户名等。
被动收集阶段的主要目标就是尽可能多的收集可操作的数据,同时不留下任何痕迹。被动信息收集需要耐心和时间,针对目标踩点,需要不断地查找翻看网页,频繁使用Google 语法和Google map。

在文章中,假设我们正在对一个网银系统进行渗透测试,需要一个有效的账号密码。如果是你一名黑客,你会怎么做?

对我而言!首先,快速写个脚本生成一个简单的用户字典。接下来,查看目标站点的密码策略(限定密码成都,特殊字符等)。并在此基础上,合成我的密码字典。最后,自动化执行爆破变得到正确账号密码,又或者是多次爆破失败后被封锁ip。

很多用户的银行账号名和他们的社交媒体(Facebook、Twitter等)账号名相同。我写了一个python小脚本。攻击者可以用这个脚本重公网信息中收集 XYZ银行的Twitter粉丝。在我写这篇文章的时候,XYZ银行大约有24027名Twitter粉丝。

开始进入主题吧!

创建你的字典文件

Twitter和大多数的社交媒体一样,都有自己的API(Application Programming Interface),程序员自己写代码,利用API从Twitter中获取信息。我比较python比较熟悉,编程实现不难。工作的第一步,注册Twitter开发人员账号,获取开发人员ID和相应的KEY。然后在脚本中使用KEY。注册流程如下:

101116_0040_intelligenc1

101116_0040_intelligenc2

101116_0040_intelligenc3

Tweepy, python 第三方库,用来解析Twitter数据

Tweepy 安装方法如下:

hkhrais@Hkhrais:~$ sudo apt-get install python-pip
hkhrais@Hkhrais:~$ sudo pip install tweepy

脚本代码:

qq%e6%88%aa%e5%9b%be20161012182702

代码比较容易理解,通过函数验证我的开发人员KEY,“OauthHandle”函数验证通过后,即可通过API函数请求目标Twitter的粉丝信息,将其保存在“USER”变量中。

Twitter的开发说明书限定了单个程序请求次数,为了防止出现访问异常,设置线程等待时间为15分钟。

Execution Output

hkhrais@Hkhrais:~/Desktop/Tweets$ sudo python Twitter.py

[sudo] password for hkhrais:

We successfully logged in

We got a timeout … Sleeping for 15 minutes

We got a timeout … Sleeping for 15 minutes

We got a timeout … Sleeping for 15 minutes

We got a timeout … Sleeping for 15 minutes

…

We got a timeout … Sleeping for 15 minutes

Traceback (most recent call last):

File “Twitter.py”, line 31, in <module>

u = next(user)

File “/usr/local/lib/python2.7/dist-packages/tweepy/cursor.py”, line 181, in next

self.current_page = self.page_iterator.next()

File “/usr/local/lib/python2.7/dist-packages/tweepy/cursor.py”, line 64, in next

raise StopIteration

StopIteration

hkhrais@Hkhrais:~/Desktop/Tweets$

注意,最后一个异常表明工作完成,这意味着我们已经抓住了目标Twitter账号的全部粉丝名:)

最终结果如下:

101116_0040_intelligenc4

总结

情报收集需要仔细规划和研究,但最重要的是攻击者的能力。利用这段Python小脚本(约25行),我们可以收集@XYZbankgroup的24027名粉丝的户名来制作用户名字典。当目标用户不是英语用户名时,使用这个小脚本收集用户名就相当方便有效。

参考

  • Twitter API https://dev.twitter.com/docs/twitter-libraries
  • Tweepy library https://pypi.python.org/pypi/tweepy/

 

*原文:infosecinstitute  Mottoin翻译发布

原创文章,作者:Tank,如若转载,请注明出处:http://www.mottoin.com/article/web/90327.html

发表评论

登录后才能评论

联系我们

021-62666911

在线咨询:点击这里给我发消息

邮件:root@mottoin.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code