This is an old revision of the document!
Thread nou? Nu. Pentru o ușoară parcurgere a mesajelor, folosiți thread-urile de discuții existente în cadrul forumului, fără a crea altele. În consecință, thread-urile (subiectele de discuții) nou create vor fi șterse.
Căutare. Căutați pe forum informația pe care doriți să o obțineți, înainte să puneți o întrebare. De cele mai multe ori, cineva a mai întrebat același lucru. În fiecare thread al forumului aveți informații despre cum puteți căuta în forum.
Printscreen/poză? Nu. În cazul în care doriți să publicați un printscreen pe forum, recomandăm folosirea site-urilor pentru partajarea gratuită a imaginilor, precum imgur sau alternativele sale, publicând pe forum doar link către printscreen. Pozele inserate în răspunsuri, vor fi șterse.
Actualizări. Urmăriți atât forumul cât și modificările aduse enunțului/checker-ului, modificări ce sunt publicate și explicate în paragrafele de mai jos.
Regulament. Înainte și în timpul realizării temei, vă rugăm să parcurgeți indicațiile legate de realizarea temelor, încluzând ce înseamnă o temă copiată și cum penalizăm temele copiate. Folosiți cu încredere forumurile de pe cs.curs.pub.ro pentru întrebări și neclarități legate de teme.
Întrebări frecvente. În timpul realizării temei, când vă loviți de probleme și aveți nevoie de suportul echipei de USO, parcurgeți și lista de întrebări frecvente întâlnite în cadrul temelor. Să țineți cont, va rugăm, și de recomandările de comunicare electronică.
Ajutor reciproc. Vă încurajăm ca atunci când găsiți soluția la o problemă pe care ați postat-o anterior pe forum să postați și soluția găsită. De asemenea dacă știți răspunsul la întrebările colegilor sunteți încurajați să le răspundeți.
xor.sh
uso
uso
, consultați instrucțiunile de utilizare.Descărcare mașină virtuală și informații despre aceasta
Testarea temei se va face doar pe mașina virtulă (aici) autentificat ca utilizator student
, folosind utilitarul uso
. Acesta poate fi executat în orice moment pentru a verifica dacă au fost rezolvate corect task-urile. Nu lucrați autentificat ca utilizator root
în sistem, la nicio temă. Din acest motiv există posibilitatea să nu vă treacă testele. Pe de altă parte, nu este o metoda de siguranță să lucrați autentificat ca utilizator root
din motive de securitate și/sau permisiuni.
Utilitarul uso
implementează testele doar pentru task-urile temei curente. La fiecare temă nouă, pentru a folosi utilitarul uso
, primul pas este să porniți tema folosind comanda sudo uso start
. În caz contrar, nu veți avea actualizat checker-ul pentru tema curentă.
Verificați versiunea utilitarului uso
cât și a checker-ului, afișată la rularea comenzii sudo uso start
sau sudo uso check
, pe prima linie a output-ului. Asigurați-vă că aveți ultima versiune înainte de a continua lucrul pentru temă. Versiunea actuală este specificată în secțiunea Informații generale prezentă în enunțul temei. Pentru situațiile în care nu dispuneți de ultima versiune a utilitarului uso
sau checker-ului, rulați sudo uso update
.
Finalizarea temei se realizează prin rularea comenzii sudo uso submit
și încărcarea codului returnat de această comandă (32 de caractere alfanumerice), în formularul din secțiunea Informații generale. Pentru a evita transcrierea eronată a codului returnat de checker, recomandăm copierea acestuia din interfața mașinii host conectată prin SSH către mașina guest după cum urmează:
Ciphers… ciphers everywhere.
Vă aflați în folderul /home/student/tema04/task01
. Va trebui sa implementati urmatorii algoritmi de criptare/decriptare in bash.
sudo uso check 1
xor.sh
. Scriptul primește două argumente:xor.sh
:[student@uso]$ ./xor.sh "simple_test" "#" PJNSOF|WFPW [student@uso]$ ./xor.sh "simple_test" "####" # este echivalent cu exemplul de mai sus PJNSOF|WFPW
caesar.sh
. Scriptul primește trei argumente:enc
sau dec
caesar.sh
:[student@uso]$ ./caesar.sh "enc" "ABC" 3 DEF [student@uso]$ ./caesar.sh "enc" "simpleTest" fvzcyrGrfg [student@uso]$ ./caesar.sh "enc" "simpleTest" 13 # este echivalent cu exemplul de mai sus fvzcyrGrfg [student@uso]$ ./caesar.sh "dec" "fvzcyrGrfg" 13 simpleTest
rail-fence.sh
. Scriptul primește trei argumente:enc
sau dec
rail-fence.sh
:[student@uso]$ ./rail-fence.sh "enc" "the attack is now" 3 tacswh taki oet n [student@uso]$ ./rail-fence.sh "dec" "tacswh taki oet n" 3 the attack is now
Vă aflați în folderul /home/student/tema04/task02
.
Creati un script cu numele job.sh
. Continutul scriptului va fi urmatorul:
#!/bin/bash date >> /home/student/tema04/task02/log
Configurati masina virtuala astfel incat scriptul va fi rulat automat din minut in minut.
man crontab
Modificati scriptul astfel incat sa protejati log-ul de orice modificare din exterior. job.sh
va putea modifica log
si se vor observa noile intrari create din minut in minut. Oricine va putea citi log
dar nu il va putea modifica cu usurinta, chiar daca are drept de sudo
.
[student@uso]$ cat log Thu Dec 13 15:04:01 UTC 2017 Thu Dec 13 15:05:01 UTC 2017 [student@uso]$ echo "Fake entry here" >> log -bash: log: Permission denied [student@uso]$ sudo echo "Fake entry here" >> log -bash: log: Permission denied [student@uso]$ rm log rm: remove write-protected regular file 'log'? yes rm: cannot remove 'log': Operation not permitted [student@uso]$ sudo rm log rm: cannot remove 'log': Operation not permitted
TBA
Vă aflați în folderul /home/student/tema04/task04
. Porniti task-ul cu sudo uso check 4
, in momentul acesta aveti executabilul forensics
. Executabilul asteapta un input specific de la voi, daca il nimeriti va afisa un Flag ascuns.
Creati scriptul de bash solution.sh
care va apela de fiecare data executabilul si va genera input-ul corect pentru a afisa flag-ul.
Asigurați-vă că ați submis tema și ați încărcat codul aferent submisiei în formularul din secțiunea de Informații generale. Acest lucru este necesar ori de câte ori modificați tema și o submiteți din nou (detalii aici), până la termenul limită. În caz contrar, punctajul aferent temei va fi nul (0 puncte).