看好你的门-客户端传数据(10)-不安全的HTML禁用元素_html/css_WEB-ITnose
首先需要声明,本文纯属一个毫无远见和真才实学的小小开发人员的愚昧见解,仅供用于web系统安全方面的参考。
1、 简单说明
继续说故事,某一天产品经理策划了一个方案,要搞一个促销。一个用户最多只能用一次鸡蛋优惠券。
开发人员需要对系统进行修改和调整。
让我们脑补一下,传统行业搞互联网电商的场景:
产品经理:赶快改,赶快上,赶快搞活动
运维经理:版本升级,提交上线评估报告,风险测试报告,系统测试报告,各位负责领导签字文件……;
开发人员A:靠,老子一早从9点干到晚上9点,还要老子去写那么多报告,让我想想有那么好办法…
开发人员B:在html表单上做限制,买过一次以后就禁用;
开发人员A:这办法不错,只要修改html,不算版本升级;
开发经理:兄弟们,赶紧开发;
… (使用html进行元素禁用)
测试人员:测试好了,一个人只能用一次鸡蛋优惠券,用完就灰色了,我再也用不了了,达到目标。
开发经理:提交上线
…
2、 利用html进行元素禁用
使用了一次以后的页面,确认购买的按钮灰掉了。
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>看好你的门-阿饭同学 </title></head><body> <form action="aShopPrice.action" method="post" name="form1" " > 商品:鸡蛋 优惠券,只能使用一次<br> 您已经使用一次<br> <input type="submit" value="确认购买" disabled="true"/> </form></body></html>
无论我怎么点,这个按钮都是灰色的。
3、 被攻击
诶呀,一不小心,又被攻击了…
1、 最简单的方法,比如用代理服务器拦截之后修改,直接让disabled=false 或者去掉这个属性;
2、 比如我们把这个页面保持下来,用审查元素功能找到 :disabled=true 修改元素属性,去掉这写代码,这样验证就失效了,再多用几次鸡蛋优惠券玩玩吧。。
4、 思考html上的元素禁用
1、 元素禁用好像现在用的不是很多,不过只要服务器采取了和客户端相同甚至更加严格的确认机制,这种应用就比较难被攻击;
2、 因为用户的输入可能带来各种各样的问题,这种方法能够将用户无意中的错误过滤掉,能够减少网络流量和服务器负担,因此,这种方法该用还是要用。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











HTML은 간단하고 배우기 쉽고 결과를 빠르게 볼 수 있기 때문에 초보자에게 적합합니다. 1) HTML의 학습 곡선은 매끄럽고 시작하기 쉽습니다. 2) 기본 태그를 마스터하여 웹 페이지를 만들기 시작하십시오. 3) 유연성이 높고 CSS 및 JavaScript와 함께 사용할 수 있습니다. 4) 풍부한 학습 리소스와 현대 도구는 학습 과정을 지원합니다.

HTML은 웹 구조를 정의하고 CSS는 스타일과 레이아웃을 담당하며 JavaScript는 동적 상호 작용을 제공합니다. 세 사람은 웹 개발에서 의무를 수행하고 화려한 웹 사이트를 공동으로 구축합니다.

anexampleStartingtaginhtmlis, whithbeginsaparagraph.startingtagsareessentialinhtmlastheyinitiate rements, definetheirtypes, andarecrucialforstructurituringwebpages 및 smanstlingthedom.

WebDevelopmentReliesonHtml, CSS 및 JavaScript : 1) HtmlStructuresContent, 2) CSSSTYLESIT, 및 3) JAVASCRIPTADDSINGINTERACTIVITY, BASISOFMODERNWEBEXPERIENCES를 형성합니다.

GiteEpages 정적 웹 사이트 배포 실패 : 404 오류 문제 해결 및 해결시 Gitee ...

웹 주석 기능에 대한 Y 축 위치 적응 알고리즘이 기사는 Word 문서와 유사한 주석 기능을 구현하는 방법, 특히 주석 간격을 다루는 방법을 모색합니다 ...

이미지를 클릭 한 후 주변 이미지를 산란 및 확대하는 효과를 얻으려면 많은 웹 디자인이 대화식 효과를 달성해야합니다. 특정 이미지를 클릭하여 주변을 만들 수 있습니다 ...

vue 응용 프로그램을 개발할 때 라우터 폴더 아래에 index.js 파일에 vuerouter를 등록해야 할 필요성이 있으면 종종 라우팅 구성에 문제가 발생합니다. 특별한...
