搜索此博客

2020年1月17日星期五

[原]网络发现扫描的基础知识

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
[原]网络发现扫描的基础知识  阅读原文»

0x00 网络发现技术 网络发现扫描使用多种技术对一系列 E 地址进行扫描, 搜索配有开放网络端 口 的系统。网络发现扫描器实际上不能探测系统的漏洞, 只是提供一份网络检测 的系统显示报告和一份端 口清单, 这份清单通过网络和服务器防火墙公开了隐藏在扫描器和扫描系统之间网络路径中的端 口 。 0x01 常见类型 TCP SYN 扫描 向每个被扫描的端 口 发送带有 SYN 标志设置的单个数据...

作者:qq_29277155 发表于 2020/01/17 16:53:27 原文链接 [sourcelinkurl]
阅读:7

黑客技术官网地址:http://www.hackdig.com/

仿冒"百度、微信"应用的风险提示  阅读原文»

导读:随着移动互联网的快速发展,用户可以"随时、随地、随心"地享受互联网业务带来的便捷,不管是工作、娱乐、生活、购物等方方方面都在使用着各种APP,既省时又省力的为我们提供很多方便。但是,互联网诈骗、虚假仿冒、勒索无处、"杀猪盘"等网络安全威胁无处不在,用户在享受APP给大家带来便利之时,也要时刻注意我们的个人隐私、财产是否受到安全威胁。

近期,暗影实验室发现两款程序名称叫"微信"、"百度"的应用程序,研究员深入分析后,发现这两款并不是官方应用,而是伪装微信、百度图标,诱骗用户下载,启动后私自下载其他恶意程序,采用"热补丁"的方式,频繁加载恶意子包,实现模拟点击广告、订阅服务等恶意行为,在此,暗影实验室提醒广大网民,从正规官方渠道下载正版应用,虚假仿冒APP会通过网盘、论坛、QQ群等渠道推广,诱骗用户下载,其中一些仿冒APP会挂有木马程序,安装运行后会对用户的个人信息、财产造成严重的危害,安装图标如下。

一、基本信息:

表1-1样本基本信息

序号 应用安装名称 MD5 版本号
1 微信 CF4F0067612E7FADEB46141D953B449F 2.2.0
2 百度 EFEFF228CDD622A1B1B93ADD63442456 6.9

二、仿冒应用分析

(1)仿冒"百度"应用

该应用主要通过从assets目录下加载恶意执行代码,下载安装其它应用。

应用运行界面:

图2.1应用安装界面

代码结构对比:该应用将自己代码主要集成在主类下。

图2.2代码结构对比

清单文件对比:与正版应用相比该应用注册了很多广播。

图2.3清单文件对比

加载执行assets目录下代码,执行完成删除代码文件。

图2.4加载恶意代码

接收网络连接变化广播。下载apk文件。

图2.5下载apk文件

发送安装通知,点击通知即安装apk包。

图2.6安装apk包

安装完成,启动应用。

图2.7启动应用

(2)仿冒"微信"应用

该应用通过不断从服务器获取恶意子包来更新DEX文件,加载其它恶意代码,主要实现模拟点击广告、服务。

加载DEX文件结构。

图3.1 DEX文件结构

应用运行界面如下:应用开始提示检查更新,之后便以请求网络失败为由退出应用并隐藏图标。

图3.2应用运行界面

所有的操作主要集成在以下几个服务中。

图3.3主体服务

从服务器请求获取任务。并保存在本地数据库中。

图3.4请求任务

在本地创建数据库,将从服务器获取的任务信息保存到数据库中。

图3.5将任务信息保存到数据库中

从数据库中获取任务信息。

图3.6从数据库中获取任务信息

模拟点击完成任务。

图3.7模拟点的任务

从服务器获取恶意子包不断更新当前dex文件并加载执行其它恶意代码。

图3.8更新恶意子包

加载其它恶意代码可能会执行窃取用户隐私数据等其它恶意操作,模拟点击订阅付费服务,将会造成用户财产的损失。

三、扩展分析

通过暗影实验室的"APP全景态势与案件情报溯源挖掘系统"发现平台上还存在大量的仿冒类恶意程序,如下表所示:

表3-1扩展样本

四、安全建议

