Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore....

72

Transcript of Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore....

Page 1: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede
Page 2: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Master in Cybersecurtiy

Lez. 2 Introduzione all’architettura degli elaboratori

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 2

Page 3: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Obiettivi

•  Comprendere il principio di funzionamento di un calcolatore

•  Comprendere che cosa significa scrivere un programma

•  Sperimentare cosa significa scrivere un programma prestando attenzione a quanto è facile commettere errori

•  Soffermarsi a considerare come la modifica anche minima di un dato all’interno del programma può sconvolgerne il significato.

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3

Page 4: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Hardware

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 4

Page 5: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Schema di un calcolatore

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 5

Page 6: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

CPU and main memory

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 2-6

Page 7: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Machine Instruction Types

•  Data Transfer: copiano i dati dalla memoria ai registri e dai registri alla memoria

•  Arithmetic/Logic: modificano i dati presenti nei registri •  Input: acquisiscono i dati dai dispositivi di Inputoutput

e li trasferiscono all’interno della memoria del calcolatore

•  Output: prelevano i dati dalla memoria del calcolatore e li trasferiscono sui dispositivi di output

•  Controllo: determinano il flusso di esecuzione delle istruzioni in funzione dei valori di alcuni parameteri

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 2-7

Page 8: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Esempio #1

.text

.global_start_start:

mov num1,%eaxmov num2,%ebxadd %eax, %ebxmov %ebx, num2hlt

.datanum1: .byte 4num2: .byte 3

MANCANO ISTRUZIONI DI INPUT/OUTPUT !!!

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 8

Page 9: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

INSTRUZIONI DI OUTPUT

# COME SCRIVERE UN DATO SUL VIDEO

mov $msg,%ecx #Msg. Da visualizzaremov $21, %edx #Lung. Messaggiomov $1, %ebx # Video Identifiermov $4, %eax # WRITE commandint $0x80

.datamsg: .asciiz “Messaggio di prova: \n“ A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 9

Page 10: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

INSTRUZIONI DI INPUT

# COME ACQUISIRE UN DATO DA TASTIERA

mov $dato,%ecx # Dato da leggeremov $2, %edx # Num. Caratterimov $0, %ebx # KeyB Identifiermov $3, %eax # read commandint $0x80

.datadato: .byte 0 A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 10

Page 11: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Esercizio #2

•  Scrivere un programma assembler che visualizza un messaggio per l’acquisizione di un intero <9, legge il dato e lo visualizza

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 11

Page 12: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Analisi del problema

•  La soluzione dell’esercizio richiede la stesura di un programma che: 1.  Svolge un’operazione di output à visualizza msg 2.  Svolge un’operazione di input à acquisisce il dato 3.  Svolge un’operazione di output à visualizza il dato letto

I dati di cui abbiamo bisogno sono:

1.  Il messaggio da stampare 2.  La locazione in cui memorizzare il dato letto

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 12

Page 13: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Soluzione

.datamsg: .asciiz “Please insert a number: \n“num2: .byte 0

.byte 0x0a.text.global_start_start:# Visualizza il messaggio sul video

mov $msg, %ecxmov $25, %edxmov $1, %ebx # Video Identifiermov $4, %eax # WRITE codeint $0x80

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 13

Page 14: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Soluzione cont.

#Acquisizione dato da tastieramov $num2, %ecxmov $1, %edxmov $0, %ebx # Keyboard Identifiermov $3, %eax # READ codeint $0x80

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 14

Page 15: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Soluzione cont.

# Visualizza il dato acquisitomov $num2, %ecxmov $2, %edxmov $1, %ebxmov $4, %eaxint $0x80

# EXITmov $0, %ebxmov $1, %eaxint $0x80

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 15

Page 16: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Esercizio #3

•  Scrivere un programma assembler che acquisisce da tastiera due numeri (la cui somma deve essere minore di 10), dopo aver visualizzato un opportuno messaggio di inserimento dati, ne fa la somma e stampa il risultato.

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 16

