Salta al contenuto principale



Endpoint security: cos’è e come si applica alla sicurezza informatica


La sicurezza degli endpoint è diventata una priorità per le aziende, soprattutto con la diffusione del lavoro distribuito. Questo approfondimento esplora le principali minacce informatiche e le strategie di difesa più efficaci, con un focus sulle soluzioni EPP ed EDR per una protezione avanzata.

L'articolo Endpoint security: cos’è e come si applica alla sicurezza informatica proviene da Cyber Security 360.



New Shot Records – le nuove uscite freezonemagazine.com/news/new-…
La label pavese arricchisce il suo catalogo con quattro nuove pubblicazioni in arrivo nei negozi specializzati in questi giorni. James Harman: The Bluesmoose Session. Registrazione live del 31 ottobre 2018 a Groesbeek (Olanda)La leggenda dell’arpa blues James Harman si esibisce in una Radio Session del 2018 in Olanda, supportato dall’agile ensemble di Shakedown Tim & […]
L'articolo New Shot


Endpoint security: cos’è e come si applica alla sicurezza informatica


@Informatica (Italy e non Italy 😁)
La sicurezza degli endpoint è diventata una priorità per le aziende, soprattutto con la diffusione del lavoro distribuito. Questo approfondimento esplora le principali minacce informatiche e le strategie di difesa più efficaci, con un focus sulle soluzioni EPP ed EDR per una protezione avanzata.



“Bau bau”: la deputata Montaruli (Fdi) fa il verso del cane durante un dibattito tv. Imbarazzo in studio


@Politica interna, europea e internazionale
È diventata virale sui social media la scena della deputata di Fratelli d’Italia Augusta Montaruli che fa il verso del cane durante un dibattito in diretta tv. “Bau bau”, ha improvvisamente iniziato a ripetere l’onorevole mentre stava discutendo con



The publication of Friendica posts on Bluesky has radically worsened


Hello to the whole group @Friendica Support

I noticed that the publication of Friendica posts on Bluesky has radically worsened.

Sometimes the messages are brutally cut off; other times, what remains of the message is a residue that is difficult to recognize; but the main problem is that often nothing is published!

I would like to understand if it is a problem with my account, a problem with my instance, or if it is a more widespread problem that has also involved other users and other instances

reshared this



Take my money: OCR crypto stealers in Google Play and App Store


Update 06.02.2025: Apple removed malicious apps from the App Store.

In March 2023, researchers at ESET discovered malware implants embedded into various messaging app mods. Some of these scanned users’ image galleries in search of crypto wallet access recovery phrases. The search employed an OCR model which selected images on the victim’s device to exfiltrate and send to the C2 server. The campaign, which targeted Android and Windows users, saw the malware spread through unofficial sources. In late 2024, we discovered a new malware campaign we dubbed “SparkCat”, whose operators used similar tactics while attacking Android and iOS users through both official and unofficial app stores. Our conclusions in a nutshell:

  • We found Android and iOS apps, some available in Google Play and the App Store, which were embedded with a malicious SDK/framework for stealing recovery phrases for crypto wallets. The infected apps in Google Play had been downloaded more than 242,000 times. This was the first time a stealer had been found in Apple’s App Store.
  • The Android malware module would decrypt and launch an OCR plug-in built with Google’s ML Kit library, and use that to recognize text it found in images inside the gallery. Images that matched keywords received from the C2 were sent to the server. The iOS-specific malicious module had a similar design and also relied on Google’s ML Kit library for OCR.
  • The malware, which we dubbed “SparkCat”, used an unidentified protocol implemented in Rust, a language untypical of mobile apps, to communicate with the C2.
  • Judging by timestamps in malware files and creation dates of configuration files in GitLab repositories, SparkCat has been active since March 2024.


A malware SDK in Google Play apps


The first app to arouse our suspicion was a food delivery app in the UAE and Indonesia, named “ComeCome” (APK name: com.bintiger.mall.android), which was available in Google Play at the time of the research, with more than 10,000 downloads.

The onCreate method in the Application subclass, which is one of the app’s entry points, was overridden in version 2.0.0 (f99252b23f42b9b054b7233930532fcd). This method initializes an SDK component named “Spark”. It was originally obfuscated, so we statically deobfuscated it before analyzing.

Suspicious SDK being called
Suspicious SDK being called

Spark is written in Java. When initialized, it downloads a JSON configuration file from a GitLab URL embedded in the malware body. The JSON is decoded with base64 and then decrypted with AES-128 in CBC mode.

The config from GitLab being decrypted
The config from GitLab being decrypted

If the SDK fails to retrieve a configuration, the default settings are used.

We managed to download the following config from GitLab:
{
"http": ["https://api.aliyung.org"],
"rust": ["api.aliyung.com:18883"],
"tfm": 1
}
The “http” and “rust” fields contain SDK-specific C2 addresses, and the tfm flag is used to select a C2. With tfm equal to 1, “rust” will be used as the C2, and “http” if tfm has any other value.

Spark uses POST requests to communicate with the “http” server. It encrypts data with AES-256 in CBC mode before sending and decrypts server responses with AES-128 in CBC mode. In both cases, the keys are hard-coded constants.

The process of sending data to “rust” consists of three stages:

  • Data is encrypted with AES-256 in CBC mode using the same key as in the case of the “http” server.
  • The malware generates a JSON, where <PATH> is the data upload path and <DATA> is the encrypted data from the previous stage.
    {
    "path": "upload@<PATH>",
    "method": "POST",
    "contentType": "application/json",
    "data": "<DATA>"
    }
  • The JSON is sent to the server with the help of the native libmodsvmp.so library via the unidentified protocol over TCP sockets. Written in Rust, the library disguises itself as a popular Android obfuscator.

Static analysis of the library wasn’t easy, as Rust uses a non-standard calling convention and the file had no function names in it. We managed to reconstruct the interaction pattern after running a dynamic analysis with Frida. Before sending data to the server, the library generates a 32-byte key for the AES-GCM-SIV cipher. With this key, it encrypts the data, pre-compressed with ZSTD. The algorithm’s nonce value is not generated and set to “unique nonce” (sic) in the code.

Extending the AES key using the hard-coded nonce value
Extending the AES key using the hard-coded nonce value

The AES key is encrypted with RSA and is then also sent to the server. The public key for this RSA encryption is passed when calling a native method from the malicious SDK, in PEM format. The message is padded with 224 random bytes prior to AES key encryption. Upon receiving the request, the attackers’ server decrypts the AES key with a private RSA key, decodes the data it received, and then compresses the response with ZSTD and encrypts it with the AES-GCM-SIV algorithm. After being decrypted in the native library, the server response is passed to the SDK where it undergoes base64 decoding and decryption according to the same principle used for communication with the “http” server. See below for an example of communication between the malware module and the “rust” server.

An example of communication with the "rust" server
An example of communication with the “rust” server

Once a configuration has been downloaded, Spark decrypts a payload from assets and executes it in a separate thread. It uses XOR with a 16-byte key for a cipher.

A payload being decrypted
A payload being decrypted

The payload (c84784a5a0ee6fedc2abe1545f933655) is a wrapper for the TextRecognizer interface in Google’s ML Kit library. It loads different OCR models depending on the system language to recognize Latin, Korean, Chinese or Japanese characters in images. The SDK then uploads device information to /api/e/d/u on the C2 server. The server responds with an object that controls further malware activities. The object is a JSON file, its structure shown below. The uploadSwitch flag allows the malware to keep running (value 1).
{
"code": 0,
"message": "success",
"data": {
"uploadSwitch": 1,
"pw": 0,
"rs": ""
}
}
The SDK then registers an application activity lifecycle callback. Whenever the user initiates a chat with the support team, implemented with the legitimate third-party Easemob HelpDesk SDK, the handler requests access to the device’s image gallery. If the pw flag in the aforementioned object is equal to 1, the module will keep requesting access if denied. The reasoning behind the SDK’s request seems sound at first: users may attach images when contacting support.

The reason given when requesting read access to the gallery
The reason given when requesting read access to the gallery

If access is granted, the SDK runs its main functionality. This starts with sending a request to /api/e/config/rekognition on the C2 and getting parameters for processing OCR results in a response.
{
"code": 0,
"message": "success",
"data": {
"letterMax": 34,
"letterMin": 2,
"enable": 1,
"wordlistMatchMin": 9,
"interval": 100,
"lang": 1,
"wordMin": 12,
"wordMax": 34
}
}
These parameters are used by processor classes that filter images by OCR-recognized words. The malware also requests a list of keywords at /api/e/config/keyword for KeywordsProcessor, which uses these to select images to upload to the C2 server.

Searching for keywords among OCR image processing results
Searching for keywords among OCR image processing results

Besides KeywordsProcessor, the malware contains two further processors: DictProcessor and WordNumProcessor. The former filters images using localized dictionaries stored decrypted inside rapp.binary in the assets, and the latter filters words by length. The letterMin and letterMax parameters for each process define the permitted range of word length. For DictProcessor, wordlistMatchMin sets a minimum threshold for dictionary word matches in an image. For WordNumProcessor, wordMin and wordMax define the acceptable range for the total number of recognized words. The rs field in the response to the request for registering an infected device controls which processor will be used.

Images that match the search criteria are downloaded from the device in three steps. First, a request containing the image’s MD5 hash is sent to /api/e/img/uploadedCheck on the C2. Next, the image is uploaded to either Amazon’s cloud storage or to file@/api/res/send on the “rust” server. After that, a link to the image is uploaded to /api/e/img/rekognition on the C2. So, the SDK, designed for analytics as suggested by the package name com.spark.stat, is actually malware that selectively steals gallery content.

Uploading an image link
Uploading an image link

We asked ourselves what kind of images the attackers were looking for. To find out, we requested from the C2 servers a list of keywords for OCR-based search. In each case, we received words in Chinese, Japanese, Korean, English, Czech, French, Italian, Polish and Portuguese. The terms all indicated that the attackers were financially motivated, specifically targeting recovery phrases also known as “mnemonics” that can be used to regain access to cryptocurrency wallets.
{
"code": 0,
"message": "success",
"data": {
"keywords": ["助记词", "助記詞", "ニーモニック", "기억코드", "Mnemonic",
"Mnemotecnia", "Mnémonique", "Mnemonico", "Mnemotechnika", "Mnemônico",
"클립보드로복사", "복구", "단어", "문구", "계정", "Phrase"]
}
}
Unfortunately, ComeCome was not the only app we found embedded with malicious content. We discovered a number of additional, unrelated apps covering a variety of subjects. Combined, these apps had been installed over 242,000 times at the time of writing this, and some of them remained accessible on Google Play. A full inventory can be found under the Indicators of Compromise section. We alerted Google to the presence of infected apps in its store.

Popular apps containing the malicious payload
Popular apps containing the malicious payload

Furthermore, our telemetry showed that malicious apps were also being spread through unofficial channels.

SDK features could vary slightly from app to app. Whereas the malware in ComeCome only requested permissions when the user opened the support chat, in some other cases, launching the core functionality acted as the trigger.

One small detail…


As we analyzed the trojanized Android apps, we noticed how the SDK set deviceType to “android” in device information it was sending to the C2, which suggested that a similar Trojan existed for other platforms.

Collecting information about an infected Android device
Collecting information about an infected Android device

A subsequent investigation uncovered malicious apps in App Store infected with a framework that contained the same Trojan. For instance, ComeCome for iOS was infected in the same way as its Android version. This is the first known case of an app infected with OCR spyware being found in Apple’s official app marketplace.

The ComeCome page in the App Store
The ComeCome page in the App Store

Negative user feedback about ComeCome
Negative user feedback about ComeCome

Malicious frameworks in App Store apps


We detected a series of apps embedded with a malicious framework in the App Store. We cannot confirm with certainty whether the infection was a result of a supply chain attack or deliberate action by the developers. Some of the apps, such as food delivery services, appeared to be legitimate, whereas others apparently had been built to lure victims. For example, we saw several similar AI-featured “messaging apps” by the same developer:

Messaging apps in the App Store designed to lure victims
Messaging apps in the App Store designed to lure victims

Besides the malicious framework itself, some of the infected apps contained a modify_gzip.rb script in the root folder. It was apparently used by the developers to embed the framework in the app:

The contents of modify_gzip.rb
The contents of modify_gzip.rb

The framework itself is written in Objective-C and obfuscated with HikariLLVM. In the apps we detected, it had one of three names:

  1. GZIP;
  2. googleappsdk;
  3. stat.

As with the Android-specific version, the iOS malware utilized the ML Kit interface, which provided access to a Google OCR model trained to recognize text and a Rust library that implemented a custom C2 communication protocol. However, in this case, it was embedded directly into the malicious executable. Unlike the Android version, the iOS framework retained debugging symbols, which allowed us to identify several unique details:

  • The lines reveal the paths on the framework creators’ device where the project was stored, including the user names:
    • /Users/qiongwu/: the project author’s home directory
    • /Users/quiwengjing/: the Rust library creator’s home directory


  • The C2-rust communication module was named im_net_sys. Besides the client, it contains code that the attackers’ server presumably uses to communicate with victims.
  • The project’s original name is GZIP.

Project details from code lines in the malicious framework
Project details from code lines in the malicious framework

The framework contains several malicious classes. The following are of particular interest:

  • MMMaker: downloads a configuration and gathers information about the device.
  • ApiMgr: sends device data.
  • PhotoMgr: searches for photos containing keywords on the device and uploads them to the server.
  • MMCore: stores information about the C2 session.
  • MMLocationMgr: collects the current location of the device. It sent no data during our testing, so the exact purpose of this class remained unclear.

Certain classes, such as MMMaker, could be missing or bear a different name in earlier versions of the framework, but this didn’t change the malware’s core functionality.

Obfuscation significantly complicates the static analysis of samples, as strings are encrypted and the program’s control flow is obscured. To quickly decrypt the strings of interest, we opted for dynamic analysis. We ran the application under Frida and captured a dump of the _data section where these strings were stored. What caught our attention was the fact that the app bundleID was among the decrypted data:

com.lc.btdj: the ComeCome bundleID as used in the +[MMCore config] selector
com.lc.btdj: the ComeCome bundleID as used in the +[MMCore config] selector

As it turned out, the framework also stored other app bundle identifiers used in the +[MMCore config] selector. Our takeaways are as follows:

  1. The Trojan can behave differently depending on the app it is running in.
  2. There are more potentially infected apps than we originally thought.

For the full list of bundle IDs we collected from decrypted strings in various framework samples, see the IoC section. Some of the apps associated with these IDs had been removed from the App Store at the time of the investigation, whereas others were still there and contained malicious code. Some of the IDs on the list referred to apps that did not contain the malicious framework at the time of this investigation.

As with the Android-specific version, the Trojan implements three modes of filtering OCR output: keywords, word length, and localized dictionaries stored in encrypted form right inside the framework, in a “wordlists” folder. Unfortunately, we were unable to ascertain that the malware indeed made use of the last method. None of the samples we analyzed contained links to the dictionaries or accessed them while running.

Sending selected photos containing keywords is a key step in the malicious framework’s operation. Similar to the Android app, the Trojan requests permission to access the gallery only when launching the View Controller responsible for displaying the support chat. At the initialization stage, the Trojan, depending on the application it is running in, replaces the viewDidLoad or viewWillAppear method in the relevant controller with its own wrapper that calls the method +[PhotoMgr startTask:]. The latter then checks if the application has access to the gallery and requests it if needed. Next, if access is granted, PhotoMgr searches for photos that match sending criteria among those that are available and have not been processed before.

The code snippet of the malicious wrapper around the viewDidLoad method that determines which application the Trojan is running in
The code snippet of the malicious wrapper around the viewDidLoad method that determines which application the Trojan is running in

Although it took several attempts, we managed to make the app upload a picture to Amazon’s cloud and then send information about it to the attackers’ server. The app was using HTTPS to communicate with the server, not the custom “rust” protocol:

The communication with the C2 and upload to AWS
The communication with the C2 and upload to AWS

The data being sent looks as follows:
POST /api/e/img/uploadedCheck
{
"imgSign": <imgMD5>,
"orgId": <implantId>,
"deviceId": <deviceUUID>
}

POST api/e/img/rekognition
{
"imgUrl": "https://dmbucket102.s3.ap-northeast-
1.amazonaws.com/"<app_name>_<device_uuid>"/photo_"<timestamp>".jpg",
"deviceName": "ios",
"appName": <appName>,
"deviceUUID": <deviceUUID>,
"imgSign": <imgMD5>,
"imgSize": <imgSize>,
"orgId":<implantId>,
"deviceChannel": <iphoneModel>,
"keyword":<keywordsFoundOnPicture>,
"reksign":<processor type>
}
The oldest version of the malicious framework we were investigating was built on March 15, 2024. While it doesn’t differ significantly from newer versions, this one contains more unencrypted strings, including API endpoints and a single, hardcoded C2 address. Server responses are received in plaintext.

URLs hard-coded into the oldest version of the malicious framework
URLs hard-coded into the oldest version of the malicious framework

File creation date in the app
File creation date in the app

Campaign features


While analyzing the Android apps, we found that the word processor code contained comments in Chinese. Error descriptions returned by the C2 server in response to malformed requests were also in Chinese. These, along with the name of the framework developer’s home directory which we obtained while analyzing the iOS-specific version suggest that the creator of the malicious module speaks fluent Chinese. That being said, we have insufficient data to attribute the campaign to a known cybercrime gang.

Our investigation revealed that the attackers were targeting crypto wallet recovery phrases, which were sufficient for gaining full control over a victim’s crypto wallet to steal the funds. It must be noted that the malware is flexible enough to steal not just these phrases but also other sensitive data from the gallery, such as messages or passwords that might have been captured in screenshots. Multiple OCR results processing modes mitigate the effects of model errors that could affect the recognition of access recovery phrase images if only keyword processing were used.

Our analysis of the malicious Rust code inside the iOS frameworks revealed client code for communicating with the “rust” server and server-side encryption components. This suggests that the attackers’ servers likely also use Rust for protocol handling.

Server-side private RSA key import
Server-side private RSA key import

We believe that this campaign is targeting, at a minimum, Android and iOS users in Europe and Asia, as indicated by the following:

  • The keywords used were in various languages native to those who live in European and Asian countries.
  • The dictionaries inside assets were localized in the same way as the keywords.
  • Some of the apps apparently operate in several countries. Some food delivery apps support signing up with a phone number from the UAE, Kazakhstan, China, Indonesia, Zimbabwe and other countries.

We suspect that mobile users in other regions besides Europe and Asia may have been targeted by this malicious campaign as well.

One of the first malicious modules that we started our investigation with was named “Spark”. The bundle ID of the malicious framework itself, “bigCat.GZIPApp”, caught our attention when we analyzed the iOS-specific Trojan. Hence the name, “SparkCat”. The following are some of the characteristics of this malware:

  • Cross-platform compatibility;
  • The use of the Rust programming language, which is rarely found in mobile apps;
  • Official app marketplaces as a propagation vector;
  • Stealth, with C2 domains often mimicking legitimate services and malicious frameworks disguised as system packages;
  • Obfuscation, which hinders analysis and detection.


Conclusion


Unfortunately, despite rigorous screening by the official marketplaces and general awareness of OCR-based crypto wallet theft scams, the infected apps still found their way into Google Play and the App Store. What makes this Trojan particularly dangerous is that there’s no indication of a malicious implant hidden within the app. The permissions that it requests may look like they are needed for its core functionality or appear harmless at first glance. The malware also runs quite stealthily. This case once again shatters the myth that iOS is somehow impervious to threats posed by malicious apps targeting Android. Here are some tips that can help you avoid becoming a victim of this malware:

  • If you have one of the infected apps installed on your device, remove it and avoid reinstalling until a fix is released.
  • Avoid storing screenshots with sensitive information, such as crypto wallets recovery phrases, in the gallery. You can store passwords, confidential documents and other sensitive information in special apps.
  • Use a robust security product on all your devices.

Our security products return the following verdicts when detecting malware associated with this campaign:

  • HEUR:Trojan.IphoneOS.SparkCat.*
  • HEUR:Trojan.AndroidOS.SparkCat.*


Indicators of compromise


Infected Android apps
0ff6a5a204c60ae5e2c919ac39898d4f
21bf5e05e53c0904b577b9d00588e0e7
a4a6d233c677deb862d284e1453eeafb
66b819e02776cb0b0f668d8f4f9a71fd
f28f4fd4a72f7aab8430f8bc91e8acba
51cb671292eeea2cb2a9cc35f2913aa3
00ed27c35b2c53d853fafe71e63339ed
7ac98ca66ed2f131049a41f4447702cd
6a49749e64eb735be32544eab5a6452d
10c9dcabf0a7ed8b8404cd6b56012ae4
24db4778e905f12f011d13c7fb6cebde
4ee16c54b6c4299a5dfbc8cf91913ea3
a8cd933b1cb4a6cae3f486303b8ab20a
ee714946a8af117338b08550febcd0a9
0b4ae281936676451407959ec1745d93
f99252b23f42b9b054b7233930532fcd
21bf5e05e53c0904b577b9d00588e0e7
eea5800f12dd841b73e92d15e48b2b71

iOS framework MD5s:
35fce37ae2b84a69ceb7bbd51163ca8a
cd6b80de848893722fa11133cbacd052
6a9c0474cc5e0b8a9b1e3baed5a26893
bbcbf5f3119648466c1300c3c51a1c77
fe175909ac6f3c1cce3bc8161808d8b7
31ebf99e55617a6ca5ab8e77dfd75456
02646d3192e3826dd3a71be43d8d2a9e
1e14de6de709e4bf0e954100f8b4796b
54ac7ae8ace37904dcd61f74a7ff0d42
caf92da1d0ff6f8251991d38a840fb4a
db128221836b9c0175a249c7f567f620

Trojan configuration in GitLab
hxxps://gitlab[.]com/group6815923/ai/-/raw/main/rel.json
hxxps://gitlab[.]com/group6815923/kz/-/raw/main/rel.json

C2
api.firebaseo[.]com
api.aliyung[.]com
api.aliyung[.]org
uploads.99ai[.]world
socket.99ai[.]world
api.googleapps[.]top

Photo storage
hxxps://dmbucket102.s3.ap-northeast-1.amazonaws[.]com

Names of Infected Android APKs from Google Play
com.crownplay.vanity.address
com.atvnewsonline.app
com.bintiger.mall.android
com.websea.exchange
org.safew.messenger
org.safew.messenger.store
com.tonghui.paybank
com.bs.feifubao
com.sapp.chatai
com.sapp.starcoin

BundleIDs encrypted inside the iOS frameworks
im.pop.app.iOS.Messenger
com.hkatv.ios
com.atvnewsonline.app
io.zorixchange
com.yykc.vpnjsq
com.llyy.au
com.star.har91vnlive
com.jhgj.jinhulalaab
com.qingwa.qingwa888lalaaa
com.blockchain.uttool
com.wukongwaimai.client
com.unicornsoft.unicornhttpsforios
staffs.mil.CoinPark
com.lc.btdj
com.baijia.waimai
com.ctc.jirepaidui
com.ai.gbet
app.nicegram
com.blockchain.ogiut
com.blockchain.98ut
com.dream.towncn
com.mjb.Hardwood.Test
com.galaxy666888.ios
njiujiu.vpntest
com.qqt.jykj
com.ai.sport
com.feidu.pay
app.ikun277.test
com.usdtone.usdtoneApp2
com.cgapp2.wallet0
com.bbydqb
com.yz.Byteswap.native
jiujiu.vpntest
com.wetink.chat
com.websea.exchange
com.customize.authenticator
im.token.app
com.mjb.WorldMiner.new
com.kh-super.ios.superapp
com.thedgptai.event
com.yz.Eternal.new
xyz.starohm.chat
com.crownplay.luckyaddress1


securelist.com/sparkcat-steale…



ZTNA Zero Trust Network Access: cos’è e quali sono le migliori soluzioni


ZTNA rappresenta un’evoluzione fondamentale nella sicurezza delle reti aziendali, superando i limiti delle tradizionali VPN grazie a un approccio basato su identità e contesto. Le soluzioni ZTNA garantiscono un accesso sicuro alle applicazioni, riducendo la superficie di attacco e migliorando la gestione degli accessi in ambienti di lavoro ibridi.

L'articolo ZTNA Zero Trust Network Access: cos’è e quali sono le migliori soluzioni proviene da Cyber Security 360.



Lorem Ipsum 36? Dolor Sit Amet Keyboard!


A 36-key monoblock split keyboard with three thumb keys on each side.

You know, it’s a tale as old as custom mechanical keyboards. [penkia] couldn’t find any PCBs with 36 keys and Gateron low-profile switch footprints, so they made their own and called it the LoremIpsum36. Isn’t it lovely?

Close-up of the RP2040 sitting flush as can be in the PCB.This baby runs on an RP2040, which sits flush as can be in a cutout in the PCB. This maneuver, along with the LP switches in hard-to-find SK-33 sockets results in quite the thin board.

[penkia] says that despite using a 3 mm tray for added rigidity, the entire thing is thinner than the Nuphy Air60 v2, which is just over half an inch (13.9 mm) thick. For keycaps, [penkia] has used both XVX profile and FKcaps’ LPF.

And yeah, that area in the middle is crying out for something; maybe a trackball or something similar. But [penkia] is satisfied with it as-is for the first version, so we are, too.

Do you like 36-key boards, but prefer curves? Check out the Lapa keyboard, which doubles as a mouse.


hackaday.com/2025/02/06/lorem-…



Schiavitù in America prima di Colombo

@Arte e Cultura

La schiavitù tra i nativi americani prima dell'arrivo di Colombo era complessa e variava a seconda delle regioni e delle culture. Pratiche di cattività riguardavano prigionieri di guerra e scambi intertribali, con ruoli e trattamenti differenti. Alcuni



È morto a 98 anni Aldo Tortorella, storico dirigente del Pci


@Politica interna, europea e internazionale
È morto a 98 anni Aldo Tortorella, storico dirigente del Partito Comunista Italiano ed ex partigiano della Resistenza contro i nazifascisti durante la Seconda Guerra Mondiale. Lo ha reso noto nel mattino di oggi, giovedì 6 febbraio, Gianfranco Pagliarulo, presidente nazionale dell’Anpi,



Questo scarso presidente, ha la memoria corta, o meglio, ha la memoria di quello che gli fa comodo...
Ucraina, Mattarella: aggressione russa stesso progetto del Terzo Reich • Imola Oggi
imolaoggi.it/2025/02/05/ucrain…

Max 🇪🇺🇮🇹 doesn't like this.



Trump firma l’ordine: stop alle atlete transgender negli sport femminili


@Notizie dall'Italia e dal mondo
Secondo il provvedimento, le istituzioni educative che consentono la partecipazione di ragazze e donne transgender agli sport femminili rischiano di perdere i finanziamenti federali. La misura si estende anche all'uso degli spogliatoi
L'articolo Trump firma l’ordine:



REPORTAGE CUBA. Difficoltà e resistenza per un cambiamento che non sia resa


@Notizie dall'Italia e dal mondo
REPORTAGE Nonostante i problemi enormi, sull'isola la voglia di rivendicarsi come cubani e cubane è fortissimo, c'è identità e dignità. Ma pesa l'assenza di Fidel Castro, scrive Andrea Cegna
L'articolo REPORTAGE CUBA. Difficoltà e resistenza per un cambiamento



E' morto Aldo Tortorella


ilmanifesto.it/e-morto-aldo-to…

lapostadineruda reshared this.



DCI richiama l’UE: vietare il commercio con gli insediamenti illegali di Israele


@Notizie dall'Italia e dal mondo
Defence for Children International (DCI) si è unita alle organizzazioni per i diritti umani, ai sindacati e ai gruppi della società civile per sollecitare la Commissione europea a vietare tutti gli scambi e le attività commerciali tra l’UE e gli



La Cina risponde a Trump con una raffica di dazi


@Notizie dall'Italia e dal mondo
PODCAST Pechino vuole trattare, ma non teme gli Usa e non è più disposta a concessioni dolorose
L'articolo La Cina risponde a Trump con una raffica di dazi proviene da Pagine Esteri.

pagineesteri.it/2025/02/06/asi…



Primavera Sound: annunciato il programma del Primavera a la Ciutat freezonemagazine.com/news/prim…
Il Primavera Sound Barcelona non è solo ciò che accade durante i tre giorni principali di festival all’interno del Parc del Fòrum, ma è molto, molto di più. E il fatto che questa sia una tradizione che fa parte dell’identità del festival non significa che non meriti di essere evidenziata: questo particolare format cittadino, che




Il caso Almasri in Parlamento. Assente Meloni. Piantedosi: "Espulso per sicurezza": continuano a dire che lo hanno espulso per sicurezza. ma di quando in qua un pericoloso delinquente assassino psicopatico per sicurezza va liberato? io non la capisco questa. sicurezza di chi? e fino a quando? per sicurezza tutte le carceri italiane dovrebbero rilasciare tutti i detenuti? praticamente per la destra un serial killer catturato va liberato. sarebbe poco sicuro tenerlo in carcere. magari poi rischia di riuscire a fuggire e fare altre stragi.

reshared this



Dai Social:

“Usate l’#AI per fare i compiti?”
“Prof, io si, per fisica”
“Cioè? Gli fai fare il problema?”
“No, gli chiedo di creare dei problemi sull’argomento. Provo a svolgerli. Poi chiedo a lui di darmi la soluzione. La confronto con la mia. Così imparo”
Secondo anno di Liceo Scientifico.
Alla faccia, ragazzi!
E questi sarebbero quelli che non la sanno usare?
Hanno capito, in un colpo solo, che può essere tool, tutor e tutee…

====

Se c'è la testa c'è tutto! Se hai voglia di imparare, importa poco se usi le dita per contare o l'AI per ragionare, sono solo metodi diversi, efficaci in modi diversi, l'importante è solo l'obiettivo, imparare, appunto. Se poi ci sono studenti che vedono i compiti come esercizi inutili e perditempo, al netto degli scansafatiche, chiediamoci anche quanto sia la colpa dei professori che ti fanno perdere la voglia di seguire le loro materie, per inettitudine, incapacità personale a spiegare, o proprio per l'antipatia che hanno per i ragazzi. Conosco situazioni di studenti superintelligenti a cui sono riusciti a togliere qualsiasi stimolo. Gli hanno spento la miccia della curiosità e ucciso la voglia di impegnarsi. Una tristezza proprio. Un vero peccato e una grossa colpa! Se la scuola deve fare questi danni, meglio studiare con l'AI, che magari ogni tanto ti regala pure una allucinazione divertente, molto meglio di uno schiaffo continuo alla propria autostima!

#ai


#Trump-#Iran, pressioni e illusioni


altrenotizie.org/primo-piano/1…


@RaccoonForFriendica version 0.4.1-beta10 has been released and is available for testing in the Play store (or in Obtainium if you prefer installing directly from GitHub)!

Apart from the usual localization and dependency updates, this version contains several improvements for embedded images and, if you are using Friendica, you will also be able to insert embedded images within your post body (as opposed to regular attachments). This can benefit those who want to create larger posts with several illustrations.

Let me know what you think about it and, as always, #livefasteattrash

#friendicadev #androidapp #androiddev #fediverseapp #kotlin #multiplatform #kmp #compose #cmp #opensource #foss #procyonproject

reshared this

in reply to Piero Bosio

@Piero Bosio thanks for the feedback! Let me see if I understand your idea correctly: do you mean to add more options (e.g. "add image", "embed image", "add link", etc.) in the drop-down menu shown in the post creation page?

@RaccoonForFriendica

RaccoonForFriendica reshared this.



“The internet is a dangerous place for children, rife with sexual material that is harmful to minors," the Republican lawmakers wrote. "The ease of access to this material is downright scary."#ageverification


Valorizzare, promuovere e tutelare le eccellenze italiane. Il liceo del #MadeinItaly offre un percorso formativo completo, integrando scienze economiche e giuridiche con le scienze matematiche, fisiche e naturali.


Employees at Elon Musk's agency have been told "OMB is asking us to stop generating new slack messages starting now."

Employees at Elon Muskx27;s agency have been told "OMB is asking us to stop generating new slack messages starting now."#DOGE #ElonMusk



Authoritarians and tech CEOs now share the same goal: to keep us locked in an eternal doomscroll instead of organizing against them, Janus Rose writes.#organizing #Socialmedia #ElonMusk #DonaldTrump


#ScuolaFutura, il campus itinerante del #MIM in occasione della settimana delle #STEM e a un anno dall’inizio dei Giochi Olimpici invernali di Milano-Cortina 2026, arriva a Cortina d’Ampezzo con “Next Gen 26”, dal 5 all’8 febbraio 2025.

ScienceAdm reshared this.




La Dogana del Buongusto: ristorante e vineria alla scoperta de la cucina meneghina


Nel cuore di Milano, La Dogana del Buongusto è un ristorante e vineria che celebra la cucina meneghina con un perfetto equilibrio tra tradizione e innovazione.

Un’esperienza gastronomica che conquista con piatti iconici come l’ossobuco con risotto alla milanese e la cotoletta tradizionale, accompagnati da una selezione di oltre 400 etichette di vino.

Scopri l’atmosfera intima di questa storica carbonera e lasciati guidare in un viaggio tra sapori autentici e vini d’eccellenza.

appuntidizelda.it/la-dogana-de…



Esseri umani e AI: ecco come già molti anni fa, il grande Gianni Rodari, ci metteva in guardia...

Un giorno bussò alla nostra porta uno strano tipo: un ometto buffo vi dico alto poco più di due fiammiferi.

Aveva in spalla una borsa più grande di lui.

– Ho qui delle macchine da vendere – disse.

– Fate vedere – disse il babbo.

– Ecco, questa è una macchina per fare i compiti. Si schiaccia il bottoncino rosso per fare i problemi, il bottoncino giallo per svolgere i temi, il bottoncino verde per imparare la geografia: la macchina fa tutto da sola in un minuto.

– Compramela, babbo! – dissi io.

– Va bene, quanto volete?

– Non voglio denari – disse l’omino.

– Ma non lavorerete mica per pigliar caldo!

– No, ma in cambio della macchina voglio il cervello del vostro bambino.

– Ma siete matto! – esclamò il babbo.

– State a sentire, signore – disse l’omino, sorridendo - se i compiti glieli fa la macchina, a che cosa gli serve il cervello?

– Comprami la macchina, babbo! – implorai – Che cosa ne faccio del cervello?

Il babbo mi guardò un poco e poi disse: – Va bene, prendete il suo cervello.

L’omino mi prese il cervello e se lo mise in una borsetta. Com’ero leggero, senza cervello! Tanto leggero che mi misi a volare per la stanza e, se il babbo non mi avesse afferrato in tempo, sarei volato giù dalla finestra.

– Bisognerà tenerlo in gabbia – disse l’ometto.

– Ma perché? – domandò il babbo.

– Non ha più cervello, ecco perché. Se lo lasciate andare in giro, volerà nei boschi come un uccellino e in pochi giorni morirà di fame!

Il babbo mi rinchiuse in una gabbia, come un canarino. La gabbia era piccola, stretta, non mi potevo muovere. Le stecche mi stringevano tanto che… alla fine mi svegliai spaventato. Meno male che era stato solo un sogno! Vi assicuro che mi sono subito messo a fare i compiti.

(Gianni Rodari, tratto da "La macchina per fare i compiti")


Di seguito invece, la stessa storiella, dove però, stavolta, la macchina per fare I compiti, viene utilizzata nel modo giusto e diventa un prezioso strumento di apprendimento:

---

Un giorno bussò alla nostra porta uno strano tipo: un ometto buffo, alto poco più di due fiammiferi. Aveva in spalla una borsa più grande di lui.

– Ho qui delle macchine da vendere – disse.

– Fate vedere – disse il babbo.

– Ecco, questa è una macchina per studiare. Si schiaccia il bottoncino rosso per capire i problemi, il bottoncino giallo per scrivere i temi, il bottoncino verde per imparare la geografia. Ma non fa tutto da sola: ti guida, ti spiega, ti aiuta a capire!

– Compramela, babbo! – dissi io.

– Va bene, quanto volete?

– Non voglio denari – disse l’omino.

– Ma non lavorerete mica per pigliar caldo!

– No, ma in cambio della macchina voglio la tua curiosità e il tuo impegno.

– Ma siete matto! – esclamò il babbo.

– State a sentire, signore – disse l’omino, sorridendo – se usi la macchina per imparare, la curiosità e l'impegno aumentano a dismisura! La macchina ti aiuterà a capire, ma sarai tu a fare i compiti.

– Comprami la macchina, babbo! – implorai – Voglio imparare di più!

Il babbo mi guardò un poco e poi disse: – Va bene, prendete la sua curiosità e il suo impegno.

L’omino mi consegnò la macchina e se ne andò. Presi la macchina e iniziai a usarla. Quando schiacciai il bottoncino rosso, apparve una lezione interattiva sui problemi matematici. La macchina mi spiegava i concetti, faceva esempi pratici e mi chiedeva di risolvere esercizi. Quando sbagliavo, mi spiegava dove avevo sbagliato e come correggermi.

Con il bottoncino giallo, la macchina mi aiutava a scrivere i temi, suggerendomi idee, mostrandomi come strutturare il testo e correggendo la mia ortografia. Con il bottoncino verde, imparai la geografia attraverso mappe interattive e video educativi.

Ogni giorno, la macchina mi aiutava a studiare, ma era sempre io a fare i compiti. Imparai molto di più di prima, e i miei voti migliorarono notevolmente. La curiosità e l'impegno erano ancora lì, più forti che mai.

Una sera, mentre finivo un tema, mi resi conto di quanto fossi cresciuto grazie alla macchina. Non solo ero più bravo a scuola, ma avevo sviluppato una vera passione per l'apprendimento.

Mi voltai verso il babbo e dissi: – Grazie, babbo, per avermi dato la macchina. Mi hai regalato un strumento fantastico, ma soprattutto mi hai insegnato che la curiosità e l'impegno sono le chiavi del successo.

Il babbo sorrise e mi abbracciò. – Sono orgoglioso di te, figlio mio.

E così, la macchina per studiare divenne il mio migliore alleato, ma fu la mia curiosità e il mio impegno a fare la differenza.

(Scritta da QwenLM AI)

reshared this

in reply to Andrea Millozzi

@andreamillozzi la seconda è proprio bella, luccicante e credibile... come una moneta da 3 Euro. 😉
in reply to Andrea Millozzi

La favola di Rodari è un monito contro la propaganda alienante diffusa dal LLM di turno.

Il papà della seconda storia si è fatto fregare: si ritroverà un figlio succube di chi controlla il suo smartphone/tablet e con un grave deficit di attenzione (e forse anche di peggio).



dopo canada, messico, groenlandia, panama ecco che non poteva mancare l'invasione della fascia di gaza...



perché Valigia blu lascia Meta? risposta alle obiezioni
Risposta alle obiezioni avanzate alla scelta di uscire da Zuckengram e Zuckenbook.
Qualche ragione in più per sostenere la loro impresa editoriale. @valigiablu
(grazie @nilocram@framapiaf.org)


We talk all about Musk's takeover of the federal government, including audio of a meeting we got touching a Musk ally's AI plans. Then, AI slop in libraries.

We talk all about Muskx27;s takeover of the federal government, including audio of a meeting we got touching a Musk allyx27;s AI plans. Then, AI slop in libraries.#Podcast



Un intervento apprezzabile e condivisibile


All'audizione parlamentare di oggi sull'indegno caso Almasri, dove la corte dei miracoli governativa si è cimentata nello sfruttamento di cavilli a propria giustificazione, l'unico intervento degno, apprezzabile e pienamente condivisibile dell'opposizione è stato quello di #Fratoianni


Unknown parent

friendica (DFRN) - Collegamento all'originale
Max 🇪🇺🇮🇹

@Bronson 🦋

Accidenti, assolutamente sì.

Tocca tornare indietro...

Unknown parent

friendica (DFRN) - Collegamento all'originale
Max 🇪🇺🇮🇹

@Bronson 🦋

Sono indietro, dopo aver scoperto del pilot ho deciso di rivedere da capo tutti gli episodi che avevo già visto 😁

Ieri sera sono arrivato al sesto e mi sono rimesso in pari. Da stasera si ricomincia con i nuovi episodi.

A me sta piacendo un sacco, non è invecchiata per niente. Anzi, quando l'ho vista 30 anni fa non avevo notato quella sottile parodia che c'è in sottofondo.

Il poliziotto che si mette a piangere sulla scena del crimine, l'agente Cooper con quella scritta FBI gigantesca sul giubbotto, sono alcune chicche che mi ero perso.

Non ti sembra ci sia un po' di satira sottotraccia?



Caso Almasri, l’informativa dei ministri Piantedosi e Nordio | DIRETTA


@Politica interna, europea e internazionale
Caso Almasri, l’informativa in Parlamento dei ministri Piantedosi e Nordio Oggi, mercoledì 5 febbraio, il ministro degli Interni Matteo Piantedosi e il ministro della Giustizia Carlo Nordio intervengono in Parlamento – prima alla Camera, poi al Senato – per un’informativa



per un elettore USA che era deluso dalle politiche troppo filo-israeliane di biden e che ha votato trump, davvero bella gara...