(1)当应用请求开启设备管理器时,一定要谨慎。该权限的开启可以修改锁屏密码、恢复出厂设置。

(2)手机被锁屏可以通过删除设备中/data/data/包名、/daa/app/包名两个文件夹,然后重启即可解锁。

(3)坚持去正规应用商店下载软件,避免从论坛等下载软件,可以有效的减少该类病毒的侵害。关注"暗影实验室"公众号,获取最新实时移动安全状态,避免给您造成损失和危害。

(4)安装好杀毒软件,能有效的识别已知的病毒。

*本文作者:暗影安全实验室,转载请注明来自FreeBuf.COM


黑客技术官网地址:http://www.hackdig.com/

阅读更多内容

2018年1月7日星期日

印度全民个人信息遭泄漏 售价不足6英镑!

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
印度全民个人信息遭泄漏 售价不足6英镑!  阅读原文»

近日,根据印度《论坛报》(Tribune)进行的调查显示,超过10亿印度公民的个人资料(包括指纹和虹膜等生物识别信息)正在在线出售,售价不足6英镑。

据悉,这些数据是存储在世界上最大的国营生物识别数据库――Aadhaar中,该数据库除了收集印度公民的基本信息(名字、照片等)外,还存有被记录者的指纹、虹膜及其他生物识别信息。

此外,《论坛报》还指出,同时在线出售的还有可用于生成虚假Aadhaar卡的软件,该卡片是获得日益增加的政府服务(包括免费用餐等)所需的身份证明文件。

然而,运行Aadhar系统的印度唯一身份识别管理局(UIDAI)却表示,《论坛报》只是通过提供给政府官员的搜索功能访问到了有限的细节。

UIDAI声称,会对那些出售登录许可的人员进行调查,并对非法使用该系统的人提出指控。但是,该机构却坚称公民的指纹和虹膜等生物识别信息并未被非法访问到。

该机构在一份声明中表示,"在没有生物识别信息的情况下,人口统计的基本信息不会被滥用。例如,如果没有用户的指纹和虹膜等生物信息,相关机构(如银行、政府服务)是不会进行授权操作的,因此,相关的身份欺诈风险也就不存在了。"

声明还继续补充道,"此外,关于绕过和破解Aadhaar登录系统的说法是完全没有根据的,Aadhaar数据是完好无损的,并且具有强大的、不妥协的安全性。"

但是,《论坛报》却声称,一位匿名人士正在通过WhatsApp社交软件,以500卢比(约合5.80英镑)的价格出售能够访问Aadhaar数据库的登录许可,并可据此获得印度公民的个人信息,如姓名、家庭住址、电子邮件地址、照片以及电话号码等。

《论坛报》称自己已经通过这位匿名用户购买到了登录许可,并成功访问到了数据,此外,同时出售的软件也能够帮助用户打印出虚假的Aadhaar卡。

不过,《论坛报》的报道还没有得到任何其他出版物的证实。

其实,这并不是Aadhaar第一次陷入这种争端。2017年11月,印度唯一身份认证管理局(UIDAI)就曾证实称,Aadhaar发生了数据泄漏事件,导致超过210个政府网站上公开暴露了Aadhaar用户的详细信息,其中包括用户的姓名、家庭住址、Aadhaar 号码、指纹与虹膜扫描以及其他敏感个人信息等。对于此次数据泄漏事件,UIDAI表示完全属于无意行为,且已经在发现违规行为后的第一时间对数据进行了删除。

印度政府认为,Aadhaar项目将帮助把大量的印度公民纳入数字经济之中,会对印度的社会发展产生广泛的意义。所以,为了推进这个项目,印度政府早已下令强制该国公民必须在2017年12月31日之前将Aadhaar号码与自己的银行账户、手机号码、保险账户、永久性账号卡(PAN Card)以及其他服务绑定起来。但是批评者却认为,该系统的好处被夸大了,并正在面临不断增长的安全风险。

相关阅读

一次数据泄露 两位部长下台

我们可以从历史上最重大的数据泄露事件中学到什么?

威瑞森数据泄露调查报告10周年:安全事件的进化与趋势

作者:Jasmine

 


黑客技术官网地址:http://www.hackdig.com/

