Botón de Amazon Dash: retrospectiva



¡El Internet de las cosas revolucionará en todas partes! Producción? Pasear al perro? ¿Reiniciar las cafeteras? Conduciendo un auto? Nutrición? ¡Pon el sensor allí! El marketing afirma que cualquier parte de nuestras vidas mejorará con IoT. Por qué Porque con un sensor simple y una sinfonía de conversaciones corporativas vacías sobre el aprendizaje automático, ¡una revolución es similar al fenómeno del iPhone que está por suceder! Y aquí está: Amazon Dash , alrededor de 2014.

El primer producto de la familia Dash fue el escáner de código de barras Amazon Dash Wand: se distribuyó de forma gratuita a los clientes de Amazon Fresh [ servicios de entrega de alimentos / aprox. perev. ], que se suponía que debían colgarlo en la cocina, por ejemplo, usando un imán de nevera. Cuando el cliente de Fresh se quedó sin leche, pudo escanear la bolsa antes de tirarla y agregarla al carrito de compras. Sospecho que estos dispositivos eran bastante caros y lo suficientemente sofisticados como para ser utilizados como Amazon quería (por lo que su lanzamiento fue muy limitado). El objetivo de Amazon era permitir a los clientes potenciales hacer pedidos con el menor esfuerzo posible, para que terminen comprando tanto como sea posible. ¿Recuerdas la compra ahora por 1 botón de clic?



Y esta varita finalmente se actualizó a un dispositivo que contiene Alex, activado por un botón (dejando el escáner de código de barras y el imán en el refrigerador), que está disponible para todos . Sin embargo, Amazon ha depositado sus esperanzas en un nuevo artilugio. A mediados de 2015, Amazon introdujo el servicio de reabastecimiento Dash con su producto, el botón Dash. Se suponía que este botón era un botón de "compra con 1 clic" en el mundo físico. Para usar el escáner de código de barras Wand, el usuario necesitaba recordar que estaba acostado en algún lugar, encontrar el código de barras, escanearlo, recordar la necesidad de abrir su canasta y ordenar los productos. Demasiados pasos, demasiadas oportunidades para salir de la montaña rusa comercial de Bezos. ¡El botón del tablero funcionó más fácilmente! Presione el botón, obtenga el producto marcado en la dirección guardada. Cada botón tenía que comprarse (por $ 5 con un cupón de descuento de $ 5) vinculado a una marca específica, y luego configurarse en línea para comprar un producto específico cuando se presiona. En los comerciales, familias felices los colocaban en lavadoras para comprar Tide, en gabinetes de cocina para comprar toallas de papel. Bastante complicado: realmente es una compra ahora por 1 botón de clic para el mundo físico.

Los botones del tablero tenían dos opciones. Ambos tenían la misma interfaz y funcionaban esencialmente de la misma manera. El dispositivo tenía un botón (el software puede reconocer varias secuencias de clics), un LED RGB y un micrófono (no, no escuchó sus conversaciones, pero volveremos sobre esto). Y también tenía un transmisor WiFi. La segunda versión (que se lanzó en silencio en 2016) agregó una conexión Bluetooth y el relleno cambió por completo, aunque esto no fue notorio para el usuario.

En febrero de 2019, Amazon dejó de vender Dash Buttons.

Pero escribimos sobre glándulas, no sobre negocios


¡Los botones del tablero eran un truco genial! En un mundo familiarizado con ESP8266, las glándulas como el botón Dash se consideran un proyecto de nivel de entrada estándar para la automatización del hogar. Pero en 2015, cuando se lanzaron los botones, ESP estaba comenzando a abrirse camino. Hasta ese momento, WiFi significaba un dispositivo inusual como Electric Imp o un circuito integrado llamado Texas . El mercado de dispositivos de bajo costo con conexión a Internet era completamente diferente y más costoso.

Probablemente, Amazon no tenía sentido producir dicho botón si costaba más de un par de dólares, por lo que al desarrollarlo, la compañía recurrió a un par de trucos para reducir el costo sin reducir las cualidades del consumidor.



