ProgrammingNotes
  • README
  • accounting会计学
  • Apache
  • ar
  • asciidoc
  • AssemblyLanguage汇编语言
  • authorization授权
    • 1.jwt
    • 2.oauth
  • C语言
    • C++
  • cache
  • Computer计算机相关
    • 1.reinstallSystem重装系统
    • 2.vhd
    • 3.bulidWeb建站
    • 4.computerOrganization计算机原理
  • config配置文件相关
  • ContainerTechnology
    • 1.docker
    • 2.kubernetes
  • cs计算机科学
    • 1.api
      • 1.1.restful
      • 1.2.graphQL
      • 1.3.openAPI
      • 1.4.swagger
    • 10.blockchain区块链
      • 10.1.bitCoin比特币
    • 11.characterEncoding字符编码
    • 12.map
      • 12.1.百度地图
      • 12.2.qgis
      • 12.3.openLayers3
      • 12.4.postGIS
    • 13.ai人工智能
    • 14.machineLearning机器学习
    • 15.ioT物联网
    • 16.microservices微服务
    • 17.serverless无服务架构
    • 2.uml
    • 3.designPattern
    • 33.compilation_tool编译工具
      • 33.1.gradle
      • 33.2.maven
    • 4.devOps
      • 4.1.ci
        • 4.1.1.jenkins
        • 4.1.2.github_actions
        • 4.1.3.team_city
      • 4.2.argoCD
    • 6.dataVisualization数据可视化
    • 7.abandonTechnology可放弃的技术
    • 8.bigData大数据
      • 8.1.streamComputing流计算
      • 8.2.edgeComputing边缘计算
    • 9.deepLearning
  • C#
  • db数据库
    • 1.sql
    • 2.noSQL
      • 2.1.redis
      • 2.2.mongoDB
      • 2.3.hbase
      • 2.4.etcd
    • 3.fileSystem文件系统
      • 3.1.fastDFS
      • 3.2.hdfs
    • 4.postgreSQL
    • 5.sqlserver
    • 6.MySQL
    • 7.oracle
    • 8.oceanBase
    • 9.influxDB
    • DatabaseSecurity数据库安全
    • pl/sql
  • Delphi
  • dorado
  • education
  • english
  • frontEnd前端
    • 1.html
      • 1.1.h5
      • 1.2.webSocket
      • 1.3.html2pdf
    • 10.1.wonder
    • 10.webGL
    • 2.w3C规范
      • 2.1.webAPIs
    • 3.css
    • 4.dom
    • 5.xhtml
    • 6.webAssembly
    • 7.ajax
    • 8.fetch
    • 9.picture
  • git
    • 1.gitbook
    • 2.svn
    • 3.github
    • 4.travis_ci
  • golang
    • go_cloud
    • go_crawler
    • goroutine
    • hydra
  • hardware
  • ios
  • java
    • 1.jvm
    • 2.java高级特性之多线程
    • 3.javafx
    • 4.java网络编程
    • 5.java类加载和反射
    • 6.jms
    • 7.java_cloud
    • 8.jsp
    • 9.spring
  • js
    • 1.npm
    • 13.mockJS
    • 19.bootstrap
    • 2.nodeJS
    • 25.echarts
    • 3.angular
      • 3.1.angularCLI
      • 3.2.angularMaterial
    • 4.react
      • 4.3.reactNative
      • 4.4.next
    • 5.vue
      • 5.1.vue-CLI
      • 5.2.vuex
      • 5.3.axios
      • 5.4.vue-router
      • 5.5.element-ui
      • 5.6.vueCore
      • 5.7.nuxt
    • 6.compilation_tool编译工具
      • 6.1.webpack
      • 6.2.parcel
      • 6.3.grunt
    • 7.lib第三方库
      • 7.1.jQuery
      • 7.2.lodash
    • TypeScript
      • 8.1.tslint
    • Deno
    • JS设计模式
    • ECMAScript
    • JS
    • JS6
    • NativeScript
    • RXJS
    • V8
  • linux
    • 1.vim
    • 2.shell
    • 3.shellScript
    • 4.ubuntu
    • 5.makefile
    • 6.centOS
  • markdown
  • markup_lang
    • JSON
    • YAML
  • math
    • 1.algorithm算法
    • 2.cryptology密码学
    • 3.computerGraphics计算机图形学
    • 4.dataStructure数据结构
  • MC消息通信
    • MQ消息队列
      • 1.kafka
      • 2.rabbitMQ
      • 3.redis
      • 4.activeMQ
      • 5.rocketMQ
      • 6.nats
    • MQTT
      • EMQ
    • RPC
      • gRPC
  • mobile
    • android
      • 1.kotlin
      • 2.weixin
      • 3.miniProgram
    • cordova
    • dart
    • flutter
    • ios
      • xcode
    • ReactNative
  • network网络
    • 2.ss
    • 3.http
    • 4.kcp
    • 5.nmap
    • 5G
    • 6.webCrawler
  • news重要新闻
  • Philosophy哲学
    • AnCoderPrepares程序员的自我修养
    • 软件工程的语录
  • php
  • popularizationOfScience科普
  • protocol
    • 1.rpc
  • python
  • readingNotes读书笔记
    • 1.profession专业笔记
    • 2.sql_Antipatterns
    • 3.unix_Network_Programming
    • 4.the_Docker_Book
  • rust
  • scriptingLanguage
    • 2.lua
    • 3.regularExpression正则表达式
    • 4.julia
    • 5.ruby
  • security安全
  • server服务器相关
    • nginx
    • OpenResty
  • software&tool软件和工具
    • 1.vscode
    • 11.plsqldev
    • 17.androidStudio
    • 3.虚拟机VirtualMachine
    • 4.jetBrains
    • 5.eclipse
    • 7.visualStudio
    • 8.office系列
  • softwaretest软件测试
    • JUnit
  • ssh&ssm
    • 2.hibernate
    • 1.spring
  • unix
    • hackintosh
    • mac
  • vr
  • windows
    • terminal&DOS
    • windows10
    • Wine
  • word一些术语
  • zztemp草稿
    • temp
    • temp4study
    • temp4studyLater以后再学的