攻击者试图远程利用CPU内核漏洞:英特尔、AMD和ARM均受影响  阅读原文»

1月3日,安全研究人员披露了两个安全漏洞――"Meltdown"(熔断)"Spectre"(幽灵)的细节信息。据悉,这是两种针对CPU的新型攻击方式。这两个漏洞存在于英特尔、AMD和ARM架构的芯片之中,可以被攻击者用于绕过内存隔离机制、访问敏感数据,包括密码、照片、文档以及电子邮件信息等。

安全研究人员认为,用不了多久这两个漏洞就会被恶意行为者用于攻击(如果他们尚未利用这些漏洞实施攻击的话)。

据悉,受影响的芯片已经运用于数十亿种产品之中,其中包括个人电脑以及智能手机等。此外,研究人员还指出,攻击者也能够利用这些漏洞针对云环境发起攻击。

针对这些攻击的最佳保护措施是使用内核页面隔离(KPTI),此外,受影响的供应商也已经开始发布安全补丁和解决方案来应对该安全问题。

研究人员表示,虽然主要的攻击媒介是通过本地访问(例如目标机器上安装的一个恶意软件),但是通过JavaScript的远程攻击也是能够实现的,尤其是对"Spectre"漏洞的利用。

研究人员已经为Google Chrome开发了一个概念验证(PoC)代码,该PoC代码使用JavaScript来利用"Spectre"漏洞,并从其运行程序中读取私有内存信息。

对此,Mozilla也已经进行了内部测试,并确定这些技术可以被用来"从Web内容中读取不同来源之间的私人信息"。虽然目前针对该问题仍在调查之中,但是该组织决定在Firefox 57版本中实施一些部分保护。

Google指出,攻击可能会同时通过JavaScript和WebAssembly进行。该公司通知客户称,目前版本的Chrome中包含一个名为"站点隔离"的功能,用户可以通过手动启用该功能来防止攻击。而预计于1月23日发布的Chrome 64版本将在V8 JavaScript引擎中加入缓解措施。其他的强化措施预计将在未来发布的新版本中实现,但是该科技巨头也警告称,加入缓解措施后的新版本可能会对计算机性能造成负面影响。

此外,微软方面也已经证实,攻击者可以通过在浏览器中运行的JavaScript代码来启动攻击。对此,该公司已经发布了针对Edge和Internet Explorer网页浏览器的更新程序,以缓解这些漏洞造成的影响。

由于JavaScript 的PoC代码可用,所以安全专家认为,恶意行为者开始远程利用这些漏洞只是时间问题。虽然有专家认为,国家支持的攻击者最有可能会利用这些漏洞发起攻击,但是也有专家指出,大规模地利用这些漏洞也是有可能的,尤其是通过网站提供的广告实现传播。

这就是专家建议用户在浏览器中禁用JavaScript,并安装广告拦截器的原因所在。

Varonis的安全工程师Mike Buckbee指出,虽然通过浏览器的漏洞利用可能不会使攻击者获取访问文件的权限,但是他们仍然可能会在内存中找到有价值的数据,包括SSH密钥、安全令牌以及密码等。

尽管受影响的供应商表示,没有证据表明"Spectre"和"Meltdown"漏洞在披露之前已经被恶意行为者利用,但是发现这些漏洞的研究人员却警告说,这些攻击是非常不易察觉的,所以究竟漏洞是否已被恶意滥用仍未可知。

研究人员杰克・威廉姆斯(Jake Williams)表示,"对于大多数民族国家在Spectre 和Meltdown漏洞披露之前就已经掌握了这些漏洞信息的假设是合理的。所以,如果他们还没有使用这些武器发起攻击,那么相信用不了多久就会出现运用这些漏洞的在野攻击案例。"

FireEye亚太区首席技术官Bryce Boland对此说法也表示赞同。他说,"国家支持的黑客通常会使用这类漏洞来开发新的攻击工具,对于此次发现的漏洞这种情况是最有可能的。"

Cybereason公司首席安全官Sam Curry也认为,技术精湛的恶意行为者很有可能会在不久的将来利用这些漏洞发起攻击,前提是他们之前还没有这样做的话。

