buy lasix http://all-treatment.org/buy-levitra-vardenafil/ http://all-treatment.org/buy-viagra-sildenafil-citrat/ isotretinoin online buy cialis online
28 nov. 2017

URL amb protocol data: en comptes html:

Author: Joaquim Perez Noguer | Filed under: Seguretat

Fa temps els navegadors van prohibir URL amb protocol javascript: pels problemes de seguretat que podien portar. Per exemple

javascript:alert('hola');

Però van deixar el protocol data:.  Amb el qual es pot fer el mateix:

data:text/html,<script>alert('hola');</script>

Les noves versions dels navegadors arreglaran aquest problema i només deixaran data: pels següents casos:

  • User explicitly entering/pasting “data:…” into the address bar

  • Opening all plain text data files

  • Opening “data:image/*” in top-level window, unless it’s “data:image/svg+xml”

  • Opening “data:application/pdf” and “data:application/json”

  • Downloading a data: URL, e.g. ‘save-link-as’ of “data:…”

Més informació:



23 nov. 2017

Mozilla Social Services a Firefox 57

Author: Joaquim Perez Noguer | Filed under: Web

El Firefox 57 ja no té el botó de compartir a les xarxes socials.

Amb el nou API per extensions s’ha eliminat del tot l’API Social Share.

Si es vol es pot instal·lar un nou complement que fa el mateix:


Share Backport.



15 nov. 2017

SQL PRIOR

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

Per treballar amb SQL amb taules amb relacions amb elles mateixes, cal utilitzar l’operació CONNECT BY PRIOR de Oracle:

SELECT LEVEL, MGR MANAGER, LPAD(EMPNO,5*(LEVEL-1)) REPORTEE
FROM EMPLOYEE
START WITH MGR IS NULL
CONNECT_BY PRIOR EMPNO=MGR
ORDER SIBLINGS BY EMPNO
;

     LEVEL    MANAGER REPORTEE
---------- ---------- --------------------
         1
         2        100   110
         3        110        160
         4        160             180
         3        110        170
         2        100   120
         3        120        140
         3        120        150
         2        100   130

 

Una altra manera de fer el mateix amb DB2 és

WITH n(empid, name) AS 
   (SELECT empid, name 
    FROM emp
    WHERE name = 'Joan'
        UNION ALL
    SELECT nplus1.empid, nplus1.name 
    FROM emp as nplus1, n
    WHERE n.empid = nplus1.mgrid)
SELECT name FROM n

Més informació:



15 nov. 2017

SQL KEEP i DENSE RANK

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

De vegades en un llistat de la base de dades amb molts elements. La base de dades retorna més d’un valor per un mateix element, i només vols agafar el valor més nou.

La solució és utilitzar KEEP LAST:

SELECT empno,
deptno,
sal,
MIN(sal) KEEP (DENSE_RANK FIRST ORDER BY sal) OVER (PARTITION BY deptno) “Lowest”,
MIN(sal) KEEP (DENSE_RANK LAST ORDER BY sal) OVER (PARTITION BY deptno) “Highest”
FROM emp
ORDER BY deptno, sal;

Més informació  https://oracle-base.com/articles/misc/rank-dense-rank-first-last-analytic-functions

3 nov. 2017

Control de versions i Git Flow

Author: Joaquim Perez Noguer | Filed under: Ciència i tecnologia

Per gestionar un projecte gran amb diversos equips de treball és imprescindible tenir una bona política de control de versions.

Una bona idea és utilitzar el flux de Git Flow que està molt ben explicat aquí

https://danielkummer.github.io/git-flow-cheatsheet/

Ara bé sembla ser que git flow i maven no acaben d’anar del tot bé (mireu stackoverflow.com)

git flow release start 4.2.3
maven release:prepare release:perform
git flow release finish 4.2.3

Per això la solució és utilitzar  el plugin específic de git flow per a maven: bitbucket.org/atlassian/jgit-flow

O buscar una alternativa a maven:  www.streamhead.com/maven-alternatives

16 ag. 2017

jQuery vs JS

Author: Joaquim Perez Noguer | Filed under: Web

Al final  quan el Javascript hagi evolucionat prou, el  jQuery ja no serà necessari.

Però he de dir que jQuery força al programador a programar d’una manera elegant i ordenada. Tant de bo quan jQuery no faci falta es continuï utilitzant la mateixa elegància.

Vegeu més exemples a: https://css-tricks.com/now-ever-might-not-need-jquery/?utm_source=frontendfocus&utm_medium=email

jQuery:

var $elem = $(".someClass") //select the element 
$elem.remove(); //remove the element

Without jQuery:

var elem = document.querySelector(".someClass"); //select the element
elem.remove() //remove the element

 

jQuery:

$.ajax('https://some.url', {
  success: (data) => { /* do stuff with the data */ }
});