Page 17: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Esempio

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 17

Page 18: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Shellcode.s

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 18

Page 19: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

SOFTWARE

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 19

Page 20: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Che cosè il software

•  L’insieme dei programmi di cui è fornito un computer, il cui scopo è rendere utile e produttivo l’uso di un computer

•  Il software è oggi la componente che caratterizza una piattaforma informatica e ne determina il suo valore

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 20

Page 21: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

The Importance of Software in Business

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 21

time 1950 today

$ Software

Hardware

High

Low

Page 22: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Due tipologie principali di SW

•  SW applicativo •  Programmi che generalmente interagiscono con

l'utente per eseguire lavori utili all'utente. Questi programmi generalmente parlano all'HW attraverso l'assistenza del sistema SW

•  SW di sistema •  Programmi che generalmente eseguono le attività

in background in un computer. Questi programmi, interagiscono anche direttamente con l'HW

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 22

Page 23: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Hardware

Operating System

Utility Language Translator

Device Driver

Scientific Apps.

Business Apps.

Productivity Apps.

Entertainment Apps.

System software

Application software

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 23

Page 24: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Application software

Hardware

System software

Users

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 24

Page 25: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Application Vs System

•  La classificazione del Sw tra applicativo e di sistema non è netta

•  Possono esserci discrepanze tra autori diversi, ad esempio pe alcuni autori I DBMS vanno classificati tra il Sw di sistema per altri tra gli applicativi

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 25

Page 26: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

In genere …

•  I software applicativi sono programmi che interagiscono direttamente con l'utente per l'esecuzione di un determinato tipo di lavoro

•  Generalmente non parlano “direttamente” con l'HW (cioè stampante, unità disco, ecc.), Ma attraverso interfacce fornite dal sistema operativo

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 26

Page 27: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Modalità di interazione

•  Interactive-mode •  L'utente esegue il programma sul computer e

continua a interagire con il computer durante l'esecuzione del programma

•  Esempio: word processor •  Batch-mode

•  L'utente avvia il programma e il computer elabora i dati forniti e produce risultati senza ulteriori interventi da parte dell'utente

•  Esempio: paghe e stipendi A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 27

Page 28: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Area applicativa

•  Scientific/engineering/graphics •  Business •  Productivity •  Entertainment •  Educational

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 28

Page 29: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Application software

Off-the-shelf software

Standard package

Customized package

Contract

Proprietary software

In-house developed

In-house customized

Contract customization

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 29

Page 30: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Ownership

•  Freeware •  Shareware •  Public-domain software

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 30

Page 31: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Freeware

•  Software protetto da copyright fornito gratuitamente dall'autore. Sebbene disponibile gratuitamente, l'autore mantiene il copyright,

•  il che significa che è l'autore che decide cosa si pyò fare del prodotto. Di solito, l'autore consente alle persone di utilizzare il software, ma non venderlo.

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 31

Page 32: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Shareware (1)

•  Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede di dare un piccolo contributo.

•  Si può copiare shareware e trasmetterlo ad amici e colleghi, ma anche loro dovrebbero pagare un contributo se usano il prodotto.

•  Lo shareware differisce dal software di dominio pubblico in quanto lo shareware è protetto da copyright.

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 32

Page 33: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Public-domain Software

•  Si riferisce a qualsiasi programma che non sia protetto da copyright.

•  il software è gratuito e può essere utilizzato senza restrizioni.

•  Il termine software di dominio pubblico viene spesso utilizzato in modo errato per includere freeware, software gratuito che è comunque protetto da copyright

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 33

Page 34: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Software open source (OSS)

•  OSS è software gratuito •  per il quale il codice sorgente viene reso disponibile

sotto una licenza di copyright ben specifica (Open Source)

•  Questa licenza in genere consente agli utenti di utilizzare, modificare e migliorare il software per ridistribuirlo

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 34

Page 35: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Software di sistema