这还不是世界末日,但一定会催化更为紧张的局势。如果说已经有民族国家开始利用这些漏洞,或是任何攻击/研究进一步催化了这种威胁,使其在2018年成为更加明确和现实的风险,对此不要感到惊讶!

相关阅读

英特尔CPU曝漏洞 可被利用绕过ASLR

英特尔CPU曝重大设计缺陷:Linux、Windows需修改内核

英特尔CPU控制机制存在隐秘开关 可被黑客利用成为后门

作者:Jasmine

 


黑客技术官网地址:http://www.hackdig.com/

阅读更多内容

2018年1月6日星期六

批量挖SRC漏洞的一种打开方式

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
批量挖SRC漏洞的一种打开方式  阅读原文»

*本文原创作者:Aderduo,本文属FreeBuf原创奖励计划,未经许可禁止转载

混迹在各大SRC平台的白帽子手里都握着很多法宝,或私藏或公开。而给大家介绍下基于cms的漏洞扫描,如何挖漏洞。

一、绪论

1.1 首先获取补天厂商名单,这里保存在d:/butian.txt。你也可以放入各大src的域名

1.2 本cms是基于知道创宇的pocbuite二次开发。漏洞扫描器主要是扫描平台的整体框架设计,而真正需要耗时和长期维护的便是poc的编写与扩充。这里,重点在于poc的编写与扩充。

1.3 编写poc并批量扫描网站,将存在漏洞网站提交漏洞给相应厂商

图片.png 

二、系统设计

2.1  系统体系结构设计

本系统是基于CMS的漏洞扫描工具,确切来说是使用python作为脚本语言,使用PoC 编写的 SDK,自动化的调用测试,将payload按照一定格式写成py文件,并注册为类,为工具调用。支持验证与利用两种插件模式,你可以指定单个目标或者从文件导入多个目标,使用单个 PoC 或者 PoC 集合进行漏洞的验证或利用。可以使用命令行模式进行调用,也支持类似 Metaspolit 的交互模式进行处理,除此之外,还包含了一些基本的如输出结果报告等功能。本文采用pocsuite这一poc开发框架,主要使用乌云作为漏洞获取平台,在实际批量扫描的过程中用多线程、锁、队列来实现,扫描结果直接写入doc文件,在采集漏洞信息编写payload文件要选择尽可能详细的内容,包括漏洞名称,漏洞编号,漏洞来源,漏洞发布时间,漏洞厂商,漏洞CMS类型,漏洞版本,漏洞编写人,漏洞编写时间,漏洞详情,漏洞修复方案,漏洞类型,漏洞原理等等。这样方便以后对此漏洞的查阅修改以及漏洞结果更为自动人性化输出。本系统运行流程图,如图 2-1所示:

图片.png 
图 2-1 系统运行流程图

2.2  详细功能模块设计

2.2.1  基础扫描框架功能设计

本系统采用pocsuite作为poc开发框架,在此基础上修改代码使更适合本系统设计目标,并编写漏洞payload文件使增加丰富系统漏洞扫描,即可执行命令启动程序运行。这边对他进行改动如下:

(1)payload文件格式,增加漏洞修复、漏洞描述、漏洞等级等内容。

(2)漏洞结果生成。这边改动为,生成随机文件夹里面每个url每个payload文件生成一个doc文件,文件名格式[网站域名].doc,文件内容使用python的库docx来生成doc格式的文件。

2.2.2  漏洞类型功能设计

CMS漏洞类型较多,常见的有:命令执行,SQL注入,XSS攻击,逻辑漏洞,越权操作,文件上传,文件读取等等。这些漏洞类型又可以继续往下细分。在实际编写时,要根据具体情况,编写payload文件,不是每种漏洞都可以编写payload文件进行批量扫描。需要在CMS漏洞类型的确认上下功夫,接下来会拿SQL注入和XSS来做分析。

1.SQL注入漏洞

包括布尔型注入,报错型注入,可联合查询注入,可多语句查询注入,基于时间延迟注入五种,其中布尔型注入在编写POC的时候是不能编写到工具中的。我们判断是否存在注入只能通过构造特殊语句发送请求,返回页面是否正常。正常页面和错误页面的不同因网站源码设计而不同,无法写出通用规则。基于时间延迟注入编写出的POC是基于两个不同的请求判断响应时间,如果第一个请求<=1秒,第二个请求>=5秒,算漏洞存在[10]。由于网络原因请求时间会有延迟,导致恰好满足漏洞存在条件批量扫描时候显示漏洞存在,实则属于误报。这样每次批量扫描之后还需要手工验证漏洞是否存在,那么这种漏洞就没必要加进来。所以,在选择SQL注入的时候,避开这两种类型。规范如图 3-2 所示:

