11 2023 档案
摘要:点击传送门 来到目标公司网站 可以看到有很多的网页 现在我们需要寻找注入点,注入点存在的页面一般可以明显的显示出正确页面和错误页面 这里可以看到有新闻页面 有新闻的一般选择新闻页面 我们点击第一个新闻 进来后可以看到 URL为 http://g8wepfcp.ia.aqlab.cn/shownews
阅读全文
摘要:三大原则: Secure By Default原则 (1)黑名单、白名单思想 白名单解析 ·只对需求进行放行 ·即只对某一部分要使用的接口进行放行,其他端口封闭 ·如,网站只提供web服务,那么正确的做法是只允许网站服务器的80和443端口对外提供服务,屏蔽除此之外的其他端口 黑名单解析 ·只对威胁
阅读全文
摘要:·安全方案的设计思路与方法 组成属性: CIA: 机密性(Confidentiality): 要求保护的数据内容不能泄露,加密是实现机密性要求的常见手段 完整性(Integrity): 要求保护数据内容是完整、没有被篡改的。常见的保证一致性的技术手段是数字签名 可用性(Availability):
阅读全文
摘要:安全评估的实施被分为4个阶段: 资产等级划分 威胁分析 风险分析 确认解决方案 ·当面临的是一个尚未实施过安全评估的方案时,应该按顺序依次进行 而如果是一个由安全团队长期维护的系统,那么有些阶段可以只实施一次。 在上一个阶段将决定下一个阶段的目标,需要实施到什么程度。 ·互联网安全的核心问题,是数据
阅读全文
摘要:·在解决安全的问题的过程中,不可能一劳永逸。 ·安全是一个持续的过程 ·攻击与防御技术的对立,从网络诞生的那一刻就不可避免; 攻击与防御技术的发展,同样从网络诞生的那一刻就开始,至今还未结束,在未来也将一直持续下去,直到宇宙的尽头 在一个时代,注定有一项技术会占优势地位,但某一时期的攻击或防御技术,
阅读全文
摘要:·安全问题的本质是信任的问题 ·一切安全方案的基础,都是建立在信任关系上的。我们必须相信一些东西,必须有一些最基本的假设,安全方案才会得以成立 如果我们否定一切,且对一切都不信任,安全方案就会成为无源之水,无根之木,无法设计,也无法完成。 ·在现实生活中我们一般很少设想最极端的前提条件。因为极端的条
阅读全文
摘要:·对于骇客来说,只要能找到系统的一个弱点,就可以达到入侵系统的目的; ·对于从事安全的白帽子而言,必须找到系统的所有弱点,不能有遗漏,并且将所有弱点全部消除,才能保证系统不会出现安全问 题; ·这种差异是由于工作环境与工作目的导致的: 白帽子一般为企业或安全公司服务,工作的出发点就是要解决所有安全问
阅读全文
摘要:·在互联网早期,Web并非给了我的主流应用,基于SMTP、POP3、FTP、IRC等协议的服务拥有绝大部分客户。所以这个时候,黑客的主要目标为网络、操作系统以及软件等领域,web安全处于初始阶段。因为相对于exploit攻击,web攻击只能让一个黑客取得一个 较低权限的账户,对黑客的吸引力远远不够
阅读全文
摘要:原理 代码审计 黑盒测试下的xff注入攻击 在报文头部插入 X-Forwardcd-for:127.0.0.1'and 1=1# 插入 X-Forwardcd-for:127.0.0.1'and 1=2# 两次结果不一样,存在注入点 确认注入点 这里有四个注入点 进行联合查询 X-Forwardcd
阅读全文
摘要:原理 代码审计 黑盒测试下的base64注入 admin')and 1=1-- admin')and 1=2--
阅读全文
摘要:原理 在这里更改cookies的值 黑盒测试下的cookies注入 实战 创建额外的cookies值,并将其填充为' 发送报文发现需要跳转,跟随跳转 发现报错 三次不同的注入发现报错结果不同 可以证明 这里拥有cookies注入点 利用联合查询 得到敏感信息
阅读全文
摘要:原理 利用%df使注入语句逃逸 代码审计 黑盒测试下的宽字节注入 试探 字符型试探 ?id=1%df%27%23 试探成功 注入获取敏感信息 ?id=1%df%27 union select 1,2,3%23 ?id=%df%27 union select 1,user(),database() %
阅读全文
摘要:原理 图解 实例解析原理 user_id='1''查询报错 user_id='1\''正确查询 二次注入代码审计 黑盒测试下的二次注入 实战1:修改目标账户密码 前置要求,现在我们有一个目标账号hudongyang 但是我们不知道他的密码,怎么办呢,可以利用二次注入 这是hudongyang的账号
阅读全文
摘要:原理 这种注入手法可以对数据库进行增删改查 而不是像之前一样只能查询数据 启动靶场 sudo docker run -dt --name sqli -p 7766:80 acgpiano/sqli-labs 注入利用 开始试探 两次试探返回不一样,可能存在注入 试探结束 提取库中的所有的表 ?id=
阅读全文
摘要:插入时间语句 ?name=1' and if(1<2,sleep(5),0) --+ 这样的结果是不行的,因为第一个判断就是不成立的,那and语句的第二个会直接不会执行直接报错,所以这个还需要一个正确的用户名才行 数据库查询出来了 这个数据库中的所有表出来了 指定表的所有字段都出来了 指定表的所有字
阅读全文
摘要:原理 例如这里 我们输入1,他是正确的 如果输入' 这是因为网站健壮性太弱,没有对闭合攻击进行过滤导致的 这样就是有报错注入点 报错注入攻击 利用数据库返回的报错信息直接得到敏感信息, 这里的dvwa就是数据库名 黑盒模式下的报错注入
阅读全文
摘要:原理 有一种界面,像这种不会把数据体现在表面的界面 这种一点都看不出来有没有可控变量的页面,看不出来能不能用正常的字符型SQL注入或数字型SQL注入破解,所以,这时候要换个思路 布尔型盲注 盲注判断 字符型判断 看几次字符型的返回结果一不一样 构建语句 1' and 1=1--+ 1' and 1=
阅读全文
摘要:联合注入原理 联合查询,两边的字段数要相同,不然会报错 就像这样 select from users where user_id=1 union select * from guestbook 上述联合查询语句可以拆分为两个查询语句 select from users where user_id=1
阅读全文
摘要:首先输入正确账号,得到正确结果 开始试探 试探变量可影响性 确认用户控制的变量是否可以影响数据库 在非用户名不同的情况下,因为并查询结果导致报错,确认变量可以影响对方数据库 试探注入点个数 一个试探成功 两个注入点试探成功 第三个注入点试探失败 确认此处有两个注入点 注入语句 提取两个注入点对应语句
阅读全文
摘要:因为这个1是用户可以控制的,当用户写入'时,就会像这样 而当这样查询 就会同时得到两个值 还有一种方法 与运算方法 这样可以测试出,有没有这个注入点 判断是否存在注入点 停顿5秒再返回 --为SQL中的注释符 三种SQL语句的注释符 注入流程 注入分类 SQL注入常规利用思路 手工注入常规思路 SQ
阅读全文
摘要:两种常用手法 1.利用bp中的slmap 下载co2 要确认安装了python 然后指定sqlmap.py 指定当前操作系统 指定python路径 这时有y的选择y 爆破成功
阅读全文