one hacker alone
چهارشنبه 18 مرداد 1391, 01:33 صبح
سلام
یه برنامه ساده داره داده ها رو از بانک اطلاعاتی میخونه
اما جالبه که در ذخیره کردن داده در بانک من یه سری کد جاوا اسکریپت زدن و انتظار داشتم وقتی توی سایت واکشی میشه اون کد جاوا اجرا بشه xss اتفاق بیفته اما داده ها تا جایی چاپ میشن که کدjs هست
این از کد ذخیره در بانک که بدون اعتبار سنجی داده ها رو ذخیره میکنه
<?php
include 'DAL.php';
$name=$_GET['str_get'];
connect();
$str=select("insert into tbltest (name) value('$name')");
echo $str;
diconnect();
?>
این کد هم داده هارو چاپ میکنه
<?phpinclude 'DAL.php'; connect(); $cats=select("select * from tbltest "); diconnect(); while($rec=mysql_fetch_assoc($cats)) { print($rec["name"]); ?><br><?php }?>
خروجی من به شکل زیر هست
ali
ok
dfghrth
23542rfewfr
23542rfewfr'
arfwretr
union
ali
union
در حالی که در بانک اطلاعاتی مقادیر زیر هست
90922
یعنی از کد جاوااسکریپت دیگه داده واکشی نمیکنه
دلیلش چیه؟
یه برنامه ساده داره داده ها رو از بانک اطلاعاتی میخونه
اما جالبه که در ذخیره کردن داده در بانک من یه سری کد جاوا اسکریپت زدن و انتظار داشتم وقتی توی سایت واکشی میشه اون کد جاوا اجرا بشه xss اتفاق بیفته اما داده ها تا جایی چاپ میشن که کدjs هست
این از کد ذخیره در بانک که بدون اعتبار سنجی داده ها رو ذخیره میکنه
<?php
include 'DAL.php';
$name=$_GET['str_get'];
connect();
$str=select("insert into tbltest (name) value('$name')");
echo $str;
diconnect();
?>
این کد هم داده هارو چاپ میکنه
<?phpinclude 'DAL.php'; connect(); $cats=select("select * from tbltest "); diconnect(); while($rec=mysql_fetch_assoc($cats)) { print($rec["name"]); ?><br><?php }?>
خروجی من به شکل زیر هست
ali
ok
dfghrth
23542rfewfr
23542rfewfr'
arfwretr
union
ali
union
در حالی که در بانک اطلاعاتی مقادیر زیر هست
90922
یعنی از کد جاوااسکریپت دیگه داده واکشی نمیکنه
دلیلش چیه؟