PDA

View Full Version : امنیت تگ a



ساراعلی
پنج شنبه 14 خرداد 1394, 18:59 عصر
چطور میشه تگ a رو یا همون href رو به صورت صحیح نوشت تا از نظر امنیتی ایرادی نداشته باشه؟؟ اینجوری میخوام بنویسم اما تو url هم همینو میده ایا مشکلی نداره؟؟


<a href="contentttcopy.php?city/تهران" > تهران</a>

mahdi.j.77
پنج شنبه 14 خرداد 1394, 19:08 عصر
بعد از تهران اولی < بذار

H:Shojaei
پنج شنبه 14 خرداد 1394, 19:19 عصر
چطور میشه تگ a رو یا همون href رو به صورت صحیح نوشت تا از نظر امنیتی ایرادی نداشته باشه؟؟ اینجوری میخوام بنویسم اما تو url هم همینو میده ایا مشکلی نداره؟؟

<a href="contentttcopy.php?city/تهران" > تهران</a>
خیر مشکلی نداره از چه نظر میگید امنیتی؟!

ساراعلی
پنج شنبه 14 خرداد 1394, 19:20 عصر
بعد از تهران اولی < بذار
اینجا چپ نشون میده غیر از این راهنمایی دیگه نداشتید

ساراعلی
پنج شنبه 14 خرداد 1394, 19:25 عصر
خیر مشکلی نداره از چه نظر میگید امنیتی؟!
نمیدونم به نظر شما خصوصیت href اینطوری که من نوشتم و و تو url صفحه همینو مستقیم میاره درسته؟

H:Shojaei
پنج شنبه 14 خرداد 1394, 19:33 عصر
البته اگر آدرس دهی کامل رو همیشه رعایت کنید که بهتره و باز این ربطی به امنیت نداره و تو حالت کلی این روش
بله همین درسته...

hamedarian2009
پنج شنبه 14 خرداد 1394, 19:33 عصر
خب نشون بده ربطی به امنیت نداره منظورتون اینه کاربر از محتوای href باخبر نشه خوب وقتی رو لینک بزنه میره به همون آدرس دیگه و باخبر میشه فقط برای ارسال پارامتر به یک صفحه دیگه به روش GET باید در سمت صفحه دریافت کننده پارامتر روی مقدارش موارد امنیتی رو رعایت بفرمایید

ساراعلی
پنج شنبه 14 خرداد 1394, 19:41 عصر
خب نشون بده ربطی به امنیت نداره منظورتون اینه کاربر از محتوای href باخبر نشه خوب وقتی رو لینک بزنه میره به همون آدرس دیگه و باخبر میشه فقط برای ارسال پارامتر به یک صفحه دیگه به روش GET باید در سمت صفحه دریافت کننده پارامتر روی مقدارش موارد امنیتی رو رعایت بفرمایید

منظورتون از موارد امنیتی چیه؟برای گرفتن مقدارش من اینجوری نوشتم منظورتون رد کردن از فیلتر هست؟


if(isset($_GET['city'])){
$city=$_GET['city']; $con=mysql_connect("localhost","root","");
mysql_select_db("startup2");
if (!$con){ die("no conn: <br />" . mysql_error()); } mysql_query("SET CHARACTER SET utf8");

$sql ="SELECT * FROM `client`". "WHERE selectcity = N'$city'". "AND approv=1 ORDER BY id DESC";
$result = mysql_query($sql);
if (!mysql_query($sql,$con)){ die('erro: <br />' . mysql_error());}

imohammad
جمعه 15 خرداد 1394, 17:08 عصر
از mysqli یا pdo استفاده کن، این روش منسوخ شده
ولی اگه اسرار داری از این روش استفاده کنی

$city=$_GET['city'];
رو با

$city=mysql_real_escape_string($_GET['city']);
عوض کن یه مقدار امنیتش بیشتر میشه