Mark ChangMark Chang


是不是被資安的問題搞得很煩?

我想,在建置系統的過程中,或多或少都會遇到資安的問題....

除非你是秉持著歡迎大家進來坐坐,想喝茶得自己來,泡咖啡的就在旁邊,然後吃不完可以順便帶走。

又或者,您的客人是一位很有禮貌的人,三不五時來拜訪您還給您帶來了禮物.....

但您希望說人來就好不用特別帶禮物來了。

又或者,如果您會想說真的想帶禮物,那麼幫我帶杯咖啡好了~

所以,該怎麼做?

設定黑名單
 $BlackList = array('asp','php','jsp','php5','asa','aspx');//黑名單列表
if (isset($_POST["submit"])){
$name = $_FILES['file']['name']; //接收上傳的檔案檔名
echo $name;
$extension = substr(strrchr($name,"."),1);//以副檔名判斷檔案類別
$boo = false;

foreach ($BlackList as $key=>$value){
if ($value==$extension){//判斷是否為自訂的黑名單
$boo=true;
break;//如果是黑名單直接退出
}
}
if(!$boo){//如果不是黑名單就進行上傳檔案
$size=$_FILES['file']['size'];//檔案大小
if($size>5242880){//檔案不能超過5MB
echo "您想上傳檔案不能超過5MB";
exit();
}
$tmp=$_FILES['upfile']['tmp_name'];//暫存位置
$uploadfile = $datum."_".$flag.".".$extension;//重新命名檔案
move_uploaded_file($tmp,"../uploadfile/".$uploadfile); //搬移到指定路徑
}else {
echo "您想上傳檔案無法允許被上傳";
}

}

設定白名單
$WhiteList = array('pdf','jpg','png','bmp','gif','jpg','doc');//白名單列表
if (isset($_POST["submit"])){
$name = $_FILES['file']['name']; //接收上傳的檔案檔名
$extension = substr(strrchr($name,"."),1);//以副檔名判斷檔案類別
$boo = false;

foreach ($WhiteList as $key=>$value){
if ($value==$extension){//判斷是否為自訂的白名單
$boo=true;
}
}
if($boo){//如果是白名單則開始執行
$size=$_FILES['file']['size'];//檔案大小
if($size>5242880){//檔案不能超過5MB
echo "您想上傳檔案不能超過5MB";
exit();
}
$tmp=$_FILES['upfile']['tmp_name'];//暫存位置
$uploadfile = $datum."_".$flag.".".$extension;//重新命名檔案
move_uploaded_file($tmp,"../uploadfile/".$uploadfile); //搬移到指定路徑
}else {
echo "您想上傳檔案無法允許被上傳";
}
}

MIME
if ($_FILE['file']['type']=="image/jpeg"){//判斷是否為jpg格式
$imageTempName=$_FILES['file']['tmp_name'];
$imageName=$_FILES['file']['name'];
$last = substr($imageName,strrpos($imageName,"."));
if(!is_dir("uploadFile"))
mkdir("uploadFile");
}
$imageName=md5($imageName).$last;
move_uploaded_file($imageTempName,"./uploadFile".$imageName);//指搬移到指定路徑
echo ("檔案上傳成功");
}
else{
echo ("您想上傳檔案無法允許被上傳");
exit();
}

我想,雖然禮多人不怪,但還是加把鎖,必竟我們現在談的是資安。

作者簡介

Mark Chang

離不開電腦的宅男

訪客留言

留下一些足跡證明你來拜訪過我

推薦閱讀

作者其他相關類別故事

javascript如何取得檔案的副檔名?

javascript如何取得檔案的副檔名?

var filenamea = "aaa"; alert(...

改變input placeholder 字體顏色

改變input placeholder 字體顏色

colorphoto 通常我們會使用 placeholder 來作為欄位提醒文字~ 通...

PHP輸出到WORD跟EXCEL 簡易做法

PHP輸出到WORD跟EXCEL 簡易做法

pexelsphotooffice WORD: $filename="...

請選擇選項

執行錯誤

Hi,謝謝你的參與,但無法重複投票哦~

現在就加入innstory,開始紀錄你的故事。

「innstory」是一個儲存故事的地方,我們致力於成為一個有溫度的平台,加深人與人之間的羈絆是我們所努力的方向。
我們深信人與人間的區塊鏈不是只是冷冰冰的運算。現在就加入我們。