图片.png 
图3-2 编写SQL注入POC流程图

2.XSS攻击

如果网站仅仅能弹出框,并不能在页面源码上造成可识别的影响,我们在编写利用脚本的时候无法准确判断是否存在漏洞。除非对网页造成影响,通过一些唯一特定,可以确定就是这种CMS类型。比如DEDECMS 5.7的/images/swfupload/swfupload.swf文件中的参数movieName没有经过有效过滤,且影响的是swf文件,导致跨站脚本漏洞。我们在利用时候只能弹出框,尚不能编写出具有唯一标识的payload。payload编写为/images/swfupload/swfupload.swf?movieName=%22]%29}catch%28e%29{if%28!window.x%29{window.x=1;alert%28%22xss%22%29}}//。页面未造成影响不能继续深入,只好作罢。

综上,实际操作时候要像计划靠拢,由于场景不同导致可能与计划有一定偏差。

2.2.3  系统运行设计

CMS漏洞扫描工具是通过输入不同的命令来控制不同的扫描方式。输入命令将程序运行,然后输出一些界面信息比如什么工具、什么版本、当前运行时间之类表示程序已经启动,接着是,开启线程调用注册过的POC类,批量扫描,扫描过程界面上会实时显示扫描的网站信息,最后扫描结束,生成报告日志。系统运行流程如图 3-3 所示:

图片.png 
图2-2-3 系统运行流程图

三、系统实现

3.1  系统整体模块实现

工具需要最基本核心的是基本框架的实现,只需要把重心放在基本框架上对于多线程的写入提高了系统运行效率,其他就是源源不断的整合CMS漏洞,写出的payload只需要按照一定格式写进入就可以使整个工具跑起来,不需要把精力放在如何跑起来这种重复的工作上。程序运行起来的过程是:启动入口文件pocbase.py,调用pocbase/pocbase_cli.py里main(),接着调用pcsInit()将程序启动起来。目录结构如表 3-1 所示:

表3-1 目录结构表,其中pocbase文件夹里面是让程序运行起来的文件函数以及第三方库,目录结构如下:

├── docs #说明文档

├── POCAPI.md #POC编写规范及相关API

├── pocsuite #pocsuite主程序

│   ├── data #基础数据

│   ├── lib

│   │   ├──controller

│   │   ├──core #核心组件

│   │   ├──parse #参数处理封装

│   │   ├──request #网络请求封装

│   │   └──utils #常用工具包

│   ├── modules

│   │   └──tmp #临时目录

│   ├── pcs-attack.py #攻击程序

│   ├── pcs-console.py #控制台程序

│   ├── pcs-verify.py #验证程序

│   ├── pocsuite.py #pocsuite主入口程序

│   ├── tests #测试poc目录

│   └── thirdparty #第三方库

└── README.md

Test文件夹是编写的CMS漏洞的payload文件。包含haha,time_sql_inj两个子文件夹。haha文件夹里的payload文件是验证成功率100%,完全不用人工参与,输出数据完全正确可信。time-sql-inj是时间盲注,也就是由于网络原因可能造成误差的payload文件,我们无法消除,只能通过二次运行来确认漏洞是否存在。

haha文件夹内容根据漏洞类型化为为不同的文件夹存储。由上而下分别是:代码执行漏洞,设计漏洞,文件下载漏洞,文件读取漏洞,文件上传漏洞,信息泄露,OpenSSL,解析漏洞,SQL注入漏洞,URL重定向漏洞,XSS攻击漏洞。

haha文件夹如图 3-1-1 所示:

图片.png 
图3-1-1 haha文件夹目录结构图

这些文件夹里面是关于所有相同漏洞类型可以是不同CMS的payload文件。拿SQL_Inject来说里面包含的CMS类型有:

