前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >如何通过Python实现自动填写调查问卷

如何通过Python实现自动填写调查问卷

作者头像
FB客服
发布于 2018-03-01 07:09:25
发布于 2018-03-01 07:09:25
3.8K0
举报
文章被收录于专栏:FreeBufFreeBuf

0X00 前言的,我才想起来貌似我也还没做。对于这种无意义的问卷,我是不怎么感冒的,所以我打算使用”特技”来完成,也就是python,顺便重新复习一下python,真的好久没用了。下面,表演开始……

0X01代码编写思路

首先先创建一份问卷

我们随便填写一个问卷并提交,在提交之前开启Burpsuite截获数据包

对于截获的数据包进行分析,有的被url编码了不利于分析,可以使用Burpsuite编码模块解码替换,这样就好分析了

通过观察可以发现,post了一串奇怪的数据submitdata=13}34}52}72}93。仔细分析可看出数据大概是这个意思submitdata=题号选项号}题号$选项号}……..

利用这些信息就可以开始编写python程序了

运行结果如下

貌似网站还有其他反爬虫机制,在连续提交几个表单之后,就出现了验证码。难道此时我们还要给程序添加上识别验证码的功能?其实不必,我们可以先分析一下刚刚Burpsuite截获的header信息,来看看到底网站是通过什么方式,识别出我们是用爬虫来提交问卷的。

通过一番测试,我发现当我连续提交3份问卷,再换一个IP提交3个问卷,也就是连续提交了6份问卷,并没有触发网站的反爬虫机制。所以我们可以猜测对方基于IP提交问卷的频率来识别爬虫程序的。看到这里,大家可能会想,我们可以通过网上的免费代理来提交问卷。例如这些

那是不是意味着我们还要往python代码中添加提取免费代理IP的功能呢?NO NO NO!换个思路,在CTF比赛中会遇到一种题目,例如你的IP是来自德国的才可以拿到flag。所以,我们的思路就是进行数据包头欺骗,伪造我们的IP,骗过服务器。下面来说说伪造IP的几种方式。

这里我们发现用X-Forwarded-For可以绕过,按我们就用这种方法在header信息中添加X-Forwarded-For字段,所以修改后的脚本如下

运行结果如下

再到后台看看统计信息

至此,我们算是完美的解决任务了。如果大家想去掉调查问卷中国外的IP地址,可以收集一下中国的IP地址段,然后添加进程序,处理一下即可。

0X02总结

