рд╣рдо LJ / LI рдореЗрдВ рдкреЛрд╕реНрдЯ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдВрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд░рддреЗ рд╣реИрдВ

рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рджреЗрдЦреАрдВ рдЬреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВрдЧреА рдХрд┐ рдореБрдЭреЗ рдЕрдкрдиреЗ рдЖрдЧрдВрддреБрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреИрд╕реЗ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╡реЗ рд╕рднреА рдмрд╣реБрдд рдЕрдЬреАрдм рдереЗ рдФрд░ рдХреБрдЫ рдЬрдЧрд╣реЛрдВ рдкрд░ рдореЗрд░реЗ рд▓рд┐рдП рдЕрддреБрд▓рдиреАрдп рдЪреАрдЬреЛрдВ рдХреА рдорд╛рдВрдЧ рдХреАред
рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдкреВрд░реЗ рдЬреАрд╡рди рдореЗрдВ рдкрд░реНрд▓ рдореЗрдВ рд▓рд┐рдЦрд╛ рдерд╛, рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЪреАрдЬреЗрдВ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЪрд▓ рд░рд╣реА рд╣реИрдВред
рдХрд╛рд░реНрдп рд╕реНрд╡рдпрдВ рддреБрдЪреНрдЫ рд╣реИ рдФрд░ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╕рд░рд▓ рд╣реИред рдЦрд╛рд╕рдХрд░ PHP рдореЗрдВред
рд▓реЗрдХрд┐рди рдореБрдЭреЗ PHP рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИред рдФрд░ рдореЛрддреА рдХрднреА рднреА рд╡реЗрдм рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП, рд╢рд╛рдо рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдлреЗрдВрдХрд╛ рдЧрдпрд╛:



#!/usr/bin/perl -w #    use strict; use warnings; use CGI::WebOut(1); use Mail::Mailer; #   my( $topic , $date , $ref , $flag , $tmp ); my( $query , $pair , $name , $value , $input ); my @pairs; my %input; my( $to_address , $subject , $mailer , $body , $from_address ); $date = `/bin/date "+%Y-%m-%d %H:%M"`; #         $to_address = 'info@microsoft.com'; #    $from_address = 'abuse@microsoft.com'; #    $flag = 0; #   if( $ENV{'REQUEST_METHOD'} eq 'GET' ){ #   $query=$ENV{'QUERY_STRING'}; } elsif( $ENV{'REQUEST_METHOD'} eq 'POST' ){ sysread( STDIN , $query , $ENV{'CONTENT_LENGTH'}); } $ref = $ENV{'HTTP_REFERER'}; #    @pairs = split( /&/ , $query ); #    foreach $pair ( @pairs ){ ( $name , $value ) = split( /=/ , $pair ); # 1=1 () if( defined( $name )){ #    if( !( defined( $value ))){ #    next; #   } } $value =~ tr/+/ /; #     $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex())/eg; #  $value =~ s/<!--(.| )*-->//g; #   ( ? =) $input{$name} = $value; #   if( $name ne 'topic' ){ #   Topic? if( $flag == 0){ #     0 ? $flag = 0; #   ! } } if( $name eq 'topic' ){ # !    ! $topic = $value; #   $body .= "Topic: $topic\n"; #     $flag++; #     } #    ,    - , #     # if( $name eq 'mail' ){ # if( !(length( $value ))){ # $value = 'info@microsoft.com'; # } # } } if( !( defined( $flag ))){ ololo(); } #    (  ?       ! if( !( defined( $value ))){ ololo(); } #  ... if( $flag == 0 ){ ololo(); } #      if( defined( $ENV{'REMOTE_ADDR'} )){ $body .= "Remote address: $ENV{'REMOTE_ADDR'}\n"; #     ! } else{ $body .= "Remote address is unknown\n"; #  ... } if( defined( $ENV{'REMOTE_HOST'} )){ $body .= "Remote host: $ENV{'REMOTE_HOST'}\n"; #     } else{ $body .= "Remote host is unknown\n"; #       } if( defined( $ref )){ $body .= "Referer: $ref\n"; #    ! } else{ $body .= "Referer is unknown\n"; #    } $body .= "Date: $date\n"; #   $subject = "$topic at $date"; #    $mailer = Mail::Mailer->new(); #     $mailer->open({ From => $from_address, #  To => $to_address, #  Subject => $subject, #   }) or ololo(); # print "Can't open: $!\n"; # ,   ...    print $mailer $body; # ... $mailer->close(); sub ololo{ #    undef @pairs; undef %input; undef $topic; undef $date; undef $ref; undef $flag; undef $tmp; undef $query; undef $pair; undef $name; undef $value; undef $input; undef $to_address; undef $subject; undef $mailer; undef $body; undef $from_address; exit 0; } 


