Quan es rep un pendrive o un disc extern que s'ha connectat a un Mac, si el Mac ha obert els fitxers al seu temps crea uns altres fitxerets molt monos i molestos que tenen el mateix nom que l'original però comencen amb "._larestadelnom" (comencen per punt i underscore) i ocupen molt poc. En un PC no serveixen de res apart d'ocupar sectors sencers del disc. Jo els elimino, però fer-ho manualment no mola. Així que he trobat aquesta instrucció de Powershell que ho fa ràpid, ràpid.
Normalment per navegar vaig amb Firefox + Noscript. Aquesta extensió em permet decidir quins javascripts s'executen en el meu navegador.
I ho decideixo domini per domini, de fet quan es carrega una pàgina web hi ha un munt de ronya d'scripts que es carreguen que són d'altres dominis. Normalment aquests s'encarreguen de tracking, publicitat, càrrega de més porqueria...
La setmana passada el Firefox es va actualitzar i el noscript no, i és incompatible amb la versió del navegador. Així que vaig anar als ajustos del navegador (about:config) i vaig deshabilitar en general el javascript (JS). En aquell instant moltes webs van deixar de funcionar, o ho van fer de forma molt limitada. Gmail semblava dels anys 90.
Així que al final he tingut que reactivar-lo, però ara limito la meva navegació a webs de "confiança" i poca cosa més. Com feia anys que faig servir aquesta extensió al tornar a reactivar el JS ha sigut com un xoc amb la realitat. No era conscient de la quantitat de porqueria que hi ha a la web. El Flash encara no s'ha extingit?! A veure si l'autor de l'extensió es posa les piles i la fa compatible amb el nou Firefox.
#20/11/2017 17:08 Javascript Software Autor: Alex Canalda
Sempre cal llegir la lletra petita de les especificacions i els disc durs tenen una molt curiosa, el "error rate".
Aquest errors que es produeixen cada N bits (on N és un número força gran) amb el temps acaben generant degradació de dades. Depenent d'on caigui l'error pot ser més o menys greu, un píxel en un fotograma que no es nota o si cau en un lloc sensible potser el fitxer queda mal parat. I això sense arribar a tenir sectors defectuosos.
Aleshores suposem que tenim molts i molts fitxers, que ocupen gigues i gigues i els volem guardar durant molt temps, uns quants anys. Per exemple les fotos i vídeos de les vacances.
El primer que cal garantir és que si falla el disc mecànic no ens quedem sense dades, això s'aconsegueix tenint les dades duplicades en més d'un disc. Ok, fins aquí anem bé, però dupliquem els bits que es poden corrompre.
Però això no garanteix que el disc no s'equivoqui llegint les dades, i com hi ha més d'una còpia quina és la bona? I si al disc dur li surt un sector defectuós com saps el fitxer afectat i que necessites fer servir la còpia bona?
He estat pensant com enfocar aquest problema i penso que les funcions de hash són una bona solució. Una funció de hash donada una entrada sempre dóna el mateix resultat. Si hi ha la més mínima variació en l'entrada, per exemple un bit que està corromput aleshores el resultat canvia. Cal fer una base de dades amb els fitxers i el seu corresponent hash calculat. Cada X temps es torna a recalcular i es compara amb el que hi ha a la BBDD, si és diferent vol dir que el fitxer està corromput.
Ja seria mala pata que totes les còpies del fitxer estiguessin corrompudes al mateix moment. Es pot saber quina és la bona i tornar-la a copiar, eliminant la corrompuda.
#05/05/2017 11:18 Programació Software Autor: Alex Canalda
Estic migrant el blog a SSL, el primer que he necessitat és un certificat. Els donen gratis a Let's Encrypt. La pega que tenen és que caduquen cada 4 o 5 mesos...
Per demanar certificats a Let's Encrypt no es fa amb un formulari ni res, és mitjançant el protocol ACME
El cert és que la majoria de clients del protocol ACME estan sota el paraigües d'algun *unix, però hi ha un que és per C# i .NET, el LetsEncript-win-simple. L'he descarregat i és força senzill de fer anar. Et surt una llista dels websites del IIS de la màquina que s'executa, esculls un i alehop! Tot fet. Inclús modifica la configuració del IIS per fer-la SSL.
També porta una tasca automàtica de renovació de certificats, però fins dins de 4 mesos no sabré si funciona.
A més a més del tema certificats cal entendre com funciona una mica el SSL per discriminar quin certificat fer servir. Sense SSL si hi ha més d'un website en una mateixa IP el servidor web les distingeix per l'adreça. Però clar amb SSL no només cal dirigir la petició HTTP cap a un website, sino que cal establir un tunel xifrat SSL per les comunicacions. És en aquest punt on entra en joc el SNI o Server Name Indication. En la fase de "handshake" del TLS (Transport Layer Security, és el successor del SSL encara que la gent el segueix dient SSL ja que al fi i al cap són comunicacions xifrades) hi ha aquesta fase on client i servidor negocien quin certificat es fa servir. D'aquesta manera es poden tenir certificats diferents per cada website.
El IIS el SNI ho reflexa en la casella "Requerir indicación de nombre de servidor", si es vol tenir més d'un website SSL compartint el server cal marcar-la. Però llavors apareix el warning groc de "no se ha creado un sitio SSL predeterminado...".
Aquest website predeterminado només és útil per navegadors sense SNI... i avui dia no hi ha cap. Només el IE6 que està mort fa molt temps no tenia SNI. Així que aquest warning es pot obviar.
Ja fa molts anys (em faig vell!??) que faig servir l'extensió de navegador NoScript per Firefox. Amb ella pots visitar els llocs que vulguis sense problemes perque al no executar codi no et pots infectar amb malware.
Una altra característica que m'agrada és que bloqueja els Flash, i molts anuncis molestos ja ni els veig.
Molts llocs web han baixat el to dels seus anuncis, ja no fan servir ni Flash ni javascript, altres han pres mesures en contra d'això, per exemple http://www.tweaktown.com. Allí han posat un tag <noscript>. En teoria aquest tag serveix per mostrar un missatge quan l'usuari no té el javascript habilitat. Però han anat més enllà i han posat:
He trobat un article interessant sobre seguretat en la web del Bruce Schneier que he resumit. Tracta com gestionar respostes davant de incidències en seguretat.
Comenta que la seguretat és una combinació de protecció, detecció i resposta. Ha portat molt temps a la indústria del software arribar a aquest punt. Els anys 90 eren l'època on tot era protecció, hi havia un munt de productes que es dedicaven a protegir els equips i la xarxa. Al 2000 ja es va assumir que calia normalitzar la detecció, i van aparèixer un munt de productes de detecció.
Actualment estem en la dècada de la resposta, estan apareixent productes per gestionar respostes davant incidents de seguretat. Els equips de seguretat els estan incorporant al seu arsenal per que és la moda. Cal tenir en compte que s'ha perdut el control de l'entorn. Cada cop més de les nostres dades estan en el "cloud" gestionades per tercers, la xarxa també està subcontractada i tenim menys visibilitat sobre ella.
També cal tenir en compte que els atacs cada cop són més sofisticats. Ja sigui per companyies rivals o per països que per raons geopolítiques els interessa la nostra informació.
I com sempre les empreses segueixen invertint poc en seguretat, tant en protecció com en detecció cosa que fa que la gestió de la resposta sigui la que reculli les conseqüències.
En Bruce ja en els 1990 ja deia que la seguretat és un procés no un producte, un cop compres algo i ho poses a protegir no ho pots abandonar ja que l'entorn va canviant.
Hi ha la creença que si es treu el factor humà dels elements on es vol aplicar la seguretat aquesta serà millor però s'ha de pensar que cada xarxa és diferent, cada atac és diferent, cada entorn és diferent, les lleis són diferents, i per això no es pot automatitzar la gestió de la resposta. La gestió de la resposta necessita gent, per que per una bona resposta davant d'un incident cal pensar una bona solució.
I això és nou per la indústria de la seguretat, a més a més en aquest món hi ha problemes causats per que no es poden distingir productes de bona qualitat dels de mala qualitat i l'únic que es té en compte és el preu. Aleshores productes mediocres desplacen a bons productes fora del mercat a base de forçar preus baixos, no hi ha una bona forma de testejar la qualitat d'un producte de seguretat. Això es pot aplicar a antivirus, tallafocs... Però com la gestió de la incidència s'hauria de basar en gent això no s'hauria d'aplicar aquí, i equips o empreses que ofereixin aquest servei es podrà determinar que uns són millors que els altres.
Per una bona gestió de la incidència cal seguir cicles de OODA, on OODA vol dir: "observa, orienta, decideix, actua." La gent d'un equip de gestió ha d'estar tota l'estona seguint un cicle d'aquests. I es necessiten eines per facilitar aquests passos.
Observar vol dir saber que està passant en la xarxa en temps real amb dades de logs, rendiment, seguretat física. Quanta més d'aquests dades tingui un equip millor, per que podran entendre millor l'atac. Això vol dir que aquest equip ha de poder operar transversalment en tota l'organització.
Orientar vol dir entendre que està passant en el context de la organització i a Internet. No és suficient conèixer l'atac, s'ha de saber que vol dir. És un malware? Està l'empresa instal·lant un nou paquet de software? Planeja acomiadaments? Hi ha atacs previs des d'aquestes IPs?...
Decidir. Un cop ja es sap que passa cal veure quina acció és la més adient com a resposta. A vegades aquestes accions no les pot decidir l'equip de gestió si no que cal escalar en la jerarquia empresarial fins trobar un responsable que pregui la decisió un cop presentats els fets i les possibles solucions. Cal tenir en compte que és possible que apart del tema tècnic hi hagi implicats altres aspectes com relacions públiques, relacions amb clients o temes legals.
Actuar. Ja està la decisió presa cal implementar-la. Com a priori no es pot saber que pot necessitar un equip, cal oferir-lis l'accés més ampli possible. També si es possible, durant el temps on l'equip està inactiu cal fer simulacres, per tal de verificar que disposen d'accés i saben com fer-lo servir.
Ajuntant tota aquesta informació d'una forma unificada farà que la gestió de la resposta davant d'una incidència sigui efectiva. Per fer que això funcioni cal coordinar gent, processos i tecnologia junts, i això encara no es fa de forma habitual en organitzacions grans. És quelcom necessari si ens hem de defensar davant d'amenaces actuals.
This essay originally appeared in IEEE Security & Privacy.
Cada programador té el seu. L'editor de text on un està còmode amb les característiques que necessita i sap fer servir. Hi ha companys que són de UltraEdit a mort, altres que els agrada el Notepad++, i jo que sóc una minoria faig servir l'EditPlus.
Vaig començar a fer-lo servir cap l'any 2000 quan vaig començar amb l'ASP Classic, i quan l'he fet servir tantes i tantes hores al final vaig comprar una llicència i el tinc original. Més que res per allò dels pobres desenvolupadors que algo han de menjar... En la darrera versió inclús hi ha suport per SFTP.
Un dels punts més polèmics del Windows 8.1 és l'eliminació del menú Inici. Després de que Microsoft hagi sentit les critiques dels usuaris (i veure la velocitat patètica d'adopció del 8.1) ha donat el seu braç a tòrcer i ha tornat a posar el menú Inici d'una forma descafeinada. Ara és un mix entre Metro i el clàssic.
Fa temps que vaig donant-li voltes al tema de la transferència de fitxers per Internet. Recentment el meu proveïdor d'Internet ha tingut a bé augmentar-me la velocitat, passant a 1Gigabit de baixada i 200Megabit de pujada i clar transferir fitxers grossos ja és possible.
A casa tinc un router GPON (Gigabit Passive Optical Network) però és força limitat a nivell de gestió de ports i protocols. Aleshores un protocol com el FTP queda descartat per que al ser multiport sempre em dóna problemes (el 21 és pel canal de control però després cal establir el canal de dades (amb un mètode passiu o actiu) i aquí és on es donen els errors ja que cal obrir un rang de ports i el GPON això no ho fa). A més és un protocol antic i no he trobat una implementació gratuïta segura (el Filezilla server no hem dóna prou seguretat).
Així que m'he posat a investigar i he trobat eines privades que cobren per transferències mensuals (fins a 2GB gratis), he trobat el FTPS (que és el FTP però sobre SSL i amb TLS). El FTPS també queda descartat per que, encara que és més segur, té el mateix problema que el FTP, és multicanal.
Llavors he trobat el SFTP, o SSH File Transfer Protocol. I aquest està securitzat, tot viatja encriptat. És monoport, fa servir el port 22, així que gestionant aquest port en tots els tallafocs hi ha prou (tallafocs de Windows i en el GPON). El protocol és relativament nou, la última versió és de l'any 2006.
Per fer la transferència es necessita un programa client i un servidor.
Com programa servidor he fet servir el de Bitvise que per us personal i no comercial és gratuït. El servidor dóna suport a tot el protocol SSH, però és fàcil quan s'instal·la limitar-ho a la transferència de fitxers (ho pregunta). Un cop instal·lat cal crear un/varis usuari virtual. Pot vincular-se a usuaris normals de Windows, però he preferit no fer-ho. Si es fa servir un usuari virtual s'ha d'especificar a quines carpetes té accés. I donar permisos NTFS al grup BvSsh_VirtualUsers sobre la carpeta en qüestió.
Com a part client BitVise també té un programa, que no està gens malament, però he fet servir el WinSCP. És de programari lliure i té una versió "portable" que no s'ha ni d'instal·lar, cosa que en certs llocs va molt bé. El cert és que ha estat descarregar, posar usuari/contrasenya i començar a transferir.
Hi ha dues paraules que són molt fashion i queden molt bé quan es parla de programació:
Mockup: maqueta. En programació es un prototipus molt bàsic. Per fer "mockups" es poden fer servir papers i bolígrafs o un software al respecte, com per exemple el de Balsamiq. El trobo molt útil per dibuixar formularis d'aplicacions.
Scaffolding: andami. En programació un andami es refereix a la infraestructura bàsica necessària per fer funcionar una pantalla, però sense lògica de negoci. Diguem que la clsDades i les stored procedures associades fan això, scaffolding.
#26/02/2014 17:20 Programació Anglès Software Autor: Alex Canalda