Powered by GitBook
On this page
  • security安全
  • 一 概述
  • 4 网址文档等
  • 三 基础
  • 1 web安全

Was this helpful?

security安全

security安全

一 概述

计算机安全,网络安全(Cyber Security)等

4 网址文档等

网址

  1. OWASP:Open Web Application Security Project,开源Web应用安全项目(OWASP)是一个在线开放的社区,致力于帮助各企业组织开发、购买和维护可信任的应用程序。使应用软件更加安全,使企业和组织能够对应用安全风险做出更清晰的决策,推动了安全标准、安全测试工具、安全指导手册等应用安全技术的发展。

    1. OWASP官网:http://www.owasp.org

    2. 中国区官网:http://www.owasp.org.cn

三 基础

1 web安全

跨站请求伪造CSRF

CSRF(Cross-site request forgery): 跨站点请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF。因为是基于cookie来进行用户识别的, cookie如果被截获,用户就会很容易受到跨站请求伪造的攻击。

防御CSRF的几种策略:主要有三种,三种都不够完美

  1. 验证HTTP Referer字段

    1. 缺点:有些用户可能主动关闭了Referer字段

  2. 在请求地址中添加令牌并验证:在HTTP请求中以参数的形式加入一个随机产生的令牌,并在服务器端建立一个拦截器来验证这个令牌,如果请求中没有令牌或者令牌内容不正确,则认为可能是CSRF攻击而拒绝该请求。这种方法比第一种安全性要高一些。

    1. 缺点:需要保证令牌本身的安全

  3. 在HTTP头中自定义属性并验证

注入(Injection)攻击

注入漏洞发生在应用程序将不可信的数据作为命令或者查询语句的一部分,被发送到解释器时发生的。攻击者利用有针对性的解释器语法发送简单的、基于文本的攻击。几乎任何数据源都能成为注入载体,包括内部来源。注入漏洞的本质是原本代码拼接了用户可控数据,导致原本代码语义混淆而导致的安全缺陷。

注入分为很多不同的种类:

  1. SQL注入: 通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令

  2. SOAP以及LDAP注入等等

跨站域脚本攻击XSS

本来跨站脚本攻击(Cross Site Scripting)的缩写应该是CSS,但这会与层叠样式表(Cascading Style Sheets,CSS)的缩写混淆。因此,在安全领域跨站脚本攻击被缩写为XSS。在一开始时,这类攻击的演示案例是跨域的,所以被叫做了跨站脚本。就现在而言,是否跨域已经不再重要。

XSS(跨站脚本)是最普遍的web应用安全漏洞,通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。当应用程序发送给浏览器的页面中包含用户提供的数据,而这些数据没有经过适当的验证或转义(escape),包含了恶意脚本,被浏览器当做有效代码解析执行从而产生危害,就会导致跨站脚本漏洞。

XSS攻击可以分为两类:反射型和存储型。在《白帽子讲web安全》一书中则将DOM based XSS单独划分出来。前两类的划分依据是“数据存储在服务器与否”,而第三类属于历史原因被单列出来,实际可以看作是反射型。

分类:

  1. 反射型(非持久型):与服务端交互,但交互数据一般不会存储在数据库中,一次性,所见即所得,常见于查询页面

  2. 存储型:交互数据会存储在数据库中,永久性存储,一般出现在留言板,注册等页面。

  3. DOM型:不与服务端交互,通过DOM操作前端代码输出产生的漏洞,大部分属于反射型,少部分属于存储型。

Previous5.rubyNextserver服务器相关

Last updated 9 months ago

Was this helpful?