Inhtaccess рдореЗрдВ, рдореИрдВрдиреЗ рдпрд╣ рд▓рд┐рдЦрд╛ рд╣реИ:
Options +Includes +ExecCGI
рдЕрдкрдиреЗ рдПрд▓рдЬреЗ рд░рд┐рдХреЙрд░реНрдб рдореЗрдВ, рдореИрдВ рдЗрд╕ рддрд░рд╣ рдХреА рдмрд╛рдд рд▓рд┐рдЦрддрд╛ рд╣реВрдВ:
 <div style="display:none"> <img src="http://myserver.ru/lj.pl?topic=PLAZMOTRON" width=1> </div> 
<div style="display:none"> <img src="http://myserver.ru/lj.pl?topic=PLAZMOTRON" width=1> </div>

рдЬрд╣рд╛рдБ
  1. lj.pl - рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдирд╛рдо
  2. рд╡рд┐рд╖рдп - рдЖрдкрдХреЗ рд╡рд┐рд╖рдп рдХрд╛ рдирд╛рдо рдЬреЛ LiveJournal рдореЗрдВ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рддрд╛ рд╣реИ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, PLAZMOTRON)


рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдПрдХ рдЬрд┐рдлрд╝ рдбрдореА рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рджреА рдЬрд╛рдПрдЧреА, рд▓реЗрдХрд┐рди рдпрд╛ рддреЛ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдХрд╛рдлреА рдЖрдзреБрдирд┐рдХ рдмреНрд░рд╛рдЙрдЬрд╝рд░ (рдлрд╝рд╛рдпрд░рдлрд╝реЙрдХреНрд╕ 3.6.17) рд╣реИ, рдпрд╛ рдореИрдВ рдХреБрдЫ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдирд╛ рдХреЛ рд░реЛрд╢рди рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд╛рдлреА рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИред
рдЗрд╕рдХреЗ рд▓рд┐рдП рдордЬрд╝рд╛, рдЖрдк рдПрдХ рдХрд╛рдЙрдВрдЯрд░ рдпрд╛ рдХреБрдЫ рдФрд░ рдЙрдкрдпреЛрдЧреА рдЪрдХрд╛рдЪреМрдВрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ рдЙрджрд╛рд╣рд░рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ рдЬреЛ рдкрд░реНрд▓ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╡реЗрдм рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ (рдпрд╣ рд╕рд┐рд░реНрдл рдореЗрд░реЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ)ред
рдореЗрд╕рди рдпрд╛ CGI рдЬреИрд╕реЗ рд░рд╛рдХреНрд╖рд╕реА рдореЙрдбреНрдпреВрд▓ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рддрд░реАрдХрд╛, 500 рд╡реАрдВ рддреНрд░реБрдЯрд┐ рд╕реЗ рдмрдЪрдирд╛ рдФрд░ рд╕рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдкреНрд░рд┐рдВрдЯ "рдЯреЗрдХреНрд╕реНрдЯ / рд╕рд╛рджреЗ \ n \ n";

рдЖрдкрдХрд╛ рдзрдиреНрдпрд╡рд╛рдж

Source: https://habr.com/ru/post/In122013/


All Articles