大家平常可以把学到的东西用到实际生活中,遇到困难的时候不要慌,多思考,找到最优的解决方法。例如上面,我并没有在代码中添加验证码识别模块,也没有通过走代理的方式来绕过网站的反爬虫机制,而是通过分析网站的反爬虫机制,并且使用所学的安全知识(HTTP头欺骗)轻松解决问题,使用最短的代码完美完成任务。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-09-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
渗透测试之攻破登录页面
登陆界面最直接的就是密码爆破,上面说的那些漏洞我也说了,很难遇到!而对于爆破最重要的不是用的哪个工具,而是字典好不好,这里用的bp!
故里[TRUE]
2023/04/19
2.1K0
渗透测试之攻破登录页面
王老板Python面试(9):整理的最全 python常见面试题(基本必考)
1)迭代器是一个更抽象的概念,任何对象,如果它的类有next方法和iter方法返回自己本身。对于string、list、dict、tuple等这类容器对象,使用for循环遍历是很方便的。在后台for语句对容器对象调用iter()函数,iter()是python的内置函数。iter()会返回一个定义了next()方法的迭代器对象,它在容器中逐个访问容器内元素,next()也是python的内置函数。在没有后续元素时,next()会抛出一个StopIteration异常
Python之道
2018/08/02
1.7K0
王老板Python面试(9):整理的最全 python常见面试题(基本必考)
反爬虫和反反爬虫(上篇)
公众号爬取今日头条的那一期,不少小伙伴反应爬取下来的图片无法查看或者爬取不了,小詹也重新试了下,的确是的,写那篇推文的时候,头条还比较友好,没有添加反爬措施,大概是爬取的朋友太多,对其造成了极大的压力吧,添加了某些反爬技术,然而,上有政策,下有对策,粉丝群有小伙伴改写了程序并添加了反反爬策略进行了妹子的爬取~
小小詹同学
2018/07/24
3.6K0
反爬虫和反反爬虫(上篇)
Scrapy爬虫模拟登陆参考demo
对于一些刚入行爬虫的小伙伴来说,刚开始的时候觉得所有的网站无非就是分析HTML、json数据,很容易忽忽略掉一个很重要的问题,那就是目标网站的反爬虫策略,很多目标网站为了反爬虫经常更新反爬策略,我们想要拿到数据,就需要针对它们的反爬虫来制定绕过方法,比如它识别你的UserAgent,那你可能就需要伪造、它限制IP请求次数,你可能就需要限速或者改变ip、它用验证码来识别你是人是机,你就需要模拟人的操作并且正确填写它给你弹出的验证码等等。
小白学大数据
2023/06/20
2800
Python常见的反爬手段和反反爬虫方法
这里要切记,人力成本也是资源,而且比机器更重要。因为,根据摩尔定律,机器越来越便宜。而根据IT行业的发展趋势,程序员工资越来越贵。因此,通常服务器反爬就是让爬虫工程师加班才是王道,机器成本并不是特别值钱。
北山啦
2022/11/27
1.1K0
还在被爬虫薅?你的网站该反爬了
随着大数据时代的来临,无论是个人还是企业,对于数据的需求都越来越大。这种需求也催生了如今异常热门的数据产业,也催生了日益完善的网络数据采集技术。
州的先生
2020/05/12
1.8K1
SRC低危捡漏之短信轰炸
本文属于OneTS安全团队成员Asoul的原创文章,转载请声明出处!本文章仅用于学习交流使用,因利用此文信息而造成的任何直接或间接的后果及损失,均由使用者本人负责,OneTS安全团队及文章作者不为此承担任何责任。
OneTS安全团队
2025/02/07
1650
SRC低危捡漏之短信轰炸
python爬虫总是爬不到数据,你需要解决反爬虫了
爬虫最讨厌的就是反爬虫,但是如果没有反爬虫的存在的,那么大家都可以随随便便就进行网络爬虫,那么服务器又怎么支撑得起来呢?那么又怎么彰显我们的能力呢?
全栈程序员站长
2022/07/08
1.5K0
干货|普通反爬虫机制的应对策略
爬虫与反爬虫,这相爱相杀的一对,简直可以写出一部壮观的斗争史。而在大数据时代,数据就是金钱,很多企业都为自己的网站运用了反爬虫机制,防止网页上的数据被爬虫爬走。然而,如果反爬机制过于严格,可能会误伤到
灯塔大数据
2018/04/08
1.8K0
干货|普通反爬虫机制的应对策略
运用phantomjs无头浏览器破解四种反爬虫技术
在与反爬虫的对抗中,我们爬虫的大招有两个,其一是多种ip跟换方式(例如adsl|代理|tor等请参看之前的文章)。其二是无头浏览器,使用自动化的技术来进行自动数据抓取,模拟鼠标与键盘事件,可以用于破解验证码,js解析,诡异的模糊数据这类型的反爬虫技术
十四君
2019/11/27
1.9K0
如何绕过CloudFlare的Bot保护机制
几个月前,我向CloudFlare的漏洞奖励计划提交了一个貌似漏洞的东西。但根据他们的说法,我提交的并不算是一个安全问题,并表示对我“不予理睬”!
FB客服
2021/04/16
7.4K0
如何绕过CloudFlare的Bot保护机制
记录一次利用业务设计漏洞的精彩实战测试
上次的那篇文章《一名代码审计新手的实战经历与感悟》得到了不少读者的支持,也得到了FreeBuf这个平台的肯定,这给了我这个菜的不能再菜的小菜鸟很大的信心。但是,不足之处还是很多,比如文章中出现的技术写得不够深入等等(这毕竟和个人实力挂钩的)因此,我决定尽我所能,尽量的写深入一点,每次写文章都深入一点,总有一天会深到很深的点。
FB客服
2018/07/30
7340
记录一次利用业务设计漏洞的精彩实战测试
那些年我们“投(shua)”过的票(续)
*本文原创作者:西毒若相惜,本文属FreeBuf原创奖励计划,未经许可禁止转载 前言 看到上一篇别人写的投(shua)过的票,感觉狗熊所见略同。 上篇的博主好像就死磕一个网站,使出了浑身解数与其进行对抗,最终胜利。这里我写一篇续集,来帮大家梳理一下几乎所有的刷票类型。(刷票,刷粉,刷赞等异曲同工) 刷票难度从简到难,循序渐进。 一,无任何限制,简单到爆炸 毫无悬念,最简单的一种刷票,是个人都会 直接点击投票按钮即可投票,无任何限制,小白就鼠标不停点击投票即可,相关从业人员可以程序实现。 url='http:
FB客服
2018/02/09
1.2K0
那些年我们“投(shua)”过的票(续)
爬虫入门指南(6):反爬虫与高级技巧:IP代理、User-Agent伪装、Cookie绕过登录验证及验证码识别工具
寻找可用的IP代理:我们可以在互联网上寻找免费或付费的IP代理服务提供商,选择合适的代理服务器地址和端口号。
全栈若城
2024/02/29
6740
爬虫入门指南(6):反爬虫与高级技巧:IP代理、User-Agent伪装、Cookie绕过登录验证及验证码识别工具
京某东面试题
SQL注入的发现主要靠手工测试和自动化工具。手工测试主要通过输入不同类型的恶意数据在页面的输入框中,观察页面返回的结果来判断是否存在SQL注入漏洞。自动化工具如sqlmap可以模拟手工测试,自动发现SQL注入点。
疯狂的KK
2023/05/10
8900
京某东面试题
爬虫抓取技术
杉枫
2018/01/03
1.3K0
Referer头部在网站反爬虫技术中的运用
网站数据的安全性和完整性至关重要。爬虫技术,虽然在数据收集和分析中发挥着重要作用,但也给网站管理员带来了挑战。为了保护网站数据不被恶意爬取,反爬虫技术应运而生。本文将探讨HTTP头部中的Referer字段在反爬虫技术中的应用,并提供一个包含代理信息的实现代码示例。
小白学大数据
2024/12/12
1240
BurpSuite的简单使用
burpsuite默认设置了代理 127.0.0.1:8080如果端口冲突可以修改成其他的。注: 浏览器中配置代理时,端口必须 burpsuite配置中的一样。
安恒网络空间安全讲武堂
2019/09/27
3.5K0
使用Python和BeautifulSoup进行网页爬虫与数据采集
在互联网时代,数据是最宝贵的资源之一,而获取数据的能力则是数据分析、人工智能等领域的基础技能。本文将深入探讨如何使用Python和BeautifulSoup库进行网页爬虫与数据采集。我们将从基本概念入手,逐步展示如何搭建一个简单而功能强大的网页爬虫,并通过具体的代码实例引导您完成数据采集任务。
一键难忘
2024/10/14
8640
python爬虫技术——小白入门篇
学习Python爬虫技术可以分为以下几个关键步骤和方法,并结合实际案例帮助你理解和应用:
知孤云出岫
2024/11/07
6350
python爬虫技术——小白入门篇
推荐阅读
相关推荐
渗透测试之攻破登录页面
更多 >
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文