Archivi categoria: Senza categoria

SSH tunneling/SOCKS

Ciao,

capita alle volte che sia necessario fare un accesso ad un software (es. RDP) da una rete dove non sia disponibile l’apertura di rete alla porta necessaria.

Un modo veloce per risolvere è quello di usare in socks o un tunneling usando una porta che sia disponibile.

A seguito un esempio di server SOCKS usando ssh:

ssh -D 1080 user@<IP Address or Domain of your Server>

Al prompt, definite la password per l’utente indicato e ..fino a quando la finestra resta aperta, avremo disponibile un server SOCKS operativo su localhost:1080.

Se invece volessimo fare un tunneling su una sola porta, basterà usare sempre ssh nel seguente modo:

ssh -L [localhost:]3389:remote.desktop.host:3389 ssh.server.reacheable

fino a quando la finestra resterà aperta, basterà fare un RDP su localhost per essere mandati via tunneling ssh verso ssh.server.reacheable per poi finire su remote.desktop.host

Ulteriori switch che potrebbero essere utili:

-C: compress data in the tunnel, save bandwidth
-q: quiet mode, don’t output anything locally
-N: do not execute remote commands, useful for just forwarding ports
-f: to fork it to a background command

Curve Ellittiche in pratica

Ciao,

di seguito un semplice esempio di come utilizzare le curve ellittiche tramite il classico strumento openssl e i nostri classici amici Alice e Bob.

Alice e Bob generano le proprie chiavi pubbliche e private ti tipo ellittico


Creazione Chiavi


Alice:

openssl genpkey -algorithm  X25519 -out alice_privkey.pem
openssl pkey -in alice_privkey.pem -pubout -out alice_pubkey.pem

Bob:

openssl genpkey -algorithm  X25519 -out bob_privkey.pem
openssl pkey -in bob_privkey.pem -pubout -out bob_pubkey.pem

Cifra


Alice:

Alice genera una chiave EC temporanea e ne deriva un segreto usando la chiave pubblica di Bob

openssl genpkey -algorithm X25519 -out temp_privkey.pem
openssl pkeyutl -derive -inkey temp_privkey.pem -peerkey bob_pubkey.pem | base64 -w0 > secret.txt

(Attenzione, openssl tratta i dati da console come stringhe. Per evitare problemi di 0x00 presenti nella chiave, la convertiamo in base64)

Alice cifra il file per Bob con il segreto ottenuto
openssl enc -aes-256-cbc -in Testo.txt -out Testo.txt.enc -pass file:secret.txt

Alice genera la parte pubblica della chiave temporanea dalla quale Bob otterrà il segreto

openssl ecparam -in temp_privkey.pem -pubout -out temp_pubkey.pem

Alice invia a Bob il file cifrato Testo.txt.enc e la chiave pubblica temp_pubkey.pem

Decifra


Bob:

Bob usa la sua chiave privata ” bob_privkey.pem ” e la chiave pubblica ricevuta ” temp_pubkey.pem ” per derivare il segreto

openssh pkeyutl -derive -inkey bob_privkey.pem -peerkey temp_pubkey.pem | base64 -w0 > secret.txt

Bob decifra il testo cifrato

openssl enc -d -aes-256-cbc -in Testo.txt.enc -out Testo.txt -pass file:secret.txt

STEAM install on CENTOS7

To install Steam on a barebone Centos7 follow the next console commands:

yum install glibc.i686 libstdc++.i686 libgcc.i686
iptables -I INPUT -p udp –dport 27016 -j ACCEPT
iptables -I INPUT -p tcp –dport 27016 -j ACCEPT
iptables -I INPUT -p udp –dport 7778 -j ACCEPT
iptables -I INPUT -p tcp –dport 7778 -j ACCEPT
iptables -I INPUT -p tcp –dport 32330 -j ACCEPT

useradd -m steam
su – steam

mkdir steamcmd
cd steamcmd
wget http://media.steampowered.com/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz

./steamcmd.sh

 

XML/XSD Estensione

Ciao,
mi è capitato di dover realizzare degli schemi XSD che potessero permettere l’aggiunta dinamica di tag. Il caso specifico era un elenco di periferiche presenti in un server dove ogni dispositivo aveva il proprio tag e dentro esso aveva la proprie caratteristiche.

