阿强成长之--漏洞安全

开篇(这种思想很重要)

漏洞不是后来才出现的,也不一定是码农的编写问题和其他因素造成的,他是从一开始就客观存在的,只是我们没有发现它,随着时间的推长和技术的跟新以及技术宅们的利益问题,这才导致漏洞的出现,其实你所发现bug其实一直存在,只不过你是第一个发现的,这才有了漏洞的出现。(不要让码农们背着个锅了,hhhh)

什么是漏洞

漏洞是指一个系统存在的弱点或缺陷,系统对特定威胁攻击或危险事件的敏感性,或进行攻击的威胁作用的可能性

漏洞会从哪些方面产生

漏洞可能来自应用软件或操作系统设计时的缺陷或编码时产生的错误,也可能来自业务在交互处理过程中的设计缺陷或逻辑流程上的不合理之处。

为什么会产生漏洞

  1. 人员的安全意识(安全意识不够,也是管理层的问题)
  2. 企业对管理安全意识缺乏(总是忽视安全问题,等到发生才意识到重要性)
  3. 服务器,应用使用了默认规则(没有开启相对应的规则,造成漏洞的产生)
  4. 环境变化带来的动态变化(例如:千年虫就是个典型的环境变量造成漏洞的产生)
  5. 远存在编程失误(码农不可能做到完美,任何时候都存在漏洞,只是你缺少一双发现漏洞的眼睛)

利用手段的分析

  1. 主机层面:操作系统漏洞,浏览器漏洞,弱口令,远程服务登录、ftp等
  2. 网络层面:网络设备存在后门\或被植入木马,网络设备底层漏洞,网设备弱口令,网络设备安全漏洞
  3. 应用程序层面:中间件漏洞(fg:Apache、Tomcat、weblogic等漏洞),第三方组件漏洞(fg:网页编辑器struts2、spring等漏洞),应用漏洞(fg:注入、身份认证、跨站脚本、访问控制、会话管理、文件上传等),业务逻辑漏洞(fg:支付漏洞、业务流程)

简单介绍两款工具

  1. nessus——采用客户/服务器体系结构,客户端提供了运行在X window 下的图形界面,接受用户的命令与服务器通信,传送用户的扫描请求给服务器端,由服务器启动扫描并将扫描结果呈现给用户;扫描代码与漏洞数据相互独立,Nessus 针对每一个漏洞有一个对应的插件,漏洞插件是用NASL(NESSUS Attack Scripting Language)编写的一小段模拟攻击漏洞的代码,这种利用漏洞插件的扫描技术极大的方便了漏洞数据的维护、更新;Nessus 具有扫描任意端口任意服务的能力;以用户指定的格式(ASCII 文本、html 等)产生详细的输出报告,包括目标的脆弱点、怎样修补漏洞以防止黑客入侵及危险级别。

在这里插入图片描述

在这里插入图片描述

  1. Appscan—有IBM公司出品的一款web应用安全测试工具。可以根据不同企业类型,提供不同合规报告。fg:跨站脚本,缓冲区溢出,sql注入漏洞等。
    在这里插入图片描述
    在这里插入图片描述

常见漏洞案例分析

  1. SQL注入攻击
    比如很多网站泄露会员账号、密码大多数通过web表单递交查询字符暴露出来,这类表单特别容易受到sql注入的攻击。
  2. web漏洞
    内部IP泄露模式、网页请求中参数、会话cookie中缺少httponly属性。’
  3. 协议漏洞
    明文传输:ftp、pop、telnet的传输基本上都是不安全的,应为他们的传输都是未经过加密的。
    在这里插入图片描述
  4. 中间件漏洞
    Apache控制台采用了默认账户和密码
    在这里插入图片描述

如何做好防范漏洞

  1. 对服务器做安全加固,保证基础安全。
  2. 健全的漏洞安全机制,定期做好服务器的补丁升级。
  3. 减少权限,降低人为因素的安全。
  4. 全面提升系统漏洞的安全审计和管理要求。
在现代集成开发环境(IDE)中,例如 IntelliJ IDEA、Visual Studio Code 或 PyCharm 等,Git 的 `cherry-pick` 操作可以通过图形界面简化执行流程。以下是基于这些主流 IDE 的通用操作步骤: ### 1. 打开 Git 提交历史记录 在大多数 IDE 中,可以通过 Git 插件或版本控制面板查看提交历史。找到需要进行 `cherry-pick` 的特定 commit。 ### 2. 选择目标分支 确保当前处于需要应用提交的目标分支上。如果不在正确的分支上,可以使用 IDE 提供的分支切换功能切换到目标分支。 ### 3. 右键点击目标 commit 并选择 cherry-pick 在提交历史记录中找到要挑选的 commit,右键点击该 commit,并选择 **Cherry Pick** 选项。部分 IDE 会弹出确认窗口,提示是否继续执行此操作。 ### 4. 处理冲突(如有) 如果出现冲突,IDE 通常会自动提示并标记冲突文件。打开冲突文件后,IDE 会提供对比工具帮助解决冲突。用户可以选择保留哪一部分代码,或者手动合并内容。 ### 5. 标记冲突已解决并完成 cherry-pick 在解决完所有冲突后,使用 IDE 的 Git 功能将冲突文件标记为已解决(通常是点击“Mark as Resolved”按钮),然后完成 `cherry-pick` 流程。 ### 6. 推送更改 最后,将更改推送到远程仓库,确保其他团队成员可以看到更新。 --- ### 示例:IntelliJ IDEA 中的 cherry-pick 操作 ```plaintext Version Control -> Git -> Show History -> 右键 commit -> Cherry-Pick ``` 如果出现冲突,IDEA 会进入 "Merge" 模式,允许用户通过界面直接处理冲突。 --- ### 注意事项 - 在执行 `cherry-pick` 前,确保本地工作区干净,避免因未提交的更改导致操作失败。 - 如果只需要部分更改,也可以结合 `git rebase -i` 和 `cherry-pick` 实现更精细的提交管理[^3]。 - 在某些 IDE 中,如 VS Code,可通过扩展(如 GitLens)增强 `cherry-pick` 的可视化操作体验。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值