Without jQuery with  new fetch API is a superior replacement for XMLHttpRequest and is now supported by all modern browsers.

fetch('https://some.url')
  .then(response => response.json())
  .then(data => {
    // do stuff with the data
  });

 

 

 

16 ag. 2017

Mozilla 57: Firefox fights back

Author: Joaquim Perez Noguer | Filed under: Web

Siguem clars Mozilla té un problema.

Mozilla promet molt i genera moltes expectatives que al final abandona i frusta tant als usuaris com els desenvolupadors que hi han donat suport.

Això ha passat amb els Complements que deixant d’anar un dia per l’altre, amb els experiments del Mozilla Labs i ara recentment amb tota la inversió que es va fer per tenir un mòbil amb FirefoxOS. Tot això ha fet molt de mal.

Però per altra banda és cert que no es pot deixar el control del Web en mans d’unes poques empreses americanes, molt poderoses.

Per tant Mozilla és necessària i cal que torni a ser forta ben aviat.

L’objectiu de Mozilla, no ha de ser dominar el 100% del mercat dels navegadors. L’objectiu de Mozilla ha de ser mantenir-se influent alhora que el mercat dels navegadors es reparteixi entre diverses opcions, sense que cap tingui el monopoli.

Més informació:

¿Realmente necesitamos tantos expertos en IA?

No creo que cada persona del planeta necesite conocer el aprendizaje profundo. Pero si la IA es la nueva electricidad, solo mira el número de ingenieros eléctricos y electricistas que hay. Hace falta crear una fuerza de trabajo enorme para que la sociedad pueda averiguar cómo hacer todas las cosas maravillosas que nos rodean en la actualidad. La fuerza de trabajo en IA actual es mucho más pequeña de lo que debería.

Més informació a:

 

 

19 juny 2017

WannaCry

Author: Joaquim Perez Noguer | Filed under: Seguretat

Una de espías…

Hace unos días, mientras leía artículos de expertos investigadores sobre todo lo que iban descubriendo sobre el ataque global provocado por el Ransomware WannaCry, me entró una terrible nostalgia. Empecé a recordar cuando los hackers modificábamos nuestros equipos y creábamos los programas para conectar a la red X25 y de allí a los ordenadores de la red llamada ARPANET, ahora conocida como INTERNET, donde ocurrió el primer incidente de infección global el 2 de noviembre de 1988: el Morris Worm.

En aquel entonces, la red estaba formada por unos 60.000 ordenadores y el incidente afectó al 10% de la red, más de 6.000 VAX y Sun Microsystems con sistema operativo UNIX. Tardaron varios días en poder restablecer todas las comunicaciones completamente saturadas debido al tráfico generado por el gusano. La forma segura de desinfectarse era desconectarse de la red, reiniciar el servidor, eliminar el gusano e instalar las actualizaciones de seguridad que evitaban infectarse al conectarse de nuevo a la red. Lo grave de la situación es que hacía años que se conocían algunos de los fallos de seguridad utilizados por el gusano.

El autor de la criatura fue Robert T. Morris, un estudiante de la Universidad de Cornell que intentaba contar cuántos ordenadores vulnerables existían en ARPANET. Una vez infectado un equipo procedía a infectar a sus vecinos, pero un error en el código provocaba que pudiera ser infectado de nuevo, generándose así una tormenta de infecciones entre todos los ordenadores de la red, que quedaron colapsados al cabo de pocos minutos.

El padre de Robert T. Morris era el criptógrafo Robert Morris, quien participó en el desarrollo del sistema operativo UNIX y en su sistema de criptografía de credenciales de usuario. Desde 1986 Robert Morris, era el jefe científico del National Computer Security Center de la NSA, y tuvo que enfrentarse a la travesura de su hijo pocos meses después de haber participado en la caza de Marcus Hess, un ciberdelincuente alemán que robaba secretos militares para el KGB, obtenidos de los ordenadores conectados a ARPANET y MILNET. Clifford Stoll, amigo de Robert Morris, nos explica esta apasionante historia de ciberespionaje, en la que participaron la NSA, la CIA, el FBI y la AF-OSI en su libro The Cuckoo’s Egg.

Retornando al presente, tenemos un gusano que usa una vulnerabilidad en el servicio SMB corregida por Microsoft para los sistemas más modernos desde el mes de marzo, pero que pocos habían aplicado a sus equipos y por supuesto, nadie con Windows XP o Windows 2003, puesto que Microsoft ya no ofrecía actualizaciones para dichos sistemas operativos.