Los hacks geniales comienzan con una conexión. Los métodos clásicos de conexión a una red doméstica de dispositivos WiFi son una pesadilla desde el punto de vista del usuario. Descargue el dispositivo por primera vez, espere hasta que se dé cuenta de que no hay conexión con la red, vaya al modo de punto de acceso, abra la aplicación, abra manualmente la página de configuración y conéctese a la nueva red WiFi, regrese a la aplicación, ingrese su nombre de usuario / contraseña, espere para siempre, cuando de alguna manera te informa del éxito. ¡Y esto solo funcionará si su teléfono no supera la aplicación en segundo plano o no deja caer la red WiFi debido a la falta de conexión a Internet! Los desarrolladores de Android en varias ocasiones pueden haberse visto obligados a cambiar la red WiFi sin intervención del usuario, pero aun así, la experiencia de cambiar entre plataformas fue terriblemente inconsistente.

¿Qué hace un hacker? Bluetooth funciona bastante bien, pero necesita otro transmisor. El mencionado Imp eléctrico usó una fotocélula a la que era necesario inclinar la pantalla del teléfono; parpadeó en una secuencia determinada de codificación de acceso. Los dispositivos se pueden programar de antemano, como lo hace Amazon con el nuevo Kindle, ingresando los datos de la cuenta del cliente allí, pero este es un proceso de producción complejo y todavía necesita algún tipo de esquema para cambiar la red. Pero en lugar de todas estas soluciones, Amazon decidió usar un método que solo vi en bromas: emparejamiento acústico.


Dash Button V1

En ambas generaciones, había un micrófono que percibía el nombre de usuario / contraseña de la red del usuario a través de los sonidos obtenidos por manipulación de frecuencia , a una frecuencia justo por debajo de 20 kHz. ¿Por qué 20 kHz y no más? El emparejamiento acústico debería funcionar donde haya un micrófono y un altavoz. Estos requisitos son tan fáciles de cumplir que Amazon podría diseñar un procedimiento de emparejamiento para que funcionara no solo en el marco de su propia aplicación móvil: las personas podrían usar cualquier cosa, desde un Chromebook con un navegador a otro dispositivo de Amazon. No conozco los casos en que estos botones se configuraron a través del cercano Amazon Echo, pero técnicamente hubiera sido posible, pero habría parecido mágico. Dado todo esto, la frecuencia debe ser tal que siempre se pueda reproducir con precisión, es decir, en el rango accesible para el oído humano. Haga clic aquí para obtener detalles sobre cómo analizar este protocolo.


Dentro de V1

Mirando dentro del dispositivo, nos encontramos con una sorpresa: ¡batería AA! No una batería "industrial" con una marca diferente, sino una batería de consumo simple, sin cambiar la marca, soldada a los contactos. Que? Bueno, aparentemente, Amazon decidió que la batería de la tableta no proporcionaría una duración de batería suficientemente larga, posiblemente debido al consumo de energía al volver a conectarse a través de WiFi, y una tableta más grande sería mucho más costosa que una batería normal. Y aunque la batería sostiene bien la batería (óvalo negro a la izquierda), desafortunadamente, está soldada a los contactos, por lo que todo el conjunto tendrá que cambiarse cuando la batería esté agotada, después de aproximadamente mil clics.

¿Qué pasa con el resto del cuerpo? Todo parece lo más simple posible. Los tornillos fijan el tablero a la parte superior de la caja, todo lo demás está pegado o soldado con ultrasonido . Las formas de todos los componentes plásticos se seleccionan para que sean fáciles de moldear. En general, el dispositivo parece simple (y barato) de fabricar, lo que no es tan sorprendente.

Crackability


¿Qué se puede hackear en el botón del tablero? Si la gente comienza a tirar estos dispositivos increíblemente simples, ¿podemos darles una segunda vida?

Quizás el primer truco fue el uso de estos botones para otros fines sin ningún tipo de pirateo, tanto de software como de hardware. Entre pulsaciones, el botón se apaga para ahorrar energía. A la larga, incluso las solicitudes poco frecuentes de mantenerse en contacto con WiFi consumen mucha energía: y los botones Dash deberían funcionar durante años, por lo que no permanecen conectados permanentemente. Cuando se presiona el botón, el dispositivo se activa, enciende el LED, dejando en claro que está vivo, se conecta a WiFi, llama a la API de Amazon, luego se cae de la red y apaga el LED. Cuando se conecta a una red, sin fallas pasa por varios pasos de configuración, incluida la transmisión de la solicitud de la sonda ARP, para asegurarse de que nadie más tenga esa dirección MAC.

Los piratas informáticos emprendedores se dieron cuenta de que si monitorea el tráfico LAN, puede capturar estas solicitudes e incluirán la dirección MAC única del dispositivo. Y debido al estilo especial del botón Dash, si vemos la solicitud de la sonda ARP, entonces sabemos que el dispositivo acaba de despertarse, lo que significa que el botón acaba de presionarse. Entonces puede hacer lo que quiera con esto [haciendo que el botón no pida nada / aprox. transl.]. Por primera vez aprendí sobre este método en el blog de Ted . E incluso cuando el backend de Amazon se apaga, los botones no dejan de funcionar.


Junta V1

La captura de solicitudes ARP funciona, pero me parece poco conveniente. Estos dispositivos ya tienen procesadores, así que déjelos decir lo que necesitan. ¿Qué pasa con la programación de botones Dash? No es sorprendente que la gente ya haya tratado con el tablero y pintado lo que va a dónde. Ninguna de las versiones de botones tiene piezas de repuesto particularmente raras: la versión 1 tiene un módulo Broadcom Cypress BCM943362WCD4 de la familia WICED, que, de hecho, es solo un STM32F205, conectado con un transmisor, para ello hay un kit de desarrollador . En la versión 2 están Atmel Microchip ATSAMG55 y Atmel Microchip ATWINC1500B, con el transmisor Cypress CYBL10563-68FNXI Bluetooth. Estos son procesadores ARM disponibles para todos con documentación detallada.

Y, a pesar de la disponibilidad de hierro y botones, nadie parece haber avanzado mucho en este frente. Es fácil encontrar materiales de capacitación sobre dispositivos de reprogramación y LED parpadeantes o presionar botones de seguimiento, pero todos los materiales que encontré terminan en el lugar más interesante: "ahora tenemos que lidiar con WiFi". Entonces, sí, se pueden reprogramar en algunos dispositivos de prueba extraños, pero hasta ahora todavía no hemos visto cómo alguien podrá subyugar completamente este botón para acceder a todas las ricas posibilidades ocultas en él.

Que sigue


Al final, algunas palabras sobre Amazon. Pequeños proyectos de fabricación de dispositivos como Dash Button y Wand son mis tipos favoritos de experimentación corporativa. Siempre me gusta cuando una empresa intenta hacer un dispositivo inusual. Esto es mucho mejor que matar estos proyectos incluso antes de que salgan del laboratorio.

Por otro lado, el botón Dash es algo bastante inútil. Aunque tienen una vida útil limitada, sin embargo, ninguna marca en ellos evitará que sean arrojados a la basura después de que dejen de funcionar. ¿Qué más espera Amazon de los clientes? El dispositivo obviamente tiene una batería adentro, pero dado que no hay una indicación clara sobre el tema en el estuche, los usuarios pueden no darse cuenta de que debe enviarse al lugar donde se reciclan las baterías. El uso de una batería común común es una idea complicada, pero debe ir seguida de una forma obvia de eliminarla, lo que permitiría usar el producto sin límites de tiempo, y sería mejor relacionarse con el medio ambiente.

¡La ventaja será que pronto podremos recoger estos botones en bolsas! Cuando comienzan a fallar, podemos interrumpir el flujo de basura electrónica al recolectarlos y rehacerlos para otros fines.

Después de comenzar a observar una ola de proyectos con estos botones, tendremos dos formas interesantes de estudiar estos dispositivos. Una es encontrar un soporte de batería que tenga el tamaño adecuado para la placa, de modo que se puedan cambiar las baterías, y también crear un estuche adecuado para imprimir, en el que encaje todo esto. Luego, el botón Dash podrá liberarse de sus cadenas de vida útil finita y trabajar durante el tiempo que queramos.

La segunda forma es obvia: ¡haga que el WiFi funcione! En mi experiencia, el WiFi de Broadcom bajo la marca WICED puede ser bastante complicado, pero el WINC1500 no parece exótico. Como se señaló en 2016 , este módulo se utilizó en el Arduino MKR1000 y WiFi Shield 101, así como en varias placas de Adafruit. ¿Puedo resolverlo? ¡Eso esperamos!

Source: https://habr.com/ru/post/468913/


All Articles