AspCMS,DedeCMS,eYou,FangWei,OhHu,PHPCMS,QiboCMS,searun,ShopBuilder,Siteserver,V5shop,Vallery,YongYou,YuCheng,ZhengFang,ZuiTu等。如图 3-1-2 所示:

图片.png 
图 3-1-2 SQL_Inject文件夹目录结构图

3.2  基础扫描框架模块

扫描结束生成报告文件,我这边设计的是生成doc文件,利用Python库docx里面的Document来制定通用doc生成规则。Kb.results里面存放的是验证结果的数据部分,对它进行循环取各部分值插入到doc文件相应位置。

图片.png 

3.3  Payload文件编写模块

3.3.1  编撰payload文件通用规则

本模块实现了在批量的同时,有一些站为了防机器人,需要看你有没有 HTTP 请求头的,比如有一些 WAF 会检测请求中是否有 User-Agent, 所以 PoC 中需要 Cookie 。

代码整体结构:

图片.png

最上面是引入一些类库,中部是一个 PoC 的类,继承自PoCBase 类,类中有两个函数,_verify和_attack ,这两个分别是 verify 和 attack模式的入口函数,然后还有一个用户自己定义的函数parse_result , 用于统一输出。类里的变量是对漏洞描述的详细介绍,由上而下为:漏洞id,工具版本,漏洞编写者,漏洞发布时间,漏洞写入工具时间,漏洞文件最近更新时间,漏洞来源,漏洞名称,CMS链接,CMS名称,CMS版本,漏洞类型所属文件,漏洞类型,漏洞原理,漏洞修复,漏洞危害级别,漏洞详情描述。有了这些变量在漏洞扫描结束这些信息会选择性的写入漏洞结果的doc文件。

其中,pocbase/lib/poc_base.py文件是写一些编写payload文件常用到的函数。

图片.png

图片.png

3.3.2  编撰pa

Inndy的Hack Game攻略(WEB篇)  阅读原文»

先推荐一个很有意思适合初学者的CTF练习网站,网上关于这套题目的攻略很少,并且不全,那么就自己写一个攻略。

Inndy的hack game攻略 - WEB篇

上面是题目的分数和每个题解出的人数,可以看到题目的难度情况。

网站没有登录认证,先给自己起个复杂点不会重名的名字,就可以累积分数,然后开始答题。

按照作者Inndy的要求,只提供解题思路,不贴flag。

Do NOT share flag, it’s boring.

Let’s go!

## WEB题

### Task 12 hide and seek

WEB的10分送分题,已经提示了flag的格式是

flag{...}

查看源代码