La NSA conocía desde hacía años esa vulnerabilidad en los sistemas operativos de Microsoft, pero no se lo comunicó con la intención de abusar de este fallo en beneficio propio. El grupo Equation, uno de los grupos ciberatacantes más cualificados, íntimamente relacionado con la NSA, desarrolló hace algunos años para la agencia un exploit llamado ETERNALBLUE que se aprovecha del fallo del servicio SMB en todas las versiones de Windows, permitiendo descargar y ejecutar código sobre cualquier equipo remoto.

En agosto de 2016 aparece en escena un grupo llamado The Shadow Brokers, ofreciendo en una subasta pública al mejor postor unas supuestas ciberarmas robadas a Equation (NSA). Todavía hoy se especula sobre quiénes son The Shadow Broker, pero el exagente de la NSA Eduard Snowden comentó en aquel momento que todo apuntaba al SVR (ex-KGB) como responsable. El New York Times lo describió como una venganza entre ciberagencias, comparando aquella filtración con la escena de la cabeza de caballo en la cama de la película El Padrino. El Washington Post publicó que posiblemente la filtración de información correspondía a un excontratista de la propia NSA, pero parece poco verosímil porqué el grupo siguió difundiendo información y mensajes firmados mientras este permanecía detenido.

Siete meses más tarde de la primera oferta, el pasado 14 de abril de 2017, The Shadow Broker decide publicar para uso y disfrute de toda la comunidad ciberdelictiva, todos los exploits que le robó a la NSA, entre ellos el ETERNALBLUE. Se especula si el grupo advirtió a Microsoft sobre la publicación de estos exploits, pues la compañía anunció las actualizaciones de seguridad exactamente un mes antes.

Así estábamos hace un mes, con las ciberarmas usadas durante años en secreto por la NSA en manos de cualquiera. Y mira por dónde, pasaban por ahí los chicos de Lazarus, que suelen trabajar para el Bureau 121, la agencia de ciberguerra del Ejército Popular de Corea del Norte, y se encuentran con este festín digital. Y al hambre se le unieron las ganas de comer, y en medio de una crisis de relación con occidente ven la oportunidad de crear una tormenta política internacional, dejando en evidencia la NSA.

Los investigadores han encontrado evidencias que relacionan el código de WannaCry con versiones anteriores del ransomware (software de secuestro con petición de rescate) atribuidas al grupo Lazarus, en lo que parece un claro reaprovechamiento del código escrito a principios del 2015 y de nuevo a principios de 2017.

Lazarus no es un jugador nuevo, se conoce su existencia desde 2007, cuando aparece como grupo de ciberdelincuentes con fines vinculados a operaciones estatales, especialmente contra el gobierno de Corea del Sur. En noviembre de 2014 dieron un salto cualitativo al atacar a Sony, motivados por la publicación de la película The Interview, que ridiculizaba al líder supremo de la revolución Kim Jong-un y a su dictadura.

Corea del Norte amenazó con represalias contra EEUU si se publicaba la película y Columbia Pictures, filial de Sony, suavizó el film y retrasó su publicación hasta octubre de 2014. Esto no fue suficiente y Lazarus, bajo el nombre de “Guardians of Peace” publicó cuentas, correos y diversos films no publicados por Sony Pictures a modo de represalia.

Entre 2015 y 2016 el grupo Lazarus atacó el sistema financiero de Corea del Sur y de sus “vecinos capitalistas”, consiguiendo más de 100Millones de dólares mediante un sofisticado ataque a la red bancaria SWIFT, realizando falsas transferencias internacionales, suplantando la identidad de los bancos de origen.

Todo indica que el incidente WannaCry tiene una motivación política y no económica. Primero, la cantidad de cuentas BitCoin utilizadas para la recepción del rescate es muy pequeña (entre 3 y 4) y esto facilitaría enormemente el rastreo de moneda. La cantidad recaudada en estas cuentas no alcanza los 100.000$, pura calderilla para un grupo que consiguió 100.000.000$ hace solo un año. Segundo, una vez pagado el rescate, el equipo es secuestrado de nuevo, perdiendo completamente la credibilidad ante otras víctimas que pretenden pagar. Y tercero, el mecanismo de seguridad que permite el apagado global de la infección es más propio de organizaciones gubernamentales que de criminales en busca de dinero.

En otras ocasiones, equipos contratados por las agencias de espionaje han realizado trabajos por su cuenta en busca de financiación, especialmente cuando los recortes gubernamentales les afectan. Algunos grupos chinos han hecho dinero en Wall Street usando información confidencial que robaron a diversas firmas de abogados, pero no parece que en esta ocasión sea un trabajo complementario de Lazarus.

No menos peligrosos son la división 11 del MSS de la República Popular China, que dispone de un operativo de entre 50.000 y 100.000 ciberagentes muy preparados, la mayoría de ellos destinados al control de la disidencia interna y a operaciones de espionaje a otros países. Se les atribuyen infiltraciones en las agencias de ciberseguridad de India, Canadá, Australia y en numerosos departamentos y empresas estratégicas de EEUU y Rusia. Algunos de programas de espionaje fabricados por los equipos chinos, aparecían firmados digitalmente con los certificados legítimos de fabricantes de hardware. Se han descubierto móviles y discos duros fabricados en China con puertas traseras preinstaladas.

