Skrevet av Emne: Import/eksport av schematics etc. (var 'WalkingFrozen')  (Lest 17571 ganger)

Utlogget DJrasus

  • n00b
  • *
  • Innlegg: 11
  • Karma: +0/-0
  • Jeg Jobber For H.I.N.T
    • Vis profil
Import/eksport av schematics etc. (var 'WalkingFrozen')
« på: 19. Oktober 2015, 17:10 pm »
  • [applaud]0
  • [smite]0
  • Reminder om 
    Utlegg / lagring av mappet cretive ?
    « Siste redigering: 25. Oktober 2015, 18:05 pm av Floyd-ATC »


    WalkingFrozen

    Utlogget Floyd-ATC

    • Livstidsdiktator
    • Administrator
    • Guru
    • *****
    • Innlegg: 542
    • Karma: +12/-0
      • MSN Messenger - floyd@atc.no
      • Vis profil
      • floyd.atc.no
      • E-post
    Sv: WalkingFrozen
    « Svar #1 på: 24. Oktober 2015, 09:19 am »
  • [applaud]0
  • [smite]0
  • Har begynt å se på saken. Har fått på plass en prototyp på autentisering, autorisasjon, samt opp- og nedlasting av filer. Nå må jeg fundere litt på selve håndteringen av schematics og interaksjon med WorldEdit før jeg kommer videre.

    http://minecraft.atc.no/import_export.html


    -Floyd.

    --
    Det finnes 10 typer mennesker;
    de som forstår binærtall, de som ikke gjør det, og de som forstår Grey code.

    Utlogget Cybersyn

    • n00b
    • *
    • Innlegg: 2
    • Karma: +1/-0
      • Vis profil
      • localhost
    Sv: WalkingFrozen
    « Svar #2 på: 24. Oktober 2015, 12:42 pm »
  • [applaud]0
  • [smite]0
  • Hvordan har du tenkt til å løse dette? Hele kart er jo ganske store. Importdelen virker også interessant hvis det er slik det høres ut.



    Utlogget argh99

    • Minecraft-Operators
    • Wizard
    • ***
    • Innlegg: 360
    • Karma: +1/-0
      • Vis profil
      • 42
    Sv: WalkingFrozen
    « Svar #3 på: 24. Oktober 2015, 17:33 pm »
  • [applaud]0
  • [smite]0
  • Floyd?
    Hva er det man kan gjøre når man har logget inn på http://minecraft.atc.no/import_export.html?
    Står "Upload something" "Velg fil" under pluginsene til serveren :P


    42
    -

    Utlogget Cybersyn

    • n00b
    • *
    • Innlegg: 2
    • Karma: +1/-0
      • Vis profil
      • localhost
    Sv: WalkingFrozen
    « Svar #4 på: 24. Oktober 2015, 17:35 pm »
  • [applaud]0
  • [smite]0
  • Når jeg trykker på "Upload something"
    Sitat
    System error
    error:     Can't use an undefined value as a symbol reference at /home/floyd/public_html/minecraft.atc.no/import_export.html line 219.
    context:     
    ...     
    215:     
    216:     if ($cmd eq 'upload') {
    217:     my $q = $m->cgi_object;
    218:     my $fh = $q->upload('file');
    219:     binmode $fh;
    220:     print "<pre>\n";
    221:     while (read($fh, my $buf, 4096)) {
    222:     # print $buf;
    223:     }
    ...     
    code stack:     /home/floyd/public_html/minecraft.atc.no/import_export.html:219
    /home/floyd/public_html/minecraft.atc.no/autohandler:24
    raw error

    Can't use an undefined value as a symbol reference at /home/floyd/public_html/minecraft.atc.no/import_export.html line 219.


    Trace begun at /usr/local/share/perl5/HTML/Mason/Exceptions.pm line 125
    HTML::Mason::Exceptions::rethrow_exception('Can\'t use an undefined value as a symbol reference at /home/floyd/public_html/minecraft.atc.no/import_export.html line 219.^J') called at /home/floyd/public_html/minecraft.atc.no/import_export.html line 219
    HTML::Mason::Commands::__ANON__('cmd', 'upload', 'file', '') called at /usr/local/share/perl5/HTML/Mason/Component.pm line 135
    HTML::Mason::Component::run('HTML::Mason::Component::FileBased=HASH(0x7fb5d0496f20)', 'cmd', 'upload', 'file', '') called at /usr/local/share/perl5/HTML/Mason/Request.pm line 1302
    eval {...} at /usr/local/share/perl5/HTML/Mason/Request.pm line 1292
    HTML::Mason::Request::comp(undef, undef, undef, 'cmd', 'upload', 'file', '') called at /usr/local/share/perl5/HTML/Mason/Request.pm line 955
    HTML::Mason::Request::call_next('HTML::Mason::Request::ApacheHandler=HASH(0x7fb5d044bb40)') called at /home/floyd/public_html/minecraft.atc.no/autohandler line 24
    HTML::Mason::Commands::__ANON__('cmd', 'upload', 'file', '') called at /usr/local/share/perl5/HTML/Mason/Component.pm line 135
    HTML::Mason::Component::run('HTML::Mason::Component::FileBased=HASH(0x7fb5d037a108)', 'cmd', 'upload', 'file', '') called at /usr/local/share/perl5/HTML/Mason/Request.pm line 1297
    eval {...} at /usr/local/share/perl5/HTML/Mason/Request.pm line 1292
    HTML::Mason::Request::comp(undef, undef, undef, 'cmd', 'upload', 'file', '') called at /usr/local/share/perl5/HTML/Mason/Request.pm line 481
    eval {...} at /usr/local/share/perl5/HTML/Mason/Request.pm line 481
    eval {...} at /usr/local/share/perl5/HTML/Mason/Request.pm line 433
    HTML::Mason::Request::exec('HTML::Mason::Request::ApacheHandler=HASH(0x7fb5d044bb40)') called at /usr/local/share/perl5/HTML/Mason/ApacheHandler.pm line 168
    HTML::Mason::Request::ApacheHandler::exec('HTML::Mason::Request::ApacheHandler=HASH(0x7fb5d044bb40)') called at /usr/local/share/perl5/HTML/Mason/ApacheHandler.pm line 825
    HTML::Mason::ApacheHandler::handle_request('HTML::Mason::ApacheHandler=HASH(0x7fb5cf8366b8)', 'Apache2::RequestRec=SCALAR(0x7fb5d0494ba8)') called at (eval 52) line 8
    HTML::Mason::ApacheHandler::handler('HTML::Mason::ApacheHandler', 'Apache2::RequestRec=SCALAR(0x7fb5d0494ba8)') called at -e line 0
    eval {...} at -e line 0
    « Siste redigering: 24. Oktober 2015, 18:56 pm av BrutalOst »



    Utlogget Floyd-ATC

    • Livstidsdiktator
    • Administrator
    • Guru
    • *****
    • Innlegg: 542
    • Karma: +12/-0
      • MSN Messenger - floyd@atc.no
      • Vis profil
      • floyd.atc.no
      • E-post
    Sv: WalkingFrozen
    « Svar #5 på: 24. Oktober 2015, 18:55 pm »
  • [applaud]0
  • [smite]0
  • Det er ikke mulig å bruke den til noe som helst ennå.
    Det er nå mulig å laste NED filer.
    Opplasting, flytting og sletting av filer er ikke på plass ennå.

    Utfordring: Finn en måte å knekke sikkerheten, f.eks. for å laste ned "/etc/passwd" eller "/home/floyd/mc/server.properties" eller en annen fil du ikke skal ha tilgang til. Den som finner et sikkerhetshull og beskriver hvordan kan vente seg en belønning.
    « Siste redigering: 25. Oktober 2015, 09:47 am av Floyd-ATC »


    -Floyd.

    --
    Det finnes 10 typer mennesker;
    de som forstår binærtall, de som ikke gjør det, og de som forstår Grey code.

    Utlogget Floyd-ATC

    • Livstidsdiktator
    • Administrator
    • Guru
    • *****
    • Innlegg: 542
    • Karma: +12/-0
      • MSN Messenger - floyd@atc.no
      • Vis profil
      • floyd.atc.no
      • E-post
    Sv: WalkingFrozen
    « Svar #6 på: 25. Oktober 2015, 18:04 pm »
  • [applaud]0
  • [smite]0
  • Prototypen begynner å ta form. Det er derfor på tide å beskrive den litt sånn at dere kan bidra til å teste.

    Private schematics
    Dette er en slags "hjemmekatalog" for dine private filer. Ingen andre enn deg kan se disse filene.

    Public schematics
    Dette er et fellesområde hvor alle kan lese og skrive filer men kun ops/admins kan slette. Brukes til å dele filer.

    System schematics
    Kun ops og admins kan se dette området, det brukes av WorldEdit til å importere/eksportere data inn og ut av kartet. Tanken er at en spiller laster opp og kopierer en schematic til en op/admin som kopierer filen videre hit og bruker WorldEdit. Tilsvarende, ved eksport bruker op/admin WorldEdit til å lage en schematic som deretter kopieres til eieren for nedlasting.

    Server files
    Dette er ferdig kompilerte versjoner av Spigot som er vanskelige å få tak i pga DMCA. De er derfor tilgjengelige for innloggede brukere på denne måten. Nyttig hvis man ønsker å lage en egen server.

    Plugins
    Denne tror jeg er selvforklarende.

    For å laste ned en fil er det bare å klikke på den. Hver seksjon har i tillegg en nedtrekkmeny hvor man kan velge blant kommandoene man har tilgang til (og som gir mening). Kryss av for eventuelle filer og velg:

    • Copy to private
    • Copy to public
    • Copy to system
    • Copy to player (angi navn i eget felt)
    • Delete
    • Upload file (angi lokal fil)
    Klikk deretter på Submit.

    MEN! Husk at for øyeblikket er det KUN NEDLASTING som fungerer.
    « Siste redigering: 25. Oktober 2015, 18:06 pm av Floyd-ATC »


    -Floyd.

    --
    Det finnes 10 typer mennesker;
    de som forstår binærtall, de som ikke gjør det, og de som forstår Grey code.

    Utlogget Cybersyn

    • n00b
    • *
    • Innlegg: 2
    • Karma: +1/-0
      • Vis profil
      • localhost
    Sv: Import/eksport av schematics etc. (var 'WalkingFrozen')
    « Svar #7 på: 25. Oktober 2015, 20:20 pm »
  • [applaud]0
  • [smite]0
  • Genialt!

    Jeg blir også veldig glad om kildekoden er åpen.



    Utlogget Floyd-ATC

    • Livstidsdiktator
    • Administrator
    • Guru
    • *****
    • Innlegg: 542
    • Karma: +12/-0
      • MSN Messenger - floyd@atc.no
      • Vis profil
      • floyd.atc.no
      • E-post
    Sv: Import/eksport av schematics etc. (var 'WalkingFrozen')
    « Svar #8 på: 26. Oktober 2015, 12:56 pm »
  • [applaud]0
  • [smite]0
  • Genialt!
    Jeg blir også veldig glad om kildekoden er åpen.

    Dette er en ganske sær løsning skrevet i HTML::Mason men hvis noen vil ha den når den er ferdig så legger jeg den ut. Det vil også kunne hjelpe de som er interesserte i å lete etter svakheter i sikkerheten.

    Opplasting skal nå fungere, dermed gjenstår kopiering og sletting. Igjen, test systemet for smutthull; du skal ikke kunne laste opp noe annet enn korrekt filtype til en path hvor du har skrivetilgang og du skal avvises med "Forbidden" ved forsøk på noe annet.

    Oppdatering: Sletting er nå implementert. Tips: Ikke slett ting før du har lastet dem ned og har mulighet til å laste dem opp igjen...

    Oppdatering: Da er også kopiering på plass. Med dette er alle planlagte funksjoner på plass og det er klart for at ops kan hjelpe spillere med å få schematics ut og inn som beskrevet lenger opp.

    BrutalOst: Systemet består i prinsippet av tre filer:
    • /home/floyd/mc/stuffserver
    • /home/floyd/mc/stuffclient
    • /home/floyd/public_html/minecraft.atc.no/import_export.html

    Den første kommer til å bli erstattet av en plugin så snart jeg får tittet litt på hvordan man lager en TCP-server i Java.
    Den andre kommer da til å bli erstattet med litt TCP-kode i den tredje filen.
    Når jeg kommer så langt har jeg en Plugin + en HTML-fil som kan publiseres. For de som ikke kan vente så hekter jeg HTML-filen på som attachment. NB!!! Dette er eksperimentell kode skrevet i Perl/HTML::Mason!!!
    « Siste redigering: 26. Oktober 2015, 19:10 pm av Floyd-ATC »


    -Floyd.

    --
    Det finnes 10 typer mennesker;
    de som forstår binærtall, de som ikke gjør det, og de som forstår Grey code.