搜索flag{,然后就可以找到flag

### Task 13 guestbook

标准的sql注入,并且提示sqlmap是你的好朋友

那么没有道理不让好朋友出场的

跑下来找到flag表,dump出flag

Inndy 的 hack game 攻略 - WEB篇

### Task 14 LFI

这道题考的是文件包含漏洞

提示的解题思路是使用php封装协议

题目里面还有一个登录页面,提示里面也关照了是干扰项,可以忽略

查看source code发现有一个flag文件,使用php封装协议去读

php://filter/read=convert.base64-encode/resource=pages/flag

然后解md5,发现里面还require了一个config.php

Can you read the flag<?php require(‘config.php’); ?>?

再使用php封装协议去读取这个config文件,成功get到flag

### Task 15 homepage

这道题好坑,坑点太多,无力吐槽^~^

找了半天,最后找到一个cute.js,打开发现里面是乱码,改变编码,转成unicode,发现是一堆表情包,试了各种办法,最后发现是aaencode  

aaencode - Encode any JavaScript program to Japanese style emoticons

然后使用网上的工具给这段js代码decode,保存成一个js,然后使用一个页面调用这个js,使用console查看输出,发现生成了一个二维码,还要扫二维码,作为安全人员,第一反应安全吗?  

扫描二维码后,获取到flag。

### Task 16 ping

这道题的考点是命令注入,打开页面可以看到源代码

Inndy 的 hack game 攻略 - WEB篇

发现我们要使用的常用命令注入符号”;”,”|”,”&”被过滤了

试下&#96;pwd&#96;,发现反引号没有被过滤

Inndy 的 hack game 攻略 - WEB篇

发现了flag.php文件,但是又过滤了cat命令,但是还是可以使用head命令

head flag.php,又过滤了flag,只有2个文件,可以使用通配符

`head f*`

### Task 17 scoreboard

Inndy说不用扫描服务器,查看过了源代码,没有,那么会藏在哪里呢?

用burp抓个包看看吧,原来flag就藏在respone的X-Flag里。

### Task 18 login as admin 0

先贴一段源代码

Inndy 的 hack game 攻略 - WEB篇

调用了safe_filter过滤函数,把 ‘ 转换成了 &#92;&#92;’  

可以使用手工注入

' or 1#

成功绕过,但是并没有得到flag

' or 1 limit 1, 1#

成功获取flag

### Task 19 login as admin 0.1

提示:"Grab the hidden flag"

题目既然是login as admin 0.1,那么肯定上一题有关联,顺着这个线索,继续找。

上面那题还可以使用sqlmap来跑,不过需要自己写一个tamper

这里该一个tamper,把unmagicquotes.py改一下,把原来宽字节注入的部分改成如下。

Inndy 的 hack game 攻略 - WEB篇

再跑sqlmap,登录点存在sql注入。

Inndy 的 hack game 攻略 - WEB篇

查表,里面有2个表,user表就是上一题的表,h1dden_f14g表就是这题的隐藏表。

Inndy 的 hack game 攻略 - WEB篇

成功get到flag

这道题用sqlmap跑最后的数据时候有点问题,可能是字符编码的问题,这里是用时间延迟注入跑出来的,跑了近1个小时。

这道题也可以使用手工注入,union select效率更高。

### Task 20 login as admin 1

这道注入题和前面类似,只是为了增加难度,它的安全函数过滤了更多的字符串,先上源代码。

Inndy 的 hack game 攻略 - WEB篇

这里过滤了空格,我们需要对注入语句做一些处理。

admin'/**/UNION/**/SELECT/**/1,version(),3,4#

登录进去就看到flag

### Task 21 login as admin 1.2

这道题提示是道盲注题,关闭了回显,并且改了tamper也不能用sqlmap跑,只好自己动手丰衣足食,自己写个盲注的脚本来跑。

这是个半自动化的脚本,需要自己去改payload,截图是最后一步的脚本。

Inndy 的 hack game 攻略 - WEB篇

自己写的脚本比较慢,跑了好久,并且数据库里故意把存flag的表名和字段名设置的很长,都是32个字符的字符串

最后的flag很长长长…

### Task 22 login as admin 3

源代码

Inndy 的 hack game 攻略 - WEB篇

这道题考的是cookie绕过

按照题目的算法,生一个admin账号,因为不知道密钥,尝试使用0,弱类型比较,更换cookie,成功绕过。

Inndy 的 hack game 攻略 - WEB篇

### Task 23 login as admin 4

先上源代码

Inndy 的 hack game 攻略 - WEB篇

Inndy 的 hack game 攻略 - WEB篇

可以看到逻辑不严谨,只要用户名是admin就可以显示flag

使用burp抓包,截断,获得flag

### Task 24 login as admin 6

这道题考的是strcmp函数漏洞和变量覆盖漏洞。

废话少说上源代码

Inndy 的 hack game 攻略 - WEB篇

测试的时候先用guest账号,再构造一个空数组做密码,成功绕过登录。

但是在使用admin账号的时候死活无法绕过,曾经一度怀疑人生了,后来突然一想,既然admin账号不对的话,那么就构造一个admin账号覆盖原来的账号。

上payload

{"users":{"admin":"test"},"username":"admin","password":{}}

也可以不利用strcmp漏洞,直接构造一个密码,用自己构造的密码登录。

{"users":{"admin":"test"},"username":"admin","password":"test"}

### Task 25 login as admin 7

还是先上源代码

Inndy 的 hack game 攻略 - WEB篇

这道题的考点是php的弱类型比较,随便找一个弱类型的密码,登录后成功获取flag

### Task 26 dafuq-manager 1

一开始想的比较多,还看了好长时间源代码,这道题其实很简单。

根据提示,构建一个cookie

help=me;

然后可以看到进一步提示,修改cookie试试,cookie里面有一个hidden参数

show_hidden=no

把no改成yes就可以了,再?p>阅读更多内容