Rusia, a pesar de su distendida relación con Corea del Norte, ha sido el país más afectado por WannaCry, y uno de los principales objetivos de espionaje industrial, aeronáutico, militar y científico de China. Las operaciones más conocidas de los activos rusos (SRV+FSB) son las de propaganda y desinformación, como la filtración de los programas usados por la NSA, la filtración de correos del Congreso Demócrata durante la campaña Hilary-Trump y sobre el recuento de votos en varios estados. También fue sonada la venganza contra la exclusión de los atletas rusos en las pasadas olimpiadas, filtrando información sobre dopajes consentidos por la WADA (Agencia Mundial Antidopaje).

Pocos meses después que los rusos anunciasen que estaban preparando el equivalente a la “bomba nuclear” en ciberseguridad, que les permitiría plantar cara a EEUU en igualdad de condiciones, se detectó la instalación de programas de control remoto de origen ruso en los ordenadores de la compañía eléctrica de Vermont.

Los rusos no olvidarán nunca la explosión del gaseoducto transiberiano en 1982, ocasionado por una bomba de relojería implantada por la CIA en un programa pirata canadiense que controlaba las instalaciones. También a la CIA, en colaboración con el MOSAD, se les atribuye la creación de Stuxnet, otro malware especializado en atacar sistemas de control industrial y que causó numerosos daños al programa de investigación nuclear de Irán.

A los grupos relacionados con el MOSAD se les atribuyen algunos de los programas más sofisticados para el espionaje de teléfonos móviles, como Chrysaor y sus variantes. Pero Israel cobró con la misma moneda, cuando infectaron al menos un centenar de teléfonos de miembros de su ejército destinados en Gaza, con el malware espía ViperRAT. No parece que Hamas tenga las capacidades tecnológicas necesarias para realizar este tipo de armas, pero sí las tiene su mejor aliado, Irán.

Regresando a Europa, el gobierno español está intentando “homologarse” a Alemania, que ha decidido activar una ciberejército para actuar en operaciones de ciberdefensa y contra-ataque, compuesta 13.500 personas entre militares y civiles. Proporcionalmente, el estado español necesitará unos 7.500 operativos, y es posible que consigan convencer a suficientes cibermercenarios, pero con los hackers éticos que no cuenten.

No cuenten con nosotros mientras entre los objetivos esté algo tan ambiguo y discrecional como el contra-ataque. No cuenten con nosotros mientras legislan (hasta en tres ocasiones del código penal) como ilegal la creación, la posesión y la distribución de herramientas informáticas susceptibles de ser utilizadas para la comisión de delitos. No cuenten con nosotros si el objetivo no es la defensa de la seguridad de los ciudadanos, de todos los ciudadanos, sin tener en cuenta nacionalidad, religión ni clase social. No esperen que participemos en esta guerra global no declarada donde las víctimas suelen ser los civiles de unos y otros países.

Déjennos hacer nuestro trabajo en condiciones, que podamos compartir entre hackers el código que afecta al buen funcionamiento de la red, sin riesgo de ser detenidos como si fuéramos criminales. Dejen que pongamos a prueba la seguridad de nuestros sistemas operativos y equipos conectados a la gran red. Asegúrense que las compañías fabricantes de equipos y sistemas operativos cumplen con su deber moral de actualizar los fallos de seguridad cuando se los comunicamos.

Ayuden a las empresas y particulares a poner al día los equipos obsoletos conectados a la red, en beneficio de todos. Y dejen de tratarnos como presuntos criminales, coartando nuestra libertad de investigación, y así será innecesario que nos pongamos nuevamente nostálgicos recordando aquella cita de Benjamin Franklin:

                  «Aquellos que renunciarían a una libertad esencial para comprar un poco de seguridad momentánea, no merecen ni libertad ni seguridad y acabará perdiendo ambas»

7 maig 2017

Duplicar memòries USB amb dd

Author: Joaquim Perez Noguer | Filed under: Linux

Vist a https://www.linuxquestions.org

Plug in both USB pen drives and type: fdisk -l as root in terminal to see what their device names are. If they appear as /dev/sdb and /dev/sdc, type in a terminal: dd if=/dev/sdb of=/dev/sdc conv=notrunc.
To make an image of the entire drive including MBR (boot files), type in terminal: dd if=/dev/sdb of=/path/to/destination/image.dd conv=notrunc. To restore the image to a new drive which is seen as /dev/sdb: dd if=/path/to/image.dd of=/dev/sdb conv=notrunc