Http-Only is not secure [testing]

简介: Its been a while since i posted. I've been bogged down with code reviews and training but even...
Its been a while since i posted. I've been bogged down with code reviews and training but even when you deliver training you learn something new. This is particularly true when training developers keen to learn secure development. The conversations during the course tend to be more about building than breaking....


HTTP - one side of a many sided coin
So on with today's rant......many penetration testers still feel testing an application surrounds testing the HTTP requests and responses between the browser an client; Crawl the application, flag interesting parameters and fuzz using a scanner like OWASP Zap proxy or whatever......
.......We hope the scanner renders the page as a browser sees it. If it doesn't how do we know the reaction of the application is being detected.


Many scanners parse HTML pretty well but when it comes to javascript/jquery/client-side-code-execution that's where they fall over.
One of the hardest things to do when automating scanning  is to understand, parse and interpret responses. Sending in data/payloads/attack vectors is the easy part, understanding the response is more difficult. If the response can come from more than one source...now that's a challenge, and a feature of many modern applications.


Our HTTP request can hit the client or the server or either one and be manipulated in many ways on both. So to say one vector/parameter/payload can split into many paths is not far from the truth. many paths mean many possible responses and contexts.


When I deliver training a significant part of it is related to client side encoding to prevent  DOM XSS
This type of attack can't be detected with HTTP analysis in the traditional sense. Javascript parsing is required and tools like  dominator  do this pretty well but there is very little in the commercial field to tackle this type of assessment at scale.


So to cap this point off...testing Http-Only is bad, there is more to an app than Http requests and responses.


Another issue is testing for client side issues such as XSS (cross site scripting),  XFS  (cross frame scripting), clickjacking, is very reliant on the browser of choice, the version used etc.
HTML attributes for firefox are different to IE and Chrome are different for various versions and due to this payloads trigger on some browsers and not on others.


The browser protects us from lots of security issues like cross domain framing attacks, inline javascript attacks things like  content security policy  and  X-FRAME-OPTIONS  tell the browser not to accept or react to certain contexts.


The web browser is not only a window to the internet but is fast becoming a shield also to protect users by fulfilling contracts with the web application developers.


Suggestion to make life easier for developers:


By default server HTTP headers should implement:




  • X-Frame-Options: SameOrigin
  • Content-Security-Policy , 
  • HttpOnly, 
  • Secure (Cookie)
  • Strict-Transport-Security
  • no-store, no-cache




In the future, If we all use secure browsers should we let the browser take care of client side security issues and not bother to code taking such threats into account?  :)


To cap this off......Lets remove dynamic SQL, DES, <128 bit SSL from JAVA
and inline javascript from all browsers (data and code getting mixed).....what would we fix is we did this???

.......Just a thought.
目录
相关文章
|
监控 负载均衡 Java
深入理解Spring Cloud中的服务网关
深入理解Spring Cloud中的服务网关
|
监控 负载均衡 安全
微服务(五)-服务网关zuul(一)
微服务(五)-服务网关zuul(一)
|
运维 Kubernetes 安全
利用服务网格实现全链路mTLS(一):在入口网关上提供mTLS服务
阿里云服务网格(Service Mesh,简称ASM)提供了一个全托管式的服务网格平台,兼容Istio开源服务网格,用于简化服务治理,包括流量管理和拆分、安全认证及网格可观测性,有效减轻开发运维负担。ASM支持通过mTLS提供服务,要求客户端提供证书以增强安全性。本文介绍如何在ASM入口网关上配置mTLS服务并通过授权策略实现特定用户的访问限制。首先需部署ASM实例和ACK集群,并开启sidecar自动注入。接着,在集群中部署入口网关和httpbin应用,并生成mTLS通信所需的根证书、服务器证书及客户端证书。最后,配置网关上的mTLS监听并设置授权策略,以限制特定客户端对特定路径的访问。
372 2
|
9月前
|
存储 安全 数据管理
StarTowerChain:去中心化匿名云存储,重塑数据存储未来
在数据爆炸时代,StarTowerChain 以全球首创的去中心化匿名云存储技术强势登场。其分布式架构将数据分割存储于全球节点,大幅提升弹性和抗风险能力;加密技术和匿名化功能确保数据安全与隐私保护。广泛应用于金融、法律、能源、教育等领域,赋能各行业发展,引领云存储行业新变革。
386 22
|
人工智能 自然语言处理 搜索推荐
评测:AI客服接入钉钉与微信的对比分析
【8月更文第22天】随着人工智能技术的发展,越来越多的企业开始尝试将AI客服集成到自己的业务流程中。本文将基于《10分钟构建AI客服并应用到网站、钉钉或微信中》的解决方案,详细评测AI客服在钉钉和微信中的接入流程及实际应用效果,并结合个人体验分享一些心得。
10347 10
|
Shell Docker 容器
GitlabCI学习笔记之一:安装Gitlab和GitLabRunner
GitlabCI学习笔记之一:安装Gitlab和GitLabRunner
|
Devops 持续交付 开发工具
入职必会-开发环境搭建54-GitLab下载和安装
GitLab 是一个基于 web 的 Git 仓库管理工具,提供了代码托管、版本控制、协作开发、持续集成等功能,是一个综合的 DevOps 平台。用户可以使用 GitLab 托管他们的代码仓库,并利用其丰富的功能来管理和协作开发项目。 以下是 GitLab 的一些主要特点和功能。
272 0
入职必会-开发环境搭建54-GitLab下载和安装
|
Prometheus 监控 Cloud Native
构建高效稳定的Docker容器监控体系
【5月更文挑战第13天】在微服务架构和容器化部署日益普及的背景下,对Docker容器的监控变得尤为重要。本文将探讨一种构建高效稳定Docker容器监控体系的方法,通过集成Prometheus和cAdvisor工具,实现对容器资源使用情况、性能指标和运行状态的实时监控。同时,结合Grafana进行数据可视化,为运维人员提供直观的分析界面,以便及时发现和解决潜在问题,保障系统的高可用性和稳定性。
535 6
|
监控 安全 网络安全
探索现代网络安全的多层次防御机制
【5月更文挑战第12天】 随着信息技术的飞速发展,网络安全已成为维护信息完整性、保障用户隐私和确保业务连续性的关键。本文将深入探讨现代网络安全面临的挑战,并详细剖析多层次防御机制如何在不同层面上提供保护。我们将从物理安全到应用层安全,再到数据安全,逐一展开讨论。文章旨在为读者提供一个关于现代网络安全防护策略的综合视角,并强调了综合安全框架的必要性。
524 4
|
安全 网络安全 数据安全/隐私保护
什么是网络安全等级保护测评(等保测评)?
网络安全等级保护测评(等保测评)是指对信息和信息系统按照重要性等级进行的保护测评。它通过对信息和信息系统的安全性进行评估,发现并纠正存在的安全漏洞和隐患,提高信息系统的安全性和可靠性,保障信息的安全。
580 1