Per ottenere ciò è utilizzabile il tag <xs:any>.


Aggiunta di “Qualunque dato” senza alcun controllo se non sintattico che i tag (se presenti) siano correttamente aperti e chiusi


Schema:

<xs:schema xmlns:xs=”http://www.w3.org/2001/XMLSchema”>
<xs:element name=”computer”>
<xs:annotation>
<xs:documentation xml:lang=”it-IT”>Definizione di un computer</xs:documentation>
<xs:documentation xml:lang=”en-US”>Definition of a computer</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name=”keyboard” />
<xs:element name=”mouse” />
<xs:element name=”monitor” />
<xs:any namespace=”##any” processContents=”lax” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:sequence>
</xs:complexType>
</xs:element>

Esempio:

<computer>
<keyboard>105 keys</keyboard>
<mouse>3 button</mouse>
<monitor>vga</monitor>
  <joystic>
     <mytag1>
        data1
        <mytag2 myattr=”asd”>
            myValue
        </mytag2>
     </mytag1>
  </joystic>
</computer>

 


Aggiunta di un estensione basata su uno schema esterno “senza alcun controllo” se non sintattico che i tag (se presenti) siano correttamente aperti e chiusi. Il controllo rispetto lo schema esterno deve essere fatto con una attività ulteriore separata.

Schema:

<xs:schema xmlns:xs=”http://www.w3.org/2001/XMLSchema”>
  <xs:complexType name=”myextraType”>
          <xs:sequence>
               <xs:any namespace=”##other” processContents=”lax” maxOccurs=”unbounded”/>
          </xs:sequence>
     </xs:complexType>
<xs:element name=”computer”>
<xs:annotation>
<xs:documentation xml:lang=”it-IT”>Definizione di un computer</xs:documentation>
<xs:documentation xml:lang=”en-US”>Definition of a computer</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name=”keyboard” />
<xs:element name=”mouse” />
<xs:element name=”monitor” />
<xs:element name=”myextra” type=”myextraType” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

 

Esempio:

<computer>
<keyboard>105 keys</keyboard>
<mouse>3 button</mouse>
<monitor>vga</monitor>
  <myextra xmlns:myExt=”http://personal.site/myExtensions.xsd”>
     <myExt:joystick>
        data1
        <myExt:mytag2 myattr=”asd”>
            myValue
        </myExt:mytag2>
     </myExt:joistick>
  </myextra>
</computer>

DoD 8570 compliance

Ogni tanto, nelle varie offerte di lavoro, si vede fra i requisiti la richiesta “8570 compliance”.

Non si tratta di una certificazione in sè, ma si tratta di aver raggiunt un set minimo di certificazioni particolari.

8570-cert

Verificate se avete tali certificazioni e nel caso, potrete aggiungere al vostro curriculum il blasone “DoD 8570 compliance“.

Quale wiki fà per te?

Per l’organizzazione dei dati lavorativi personali e non, è comune riempire il proprio spazio disco di cartelle e file. Questo metodo sebbene rapido, non è di facile gestione, soprattutto nella ricerca e catalogazione delle informazioni. Senza parlare poi dei semilavorati come le le bozze. Inoltre, resta sempre perenne il rischio di rottura dei supporti che richiederebbe un sistema di gestione dei backup e degli allineamenti.

Questo ha portato l’evoluzione dei CMS (Content Management Systems) in particolar modo di quelli basati sul famoso WiKi in tantissime varianti.

Nel caso in cui foste interessati a trovare il CMS stile WiKi che fà per voi, vi suggerisco di dare un’occhiata al seguente sito che permette tramite una funzione di ricerca di identificare i tools che rispondano alle vostre esigenze.

http://www.wikimatrix.org/

CISSP – Certified Information Systems Security Professional

Ciao,

sicuramente fra le varie certificzioni di sicurezza, quella più ambita ed apprezzata internazionalmente è la CISSP.

E’ una certificazione molto ricercata che copre in modo approfondito e vasto il mondo dell’IT security. E’ difficile da ottenere in quanto richiede una esperienza comprovata di 5 anni in almeno 2 dei 10 domini che la certificazione copre.

Ad ogni modo … se volete prepararvi a sostenerla … vi consiglio il seguente sito  OPEN SECURITY TRAINING.

Buono studio!