Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Binærsøk i kombinasjon med SQL Injection

2 views
Skip to first unread message

Sverre H. Huseby

unread,
Aug 26, 2003, 11:38:31 AM8/26/03
to
Når man kjeder seg finner man på rare og tildels unyttige ting, som
feks. dette her:

http://shh.thathost.com/text/binary-search-sql-injection.txt


Sverre.

--
s...@thathost.com
http://shh.thathost.com/

Frank T. Rambøl

unread,
Aug 26, 2003, 12:34:10 PM8/26/03
to
Sverre H. Husebys fingre fremførte følgende fornøyelige frase:

> Når man kjeder seg finner man på rare og tildels unyttige ting, som
> feks. dette her:

Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
inneholder slikt som dette:

======
$s =~ s/([\000-\037\177-\377<>\"\#%{}|\\^~\[\]\`;\/?:@=&+])/
sprintf("%%%02X", ord($1))/ge;
$s =~ s/ /+/g;
======

--
When I'm fighting, it's like the whole world goes away.
I only know one thing: that I'm gonna win, and they're gonna lose.
I *like* that feeling.

Sverre H. Huseby

unread,
Aug 26, 2003, 12:39:33 PM8/26/03
to
[Frank T Rambøl]

| Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
| inneholder slikt som dette:

Mulig LWP med venner har funksjonalitet for å gjøre URL-encoding, men
siden jeg ikke er ekspert på Perl-moduler, plukker jeg fram mine
eldgamle (pre LWP) kodebiter isteden.


Sverre - som tildels er frosset fast i Perl 4 -tankegang.

--
s...@thathost.com
http://shh.thathost.com/

Alf P. Steinbach

unread,
Aug 26, 2003, 12:39:54 PM8/26/03
to
On Tue, 26 Aug 2003 16:34:10 GMT, "Frank T. Rambøl" <ne...@d-fect.com> wrote:

>Sverre H. Husebys fingre fremførte følgende fornøyelige frase:
>
>> Når man kjeder seg finner man på rare og tildels unyttige ting, som
>> feks. dette her:
>
>Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
>inneholder slikt som dette:
>
>======
> $s =~ s/([\000-\037\177-\377<>\"\#%{}|\\^~\[\]\`;\/?:@=&+])/
> sprintf("%%%02X", ord($1))/ge;
> $s =~ s/ /+/g;
>======

Det er slik _ekte_ kode ser ut. ;-)

Hva er ellers din forklaring på at det heter "kode"?


XPOST: no.alt.frustrasjoner

Terje Kvernes

unread,
Aug 26, 2003, 1:11:49 PM8/26/03
to
"Frank T. Rambøl" <ne...@d-fect.com> writes:

> Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
> inneholder slikt som dette:
>
> ======
> $s =~ s/([\000-\037\177-\377<>\"\#%{}|\\^~\[\]\`;\/?:@=&+])/
> sprintf("%%%02X", ord($1))/ge;
> $s =~ s/ /+/g;
> ======

det er ingenting som tilsier at en _må_ skrive slikt i perl. du må
gjerne foreslå et mer lesbart alternativ, gjerne i C eller Java om
du vil.

--
Terje

Bjorn Borud

unread,
Aug 26, 2003, 1:52:39 PM8/26/03
to
[s...@thathost.com (Sverre H. Huseby)]

|
| Sverre - som tildels er frosset fast i Perl 4 -tankegang.

da ville jeg anbefale at de skrur ned termostaten din så du ikke tiner
før verden er ferdig med Perl 6 og Larry er trygt plassert i rom med
polstrede vegger så han *aldri*, *aldri*, *aldri* kan designe språk
igjen.

tre store revisjoner -- og så klikker det for dem. merk mine ord.

:-)

-Bjørn
--
«They should make the 5 Miss Universe finalists do "The Weakest Link"
with Anne Robinson. The winner goes away with the crown, the rest
leave with nothing.»
-- Cynthia Smith

Bjørn Furuknap

unread,
Aug 26, 2003, 2:07:35 PM8/26/03
to
Frank T. Rambøl wrote:
> Sverre H. Husebys fingre fremførte følgende fornøyelige frase:
>
>> Når man kjeder seg finner man på rare og tildels unyttige ting, som
>> feks. dette her:
>
> Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
> inneholder slikt som dette:
>
> ======
> $s =~ s/([\000-\037\177-\377<>\"\#%{}|\\^~\[\]\`;\/?:@=&+])/
> sprintf("%%%02X", ord($1))/ge;
> $s =~ s/ /+/g;
> ======

Du må jo ikke, men det gjør jo hverdagen mer interessant, da.

Bjørn


Kåre Olai Lindbach

unread,
Aug 26, 2003, 2:54:48 PM8/26/03
to
On Tue, 26 Aug 2003 18:07:35 GMT, "Bjørn Furuknap" <furu...@lit.no>
wrote:

Denne kan iallefall gjøre enkeltes hverdag mere spennende:

#!perl -wlp
use strict;
s;\s+$;;;y;<>/[-]{}()`';><\\]/[}{)('`;;($==y===c)>$-&&($-=$=);
@}=($_,@})}for(map$"x-(y---c-$-).reverse,@}){

(Ja, det er kjørbar kode ;-)

Alle variasjonene av y///c (egentlig tr///c) er en skjult måte å gjøre
length() på.

--
mvh/Regards
Kåre Olai Lindbach

Frank T. Rambøl

unread,
Aug 26, 2003, 5:24:09 PM8/26/03
to
Terje Kverness fingre fremførte følgende fornøyelige frase:

> det er ingenting som tilsier at en _må_ skrive slikt i perl. du må
> gjerne foreslå et mer lesbart alternativ, gjerne i C eller Java om
> du vil.

Mulig jeg vil, men det kommer ikke til å skje da jeg ikke kan.

Kjetil Torgrim Homme

unread,
Aug 26, 2003, 6:14:42 PM8/26/03
to
[Frank T. Rambøl]:

>
> Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
> inneholder slikt som dette:
>
> ======
> $s =~ s/([\000-\037\177-\377<>\"\#%{}|\\^~\[\]\`;\/?:@=&+])/
> sprintf("%%%02X", ord($1))/ge;
> $s =~ s/ /+/g;
> ======

denne koda er jo rett fram. i C ville ein sannsynlegvis initialisert
ein oppslagstabell med boolske i staden, eller brukt ein switch.
uansett ville koda verte mykje lenger utan å vere meir lettlest (IMO).

trur likevel eg ville droppa å vere så pinleg nøyaktig i kodinga, og
skrive

$s =~ s/([^\w ])/sprintf("%%%02X", ord($1))/ge;
$s =~ s/ /+/g;

--
Kjetil T. | read and make up your own mind
| http://www.cactus48.com/truth.html

The Sidhekin

unread,
Aug 26, 2003, 3:45:59 PM8/26/03
to
s...@thathost.com (Sverre H. Huseby) writes:

> [Frank T Rambøl]
>
> | Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
> | inneholder slikt som dette:

Ingenting. Det er derimot endel ting med Perl som gjør at en _kan_
skrive slike kodesnutter. Jeg setter pris på de tingene.

> Mulig LWP med venner har funksjonalitet for å gjøre URL-encoding, men
> siden jeg ikke er ekspert på Perl-moduler, plukker jeg fram mine
> eldgamle (pre LWP) kodebiter isteden.

LWP m/venner håndterer vel HTTP m/venner, ikke HTML. HTML::* og CGI
m/venner, derimot. Men best er likevel URI::Escape, tror du ikke? :-)


use URI::Escape;

# ... og senere ...

$s = uri_escape($s);


Det er i alle fall den "riktige" løsningen. Men URI::Escape følger
ikke med en vanlig perl-distribusjon, så i fall du ikke har den
installert, blir det litt mer jobb ... tør jeg foreslå en lettvint
løsning, her på denne gruppen?


use CGI (); # Hvis du ikke allerede gjør tilsvarende

# ... og senere ...

$s = CGI::escape($s);


Dessverre er ikke denne funksjonen dokumentert, så du risikerer at
den fjernes eller endres i nye versjoner av CGI-modulen. Ikke at jeg
tror det er sannsynlig, dog. Men du er ikke _sikker_. :-)

(Og for ordens skyld -- jeg vil oppfordre til at du pensjonerer
disse "eldgamle" kodebitene. Den biten som ble sitert her så ikke
helt bra ut, og den er vel neppe den eneste.)


> Sverre - som tildels er frosset fast i Perl 4 -tankegang.

Alternativt kan du jo vente noen måneder til, så kan du hoppe rett
over på Perl 6. Slipper alt bryet med Perl 5 :-)


-SK-
--
perl -e 'print "Just another Perl ${\(trickster and hacker)},";'

The Sidhekin *proves* Sidhe did it!

Sturla Molden

unread,
Aug 27, 2003, 3:45:22 AM8/27/03
to
Frank T. Rambøl wrote:

> Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
> inneholder slikt som dette:
>
> ======
> $s =~ s/([\000-\037\177-\377<>\"\#%{}|\\^~\[\]\`;\/?:@=&+])/
> sprintf("%%%02X", ord($1))/ge;
> $s =~ s/ /+/g;
> ======


Det er ikke uten grunn at Perl sies å være en forkortelse
for "Pathologically Eclectic Rubbish Lister".


S.M.


Terje Kvernes

unread,
Aug 27, 2003, 3:46:48 AM8/27/03
to
"Frank T. Rambøl" <ne...@d-fect.com> writes:

> Terje Kverness fingre fremførte følgende fornøyelige frase:
>
> > det er ingenting som tilsier at en _må_ skrive slikt i perl. du
> > må gjerne foreslå et mer lesbart alternativ, gjerne i C eller Java
> > om du vil.
>
> Mulig jeg vil, men det kommer ikke til å skje da jeg ikke kan.

vel, da ville jeg ikke klaget over hvordan perl ser ut.

--
Terje

Espen Vestre

unread,
Aug 27, 2003, 5:12:22 AM8/27/03
to
"Frank T. Rambøl" <ne...@d-fect.com> writes:

> Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
> inneholder slikt som dette:

Du har definitivt ikke sett _virkelig_ kryptisk perl-kode :-)
--
(espen)

Thore Harald Høye

unread,
Aug 27, 2003, 5:30:01 AM8/27/03
to
In article <Xns93E3BA926...@news.online.no>, Frank T. Rambøl wrote:
>
> Hva er det med perl som gjør at en må skrive kodesnutter som bl.a.
> inneholder slikt som dette:
>
>======
> $s =~ s/([\000-\037\177-\377<>\"\#%{}|\\^~\[\]\`;\/?:@=&+])/
> sprintf("%%%02X", ord($1))/ge;
> $s =~ s/ /+/g;
>======

Den er jo bare kryptisk om ikke man kan Perl. Lisp er kryptisk for meg,
men jeg tror folk som sier at det ikke er noe problem å lese for de som
kan det.

e...@ekj.vestdata.no

unread,
Aug 27, 2003, 5:52:10 AM8/27/03
to

Niks. Den er *uforståelig* for folk som ikkje kan perl. Kan du perl kan
du greie å tolke linjestøyen. Du må lese det *mange* gangar og *grundig*
for å forsikre deg om at det betyr nøyaktig det du ved første øyekast
trur det betyr sjølv om du er ganske så flink i perl.

Skriv du program i perl opplever du ofte at du må bruke tid på å skjønne
kva ei linje betyr, sjølv om du sjølv er den som skreiv linja, for eit
halvår sidan.


mvh,
Eivind Kjørstad

Arne Georg Gleditsch

unread,
Aug 27, 2003, 5:53:37 AM8/27/03
to
* The Sidhekin

> Alternativt kan du jo vente noen måneder til, så kan du hoppe rett
> over på Perl 6. Slipper alt bryet med Perl 5 :-)

Noen måneder, ja. Nettopp. :)


Arne.

Kåre Olai Lindbach

unread,
Aug 27, 2003, 6:07:27 AM8/27/03
to

Da bør man, som meg, holde seg til noe mere forståelig (les
C-lignende) syntaks i Perl.

Det er _det_ jeg like best med Perl, det at man kan skrive saker og
ting på mange forskjellige måter.

Noen spesielle funksjoner skriver jeg relativt kryptisk, fordi de
sitter i ryggmargen. Dog er jeg usikker på funksjonalitet og dataflyt,
skriver jeg mere forståelig, og _eventuelt_ gjør dette om til knappere
kode.

Obfuscating (vanskeliggjøre/ulesbargjøre kode), samt golfing (skrive
en gitt funksjonalitet/oppgave med så få tegn som mulig, whitespace
inkludert) er underholdning. Det er ikke for produksjonskode, men for
trimming av Perl-kunnskap og kreativitet.

Kåre Olai Lindbach

unread,
Aug 27, 2003, 6:21:57 AM8/27/03
to
On Wed, 27 Aug 2003 11:53:37 +0200, Arne Georg Gleditsch
<arg...@linpro.no> wrote:

>* The Sidhekin
>> Alternativt kan du jo vente noen måneder til, så kan du hoppe rett
>> over på Perl 6. Slipper alt bryet med Perl 5 :-)

Perl5 vil leve i beste velgående, både som OS-avhengig program, og på
(*) den virtuelle plattformen Parrot, som Perl6 skal gå på. Parrot er
oppe og går i en 0.0.x-versjon, om jeg ikke tar feil.

>Noen måneder, ja. Nettopp. :)

Han sa ikke hvilken planet det gjaldt!

Det er allerede mulig å skrive i Perl6, for å studere funksjonalitet
etc. Dog ville jeg ventet minst 1-2 år for produksjon. Alle
spesifikasjonene av kjerne-funksjonaliteten er enda ikke på plass.
Det kian dog hende saker og ting går raskt etterhvert som de viktigste
komponentene faller på plass.

(*) Eget prosjekt igangsatt, ledet av det britiske firmaet Fatango,
mener jeg, og med stramme tidsfrister.

Terje Kvernes

unread,
Aug 27, 2003, 6:37:27 AM8/27/03
to
Kåre Olai Lindbach <barb...@online.no> writes:

[ ... ]

> Perl5 vil leve i beste velgående, både som OS-avhengig program, og
> på (*) den virtuelle plattformen Parrot, som Perl6 skal gå
> på. Parrot er oppe og går i en 0.0.x-versjon, om jeg ikke tar feil.

Parrot fungerer helt fint, og er en veldig interessant plattform med
tanke på continuations og mye annet snadder. <url: http://www.sidhe
.org/~dan/blog/ > er veldig kjekk å lese.

[ ... ]

--
Terje

Terje Kvernes

unread,
Aug 27, 2003, 6:46:31 AM8/27/03
to
Kåre Olai Lindbach <barb...@online.no> writes:

[ om å få uleselig perl servert ]

> Da bør man, som meg, holde seg til noe mere forståelig (les
> C-lignende) syntaks i Perl.

nuvel. dersom jeg ser:

if (! $test ) {
foo()
}

i perlkode, så reagerer i hvert fall jeg. det er langt mer naturlig
å skrive

foo() unless $test;

det varierer med kontekst, men det er mange slike C-ismer som
virkelig ikke har noe plass i perlkode. spesielt er følgende
forjævelig å lese:

for ($i=0; $i <= $#array; $i++) {
my $elm = $array[$i];
}

> Det er _det_ jeg like best med Perl, det at man kan skrive saker og
> ting på mange forskjellige måter.

personlig liker jeg perl mye av samme grunn som jeg liker Lisp,
språket forsøker ikke fortelle deg hva som er rett tankebane, du får
bare en veldig store verktøykasse å jobbe med.



> Noen spesielle funksjoner skriver jeg relativt kryptisk, fordi de
> sitter i ryggmargen. Dog er jeg usikker på funksjonalitet og
> dataflyt, skriver jeg mere forståelig, og _eventuelt_ gjør dette om
> til knappere kode.

en viss transformering kommer en i hu. :-)

[ ... ]

--
Terje

Thore Harald Høye

unread,
Aug 27, 2003, 6:50:44 AM8/27/03
to
In article <Pine.LNX.4.50.03082...@stundenspater.localdomain>, e...@ekj.vestdata.no wrote:

> Niks. Den er *uforståelig* for folk som ikkje kan perl. Kan du perl kan
> du greie å tolke linjestøyen. Du må lese det *mange* gangar og *grundig*
> for å forsikre deg om at det betyr nøyaktig det du ved første øyekast
> trur det betyr sjølv om du er ganske så flink i perl.

Det er ikke noe problem å se at de to linjene i kombinasjon er ment å
URL-enkode en streng, men det er selvsagt mye pga. den siste linjen. For
å vurdere om de gjør det riktig må man selvsagt studere litt mer. Jeg
hadde nok gjort det på en måte som liknet mer på den Homme viste, og
så satt en "URL-encode string"-kommentar over.

> Skriv du program i perl opplever du ofte at du må bruke tid på å skjønne
> kva ei linje betyr, sjølv om du sjølv er den som skreiv linja, for eit
> halvår sidan.

Vel, egentlig ikke. Det er bare å passe på å kommentere de litt mer
finurlige tingene, og gjøre liknende ting på samme måte hver gang.

Frank T. Rambøl

unread,
Aug 27, 2003, 6:52:22 AM8/27/03
to
Terje Kverness fingre fremførte følgende fornøyelige frase:

> vel, da ville jeg ikke klaget over hvordan perl ser ut.

Jeg klagde ikke, jeg kom med et spørsmål.

Kåre Olai Lindbach

unread,
Aug 27, 2003, 6:53:09 AM8/27/03
to
On Wed, 27 Aug 2003 12:37:27 +0200, Terje Kvernes
<ter...@math.uio.no> wrote:

>Kåre Olai Lindbach <barb...@online.no> writes:
>
> [ ... ]
>
>> Perl5 vil leve i beste velgående, både som OS-avhengig program, og
>> på (*) den virtuelle plattformen Parrot, som Perl6 skal gå
>> på. Parrot er oppe og går i en 0.0.x-versjon, om jeg ikke tar feil.
>
> Parrot fungerer helt fint, og er en veldig interessant plattform med
> tanke på continuations og mye annet snadder.

[rettet litt på siteringen, uheldig linjeskift ;-)]


> <url: http://www.sidhe .org/~dan/blog/ > er veldig kjekk å lese.

Uff, jeg ser jeg ga ett litt feil inntrykk av Parrot.

Parrot har egen hjemmeside og alt:
<URL: http://www.parrotcode.org/>

Dog blir det sikkert endring i denne også, for å ta med
seg/effektivisere spesielle funksjonaliteter i overliggende
applikasjoner.

(Som en sidebemerkning, så er det ikke uten grunn at Parrot heter
Parrot: det gjenspeiler på den "norske" døde papegøyen i en Monty
Python-sketsj. Hvor skriptspråket Python har fått navnet sitt fra
overlater jeg som en prøvelse til leserne)

Oj, hvor ble det av On-Topic i nisd, nå :)

0 new messages