•  ll software preposto a: •  gestire in modo ottimale le risorse hardware

del computer •  fornire agli utenti strumenti di base per gestire

le informazioni •  fornire gli strumenti di base per la

realizzazione di ambienti di programmazione

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 35

Page 36: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Esempi

•  SO •  Editor •  Compilatori •  Utility di sistema per la gestione dei file •  Utility di sistema per il monitoraggio del

sistema

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 36

Page 37: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

IL SISTEMA OPERATIVO

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 37

Page 38: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Figure 3.3 Software classification

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-38

Page 39: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Funzioni di un sistema operativo

•  Supervisionare il funzionamento del computer

•  Archiviare e recuperare i file (cartelle) •  Pianificare i programmi per l'esecuzione •  Coordinare l'esecuzione dei programmi

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-39

Page 40: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Tipologie di sistemi operativi

•  Batch processing •  Time-sharing •  Real time

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-40

Page 41: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Operating System Components

•  Interfaccia utente: l’insieme dei comandi con cui gli utenti comunicano direttamente con OS •  Text based (Shell) •  Interfaccia utente grafica (GUI)

•  Kernel: esegue le funzioni di base richieste •  File manager •  I driver di periferica •  Gestore della memoria •  Scheduler A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-41

Page 42: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Graficamente

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-42

Page 43: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

File Manager

•  Directory (o cartella): un gruppo di file e altre directory creati dall'utente (sottodirectory)

•  Percorso directory: una sequenza di directory all'interno di directory

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-43

Page 44: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Memory Manager

•  Alloca spazio nella memoria principale •  Può creare l'illusione che la macchina

abbia più memoria di quanta ne abbia effettivamente (memoria virtuale)

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-44

Page 45: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Getting it Started (Bootstrapping)

•  Avvio di un sistema: •  programma nella ROM (esempio di firmware) •  Trasferisce il sistema operativo dalla memoria di

massa alla memoria principale •  Esegue il salto al sistema operativo

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-45

Page 46: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Figure 3.5 The booting process

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 3-46

Page 47: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Protezioni

•  Dal punto di vista della protezione, il computer è costituito da una raccolta di oggetti, hardware o software

•  Ogni oggetto ha un nome univoco ed è possibile accedervi attraverso una serie ben definita di operazioni

•  Problema di protezione: assicurarsi che ogni oggetto sia accessibile correttamente e solo da quei soggetti autorizzati a farlo

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 47

Page 48: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Linux Has Many Distributions

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 48

Page 49: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

What is Linux? Linux + GNU Utilities = Free Unix

•  Linux is an O/S core written by Linus Torvalds and others AND

•  a set of small programs written by Richard Stallman and others. They are the GNU utilities.

http://www.gnu.org/ A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 49

Page 50: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Unix

•  One of the major practical advances of the time was the introduction of the UNIX operating system, primarily thanks to Ken Thompson and Dennis Ritchie at Bell Labs

•  UNIX took many good ideas from different operating systems, particularly from Multics, and some from systems like TENEX and the Berkeley Time-Sharing System [S+68]

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 50

Page 51: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 51

Page 52: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

The modern era

•  Beyond the minicomputer came a new type of machine, cheaper, faster, and for the masses: the personal computer, or PC as we call it today.

•  Led by Apple’s early machines (e.g., the Apple II) and the IBM PC, this new breed of machine would soon become the dominant force in computing, as their low-cost enabled one machine per desktop instead of a shared minicomputer per workgroup

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 52

Page 53: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 53

Page 54: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

macOS

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 54

Page 55: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

MacOS

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 55

Page 56: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Android

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 56

Page 57: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Android

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 57

Page 58: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Embedded System •  A combination of hardware and software designed to

perform a dedicated function •  Often, embedded systems are part of a larger system or

product, •  e.g., antilock braking system in a car

•  Embedded systems are tightly coupled to their environment à imposes real-time constraints by the need to interact with the environment

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 58

Page 59: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Embedded OS

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 59

Page 60: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Embedded OS: example

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 60

Page 61: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Embedded OS •  fast and lightweight process or thread switch •  Scheduling real time •  small size •  responds to external interrupts quickly •  minimizes intervals during which interrupts are disabled •  provides fixed or variable-sized partitions for memory

management •  provides special sequential files that can accumulate

data at a fast rate

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 61

Page 62: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Embedded OS •  Embedded Linux •  Windows CE •  FreeRTOS •  embOS •  QNX •  Vxworks •  TinyOS •  Contiky •  SOS

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 62

Page 63: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Linux File System Basics

•  I file Linux sono archiviati in un singolo file system gerarchico con radice

•  I file di dati sono memorizzati in directory (cartelle)

•  Le directory possono essere nidificate in profondità quanto necessario

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi

63

Directories

User home directories

Data files

root

Page 64: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Naming Files

•  Files are named by •  naming each

containing directory •  starting at the root

•  This is known as the pathname

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi

64

/etc/passwd

/home/neale/b

Page 65: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

The Current Directory

•  Una directory è designata come directory corrente

•  se si omette il simbolo / il percorso è relativo alla directory di lavoro corrente

•  Usa pwd per scoprire dove sei

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi

65

Current working directory

Page 66: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Some Special File Names

•  Alcuni nomi di file sono speciali: •  / La directory root (da non confondere con l'utente root) •  . La directory corrente •  .. La directory principale (precedente) •  ~ La directory home

•  Esempi: •  ./a uguale a •  ../jane/x salite di un livello quindi cercate nella directory jane

il file x

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 66

Page 67: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Special Files

•  /home - all users’ home directories are stored here

•  /bin, /usr/bin - system commands •  /sbin, /usr/sbin - commands used by

sysadmins •  /etc - all sorts of configuration files •  /var - logs, spool directories etc. •  /dev - device files •  /proc - special system files A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 67

Page 68: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Linux Command Basics

•  Per eseguire un comando, digitare il nome e gli argomenti nella riga di comando

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 68

ls -l /etc

Command name Options (flags)

Arguments

Page 69: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

Common Commands

•  pwd - stampa (visualizza) la directory di lavoro

•  cd <dir> - cambia la directory di lavoro corrente in dir

•  ls - elenca i file nella directory di lavoro corrente

•  ls -l - elenca i file nella directory di lavoro corrente in formato lungo

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 69

Page 70: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

File Commands

•  cp <fromfile> <tofile> •  Copia da <fromfile> a <tofile>

•  mv <fromfile> <tofile> •  Spostare / rinominare <fromfile> in <tofile>

•  rm <file> •  Rimuove il file denominato <file>

•  mkdir <newdir> •  Crea una nuova directory chiamata <newdir>

•  rmdir <dir> •  Rimuovi una registadirectory (vuota)

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 70

Page 71: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

More Commands

•  who •  Elenca chi è attualmente connesso al sistema

•  whoami •  Segnala quale utente ha effettuato l'accesso

•  ps •  Elenca i processi dell’utente sul sistema

•  ps aux •  Elenca tutti i processi sul sistema

•  echo "Una stringa da ripetere" •  Visualizza l’argomento al terminale

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 71

Page 72: Master in Cybersecurtiy...Shareware (1) • Software distribuito sulla base di un sistema d'onore. Maggior parte shareware viene fornito gratuitamente, ma l'autore di solito chiede

More Commands

•  kill - sends a signal to a process or process group

•  You can only kill your own processes unless you are root

A.A. 2019/2020 Cybersecurity Master © Danilo Bruschi 72

UID PID PPID C STIME TTY TIME CMD root 6715 6692 2 14:34 ttyp0 00:00:00 sleep 10h root 6716 6692 0 14:34 ttyp0 00:00:00 ps -ef [root@penguinvm log]# kill 6715 [1]+ Terminated sleep 10h