Computer-Ag am WvS Blog der Computer-AG am Werner von Siemens Gymnasium Berlin

10. März 2017

10.3.2017

Filed under: Allgemein,Assembler,Lernserver,Raspberry PI,Schulnetzwerk,Termine,Tisch — Schlagwörter: — admin @ 15:59

Henry, Long Yang, Michael, Jannik, Morten und Angelo sind da.

Vom letzten Mal noch der Assembly-Code für ARM-Prozessor (Pi):

 

        .data
fmtstr:	.asciz	"%d: %d\n"

        .text
fib:
        cmp	r0, #1
        bxle	lr
        stmfd	sp!, {r3, r4, r5, lr}
        mov	r4, r0
        sub	r0, r0, #1
        bl	fib
        mov	r5, r0
        sub	r0, r4, #2
        bl	fib
        add	r0, r5, r0
        ldmfd	sp!, {r3, r4, r5, pc}

        .align	2
        .global	main
main:
        stmfd	sp!, {r3, r4, r5, lr}
        mov	r4, #0
        ldr	r5, =fmtstr
1:
        mov	r0, r4
        bl	fib
        mov	r2, r0
        mov	r0, r5
        mov	r1, r4
        bl	printf
        add	r4, r4, #1
        cmp	r4, #20
        bne	1b
        mov	r0, #0
        ldmfd	sp!, {r3, r4, r5, pc}

Der Pi war abgestürzt. Das PI-Passwort lässt sich nicht in was einfaches ändern.

Angelo hatte den GNU-Assembler für die PS2 debuggt.

AOE im Lan-Modus wird gespielt.

Nächsten Freitag normal.

 

3. März 2017

3.3.2017

Jannik, Michael, Henry und Angelo sind da. Michael und Henry erkunden die Computer im 206er. Jannik beschäftigt sich mit deep.io. Angelo macht ARM-Assembly.

Nachtrag 10.3.2017: Irgendwie wollten wir code hier platzieren, haben es aber nicht mehr geschafft beim letzten Mal.

 

19. November 2015

19.11.2015

Der Exploit läuft zwar irgendwie mit

[aleph1]$ ./exploit4 2148 600
Using address: 0xbffffb54
[aleph1]$ /usr/X11R6/bin/xterm -fg $EGG

Aber es bringt nichts. Angelo meint, dass das alles gefixt ist. Wir haben noch xterm kopiert und mit chmod u+s die suid auf root gesetzt. Bringt aber dennoch keine Root-Shell.

Lernserver geht nicht an …;

17. November 2015

17.11.2015

Filed under: Allgemein,Assembler,C,PHP,Tagesberichte,Termine,Tisch — admin @ 16:00

Morten und Martin sind da. Frank Oppermann macht dankenswerter Weise den Lernserver an. Der war beim letzten Mal irgendwie nicht richtig runtergefahren.

Martin liest ein Paper zu Stackoverflow und Exploits (von 1998 vermutlich). Das Ganze funktioniert schlussendlich mit einem Interrupt (0x80).

Morten programmiert mit PHP etwas, was aus zwei ähnlichen Dateien (beide kaputt), aus Datei 2 Bytes an die Stelle von Datei 1 schreibt, wo in Datei 1 ein 0-byte steht. 0x00 in Hex-Code wohl. Sind glaube ich nur 10 Zeilen Code oder so.

Martin kann Donnerstag erst um kurz nach 16:00 hier sein. Eventuell fangen wir dann erst um 15:00 an, wenn Colin und Julian nicht kommen.

Das Komplieren klappt irgendwie nicht. Nachdem ich noch

#include <getopt.h>
#include <string.h>

in eggshell.c eingebaut habe und eggshell.h nach /usr/bin/ld kopiert habe kommt mit

rob@lernserver:~/exploit_test$ gcc eggshell.c -l shellcode.h

eggshell.c: In function ‘main’:
eggshell.c:60:3: warning: format ‘%x’ expects argument of type ‘unsigned int’, but argument 2 has type ‘long int’ [-Wformat]
/usr/bin/ld: 4: /usr/bin/ld: char: not found
/usr/bin/ld: 5: /usr/bin/ld: char: not found
/usr/bin/ld: 6: /usr/bin/ld: \xeb\x1f\x5e\x89\x76\x08\x31\xc0\x88\x46\x07\x89\x46\x0c\xb0\x0b: not found
/usr/bin/ld: 7: /usr/bin/ld: \x89\xf3\x8d\x4e\x08\x8d\x56\x0c\xcd\x80\x31\xdb\x89\xd8\x40\xcd: not found
/usr/bin/ld: 8: /usr/bin/ld: \x80\xe8\xdc\xff\xff\xff/bin/sh: not found
/usr/bin/ld: 10: /usr/bin/ld: Syntax error: „(“ unexpected
collect2: ld returned 2 exit status

Donnerstag mehr …;

10. November 2015

10.11.2015

Filed under: Allgemein,Assembler,C,Schulnetzwerk,Tagesberichte,Termine,Tisch — admin @ 17:11

Morten ist da, Martin auch, Moritz und Johannes. Johannes will was mit App-Programmierung machen. Martin hat dazu ein Script (für seinen Kurs im letzten Jahr), den er mit einem Google-Drive-Link an uns alle verschickt hat. Er hat auch zwei Bücher dazu, die er mal mitbringen würde. Wir quatschen kurz über eine Studienaufgabe von Martin, mit C und read, write, open und close einen Papierkorb zu programmiern und ich (Robert) frage mich, ob man dazu überhaupt Arbeitsspeicher allozieren muss. Aber read ohne Buffer geht wohl nicht.

Am Donnerstag ist nicht, dafür dann wieder nächsten Dienstag und vermutlich auch nächsten Donnerstag.

6. März 2015

6.3.2015

Filed under: Allgemein,App,Assembler,Lernserver,Tagesberichte,Termine,Tisch — admin @ 15:52

Johannes war schon da. Angelo ist auch da. Ab nächste Woche machen wir nur noch freitags. Tsocks war übrigens das Programm, dass Angelo gesucht hatte. Das hatten wir schon mal auf dem Lernserver installiert.

Für Tunneln mit SSH gibt es auch MyEn-Tunnel.

Mit „ssh-keygen -t rsa“ ein Paar public-private-SSH-Key hergestellt. Den Public-Key bei bitbucket eingestellt und die .git/config entsprechend geändert (statt https auf git@bitbucket.org:<username>/<projectname>.git.

Robert hat seine App mit einem Icon versehen. Angelo versteht mehr vom Unix-Assembler für PDP11. Er überlegt noch, für welche Architektur er seinen Assembler schreiben soll.

Johannes meinte, er hätte lange nicht mehr 2048 gespielt. Robert erinnert sich, dass er das mal mit Javascript programmiert hatte.

Nächste Woche Mittwoch nicht, dafür Freitag.