mboost-dp1

unknown

TuxTimes 49 dages grænse brudt

- Via tuxtime.dk -

Nu er der endelig kommet en ny version af TuxTimes windows client så også windows brugere kan vise deres uptime på over 49 dage. Brian “Tres`ni” Hartvigsen har lavet en patch der gør at fejlen skulle være fikset.





Gå til bund
Gravatar #1 - pdad
1. jul. 2002 12:06
er den win9x kombitabel ?

(HAHAHA)
Gravatar #2 - funkymonkey
1. jul. 2002 12:07
]lyden af min næve i dit ansigt[
Gravatar #3 - sKIDROw
1. jul. 2002 12:07
Syntes godtnok heller ikke det så så godt ud for Windows, men nu kender jeg så grunden.. ;o)
Gravatar #4 - zakarun
1. jul. 2002 12:34
Ja, se'fø'li er den win9x compatible :)

Det er jo generalt seje programmørere som har lavet tuxtime.dk (shameless pun intended - see my nick ;)

Anyway, vi glæder os til at se nogle WinBoxe med den syge uptime....
Gravatar #5 - SilverWolf
1. jul. 2002 12:41
Ja, DET VAR FAMDME PÅ TIDE!

Så kan i godt se jer slået, ( SKynder sig at skrive til badedyr og få tuxtime op på WinNT svinet ).

Den river førstepladsen ned med det samme!

ps .Det kan da ikke tage så lang tid at rette en fejl, i har jo vist den har været der i uendelige tider.
Gravatar #6 - zakarun
1. jul. 2002 13:01
Silver => Well, nu er vi ikke lige en bunke Windows programmørere, og bare spørg Wine-folkene om hvor svært det er at finde rundt i Win32 API'er... anyway, nu er det fixet, så det er nu I skal vælte top10 listen (heh)

Btw - hvorfor skrive til Badedyr... du kan da bare ssh'e derover og fixe det selv.... :P
Gravatar #7 - SilverWolf
1. jul. 2002 13:29
Det Windows... Tag dig sammen ;o)))))) Der er ikke sådan nogle geniale ting "standard" indbygget.

Windows er et suxy server system, kun Linux Dur.
Gravatar #8 - maj
1. jul. 2002 13:31
Der er langt fra at vide hvad fejlen er, og så til at kode en ny windows applikation. Ingen af os er Windows-kodere, og jeg formoder heller ikke at nogen af os har lyst til at blive det.

Vi valgte den bedste løsning vi kunne finde, nemlig at frigive kildekoden så folk med viden om windows kunne finde en løsning på problemet - hvilket nu er sket.
Gravatar #9 - maj
1. jul. 2002 13:31
SilverWolf.. SSH er ikke en del af Linux..
Gravatar #10 - sKIDROw
1. jul. 2002 14:23
Gentag efter mig:

Linux er en kerne

Linux er en kerne
Linux er en kerne
Linux er en kerne
Linux er en kerne

;o)
Gravatar #11 - Bish
1. jul. 2002 15:54
#8:
ehm... Men hvor stor var fejlen reelt? Synes at det var lidt sjovt at programmet åbenbart holdt op med at fungere efter 49 dage. Et hurtigt regnestykke bekræftede min mistanke:
49 * 24 * 3600 * 1000 = 4233600000
2 ^ 32 = 4294967296

Drejer det sig ikke bare om at I oprindeligt havde gemt oppetiden (i millisekunder) i en kun 32 bits variabel, som altså kun kan indeholde tiden for ca. 49 dage? En lidt tam fejl, som I vel ikke rigtigt kan sende videre til "kryptiske Windows-APIer"... :)
Gravatar #12 - wk
1. jul. 2002 16:03
Det kommer an på en par enkelte ting ..

Hvis de har brugt GetTickCount() så har de været begrænset til en 32bit integer selvom de måske har brugt en 64bit integer.

Med QueryPerformanceCounter (med QueryPerformanceFrequency) ville det ikke være et problem, da den returnerer en 64bit integer.

Men ja, jeg er til dels enig, det var nok en programmerings fejl :) Og endda af samme som var i Windows 9x kernelen, nemlig at den crashede efter 49.7 dage ;)

[edit]
Jeg nossede faktisk i det :) QueryPerformanceCounter er KUN til præcis timing. Jeg tror ikke at den kan bruges til at måle hvornår systemet er startet. Under NT kernelen kan man bruge HKEY_PERFORMANCE_DATA, men jeg er faktisk ikke klar over hvordan under windows9x.

Sorry :)
[/edit]
Gravatar #13 - Sattie
1. jul. 2002 17:37
zakarun / SilverWolf

Nu var mit system et af de som havde rundet de 49.xxx dage..
Faktisk 150 og nogle dage
Så skrev programmet jo sjovt nok 49 dages uppe tid og en dag den næste dag... ikke lige fedt

og til silverwolf, bsd er bedre hvis du spørger mig..
Gravatar #14 - Kegle
1. jul. 2002 18:28
Uden at checke det, så mener jeg at QueryPerformanceCounter returnere ticks siden start.

På mange win2k maskiner bruges RDTSC instruktionen, som henter antallet af ticks i processoren siden start, og en 64bit int kan holde ca. 53 tusind dage på en 2ghz p4.
Gravatar #15 - zakarun
1. jul. 2002 19:39
wk => jeps - vi brugte GetTicksCount() som kun giver en 32bit integer... men nu bruger vi følgende kode:

LARGE_INTEGER freqs;

if(QueryPerformanceFrequency(&freqs) != 0)
{
LARGE_INTEGER counts;
QueryPerformanceCounter(&counts);
return (long unsigned int)
(counts.QuadPart/freqs.QuadPart);
}

// fallback
return (long unsigned int)(GetTickCount() / 1000);


- se fuld source på tuxtime.dk, under downloads (du skal logge ind først)
Gravatar #16 - zakarun
1. jul. 2002 19:40
SatCom => sikker på at du bruger den sidste nye version af vores Windows Client? (v1.2) - hvis ja, så stik mig lige dit brugernavn til tuxtime og computer ID

Og hvis du så har lyst til at debugge lidt med mig, så mail til mig (min mail står i about på tuxtime.dk)
Gravatar #17 - funkymonkey
1. jul. 2002 22:20
det kunne være sjovt hvis vi nu opdager en hvis fejl om 49 dage høhø
Gravatar #18 - Net-Meister
2. jul. 2002 08:32
Lisså snart at jeg får Inet ind på min egen putta skal jeg nok lige få W2K op på top10 :) Altså om 800 dage eller sådan noget :D:D:D
Gravatar #19 - Sattie
2. jul. 2002 09:26
<STRONG>zakarun</STRONG>
Den gamle client kunne ikke, den nye client kan..
Dvs den virker på min win2k :)
Gravatar #20 - zakarun
2. jul. 2002 09:56
satcom => ok, jeg blev lige lidt nervøs dér :)
Gravatar #21 - FISKERQ
2. jul. 2002 12:56
Jeg har fundet lidt bugs:
Den skriver at den vil sende hvert 2. minut selvom jeg vælger hvert minut
Den skriver sendt og ikke send som det skal være.

Måske en mulighed for at se top10/sine egne stats/og lave nye computere via tuxtime programmet.
Gravatar #22 - sKIDROw
2. jul. 2002 13:42
#21 FISKERQ

Du er vist mere end velkommen, de er IKKE windows programmøre.
Så derfor supportere de ikke officielt den client.
Men vist alle i Windows brugere henter sovsen, kan i jo selv hacke lidt i koden... ;o)
Gravatar #23 - C#
2. jul. 2002 14:04
nu har i vel lavet så man ikke bare kan cheate ved at sende en høj value i uptime?

(altså i server delen)
Gravatar #24 - FISKERQ
2. jul. 2002 14:08
Gad vide om man kunne cracke windows til at vise en anden uptime? :D
Det er hvertfald ikke forsøgt endnu, efter hvad jeg ved af, men ingen kedede sig så meget vel. :D
Gravatar #25 - sKIDROw
2. jul. 2002 14:14
#23 #24

Well
Den Linux klienten henter det fra kernen selv...
Aner ikke hvordan Windows klienten virker... ;o)
Men hvis jeres Windows er så god, burde det jo ikke være aktuelt vel?... ;op
Gravatar #26 - FISKERQ
2. jul. 2002 14:15
Nogle der lige har en compiler? Gider sku ikke til at smide VS.NET ind nu.
Gravatar #27 - C#
2. jul. 2002 19:39
efter hvad jeg har set i sourcen er det da piece of cake at smide et hvilket som helst tal ind som uptime'en, så håber da der er bare en smule tjek på server siden af prog'et.
Gravatar #28 - C#
2. jul. 2002 19:42
[was som code se <STRONG>#46</STRONG>]

pille pille pille;

[was som code se <STRONG>#46</STRONG>]

ikke tested, ikke sikkert uptime string'en er i rigtigt format / ikke sikkert det virker med det pågældende prog, just wondering.

btw vildt meget sjap kode der ikke behøver være der :)
Gravatar #29 - sKIDROw
2. jul. 2002 19:50
Hmmm C# din slemme dreng!... heh
Men ja..
Det kan godt se ud som om det ville være mere retfærdigt, hvis der kun lå zip filer og tarballs med binaries... ;o)
JEg kan kun håbe folk har nosser nok til fairplay, og ikke lameragtige tabere som springer over hvor gærdet mangler... ;o)
Gravatar #30 - C#
2. jul. 2002 19:53
samme med bsd version'en utroligt nemt at ændre;[was some code se <STRONG>#46</STRONG>]linux ver'en gad jeg ikke røre ved, men sikkert det samme.

er det nu man skal nævne fordelene ved closed but free programs :]

skulle man så være mere kreativ (hvilket jeg ikke lige gidder være nu) så laver man da bare et prog der tager en fast færdig[edit: værdi], og smider tiden for 1 time oveni hver time, sætter klienten til at opdatere hver time, svært at modbevise).


ok kunne ikke lade være;linux ver'en // We're connected, and cheating
[was some code se <STRONG>#46</STRONG>]

:Dhvis der ikke er nogen kontrol på server app'et er det lidt for open in my opinion.
Gravatar #31 - zakarun
2. jul. 2002 20:22
hehe - I skulle bare vide hvor lange diskussioner vi har haft om at gå open source mht clienterne... anyway, siden protokollen bliver cracket før eller siden, så kunne vi ikke se det helt store i at holde sourcen lukket.

Lad os bare sige at serveren holder lidt styr på rigtigheden af folks uptime, men helt at undgå snyderi er umuligt (ellers vil vi da gerne høre idéer ;)
Gravatar #32 - C#
2. jul. 2002 20:26
men vil da være lidt svært at se om et andet prog sender et rigtigt "request" eller en der er ændret til et kunstigt højt oppetid?


hvis vi antager;
[was some code se <STRONG>#46</STRONG>]


at nUptime der indeholder 107023 (det min bærbare ligenu giver for): if (QueryPerformanceFrequency(&freqs) != 0) { LARGE_INTEGER counts; QueryPerformanceCounter(&counts); return (long unsigned int)(counts.QuadPart/freqs.QuadPart); }

det bliver jo direkte sendt videre

at jeg så f.eks bare går ind og sætter den til skal vi sige 210189 har i da svært ved at vide om det er rigtigt eller ej.

forslag; go closed source, brug encryption, det vil hvertfald stoppe say 90% af folk der vil cheate).
Gravatar #33 - Hektor
2. jul. 2002 20:30
#32 C#:
Den nemmeste måde at undgå at blive opdaget, er at modificere klienten, så den forskyder tiden med et fast tidsrum; på den måde vil den konstant rapportere en korrekt stigende oppetid. Eneste problem med det er at få den til at korrigere tidsforskydelsen i tilfælde af et maskinnedbrud, men det er også forholdsvis nemt at fikse med en log-fil af en art. Og holder snyderne sig til en realistisk forskydning (dvs. ingen win2k-opstart fra før 1997 osv.), så er det umuligt at fikse på server-siden.
Gravatar #34 - C#
2. jul. 2002 20:32
hektor se hvad jeg tidligere skrev;"skulle man så være mere kreativ (hvilket jeg ikke lige gidder være nu) så laver man da bare et prog der tager en fast færdig[edit: værdi], og smider tiden for 1 time oveni hver time, sætter klienten til at opdatere hver time, svært at modbevise)."

vi er enige der :)


eller lidt mere kreativt smide en linux box op der reporterer win2k uptime :D


[was some code se <STRONG>#46</STRONG>](weird ide btw :D) (og nej er egentligt ligeglad med det site / uptime :))
Gravatar #35 - Hektor
2. jul. 2002 20:36
#34 C#:
Hvorfor bruge Linux? Den rebooter du jo for at skifte kernel ... næh du - lad os bruge et eller andet, der kan skifte kernel uden at genstarte!
Gravatar #36 - C#
2. jul. 2002 20:38
:D

men er nu personligt ligeglad med uptime.
(ligefør man skulle tilbyde at lave en lidt mere clean client, fuck der er for vildt spagetti kode i win clienten )
Gravatar #37 - Hektor
2. jul. 2002 20:40
#36 C#:
"fuck der er for vildt spagetti[-]kode i win clienten"

Spaghetti-kode suger - ninja-kode styrer!
Gravatar #38 - sKIDROw
2. jul. 2002 21:34
=>Hektor

Med hensyn til at reboote grundet kernel update, well ja det er ret svært at slippe for...
Det er dog noget de hacker på... hehe
Dog kan man komme langt ved at lade de ting man gerne tit vil opgradere ligge ude som moduler.
Så er det jo dejlig nemt at unloade det gamle modul, og herefter loade det nye modul istedet... ;o)
Det du snakkede om at have set i BeOS er lidt af en præstation, som jeg ikke har set nogen overgå endnu.. ;o)
Men pricippet er i teorien 'bare' at nedfryse den kørende kernel, hvorefter du starter den nye op i parrellel med den gamle.
Nu gælder det så om at flytte alle processer over på den nye kernel.
Dette er der nogen linux hackere der arbejder ret seriøst på, men det skulle vist være lidt et mareridt at få til at spille... ;o)
Gravatar #39 - FISKERQ
2. jul. 2002 22:36
Man kunne vel lave noget ala gigabytes teknologi.
Hvis man updater kernel så smider den alle processer over på den anden kernel, bagefter opdaterer den ene kernel, smider processerne tilbage på den ene kernel, og så opdaterer den anden kernel.
Nok det sammen du snakkede om ovenover, men hvis gigabyte kan lave et i princippet samme ting, kan 'hackerene' vel også :)
Gravatar #40 - FISKERQ
2. jul. 2002 23:16
Jeg læste noget om at halflife speedhacks også fik tiden til at gå hurtigere for andre programmer. Det gør den. Sætter du den til så går tuxtime amok, måske lave en tjekke med hvor lang tid der er gået siden sidste update.

Tiden avancerer lige nu ca. 3 minutter pr. sekund
i kan se mine stats her:
http://tuxtime.dk/index.php?page=computer&id=3...
I må godt slette den bagefter, jeg har ingen intentioner i at snyde, bare at vise at det kan lade sig gøre
Gravatar #41 - Hektor
2. jul. 2002 23:39
#40 FISKERQ:
"User-added info: Windows XP Pro med Win XP Engelsk."

I modsætning til Windows XP Pro med Mac OS X Deutch?
Gravatar #42 - C#
2. jul. 2002 23:44
..
Gravatar #43 - FISKERQ
2. jul. 2002 23:56
Hektor jeg har bare skrevet Win XP Engelsk. det andet har jeg ikke selv smidt op.

Var sku mig, jeg må have stenet da jeg skrev det :DDD, men det er ændret nu.
Gravatar #44 - FISKERQ
3. jul. 2002 15:48
Nu er tuxtime.dk officielt 0wnet :(
Gravatar #45 - C#
3. jul. 2002 19:10
må man sige, så meget for "rimelig tjek" på server siden.

men de kører vel ip logning.
Gravatar #46 - mbp_
3. jul. 2002 20:45
C#: Vil du ikke venligst fjerne dit fine program? Du frister sarte sjæle (læs: script kiddies).
Gravatar #47 - C#
3. jul. 2002 22:36
happy now?

men er nu altså stadig SIMPELT at ændre i det source code i har til dload, bare man ved 0.1% af C++ (hvordan strings virker) kan man cheate.
Gravatar #48 - mbp_
4. jul. 2002 08:39
Tak.
Gravatar #49 - FISKERQ
4. jul. 2002 08:50
Ham der lavede den der 900 dage uptime med Leethaxor os, var bare noget han havde lavet hvor han skrev tallene og osnavnet ind. Han sagde han vil lave en autoregister så den registrerer automatisk og sender 900 dage uptimes. I bør nok se at gøre noget inden han får lavet det.
Gravatar #50 - mbp_
4. jul. 2002 08:56
Det er allerede gjort, vi har lavet de nødvendige foranstaltninger for at sådant angreb ikke vil lykkedes en anden gang. Forhåbentligt.
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login