25 karma · joined February 14, 2014
[ Website ] https://melomac.com
[ Mastodon ] https://infosec.exchange/@noarfromspace
[ GitHub ] https://github.com/melomachttps://www.sentinelone.com/blog/osx-ironcore-a-or-what-we-k...
As IronCore evolved, it eventually got packed — `+[obj load]` executed prior to entry point — and provided a JavaScript to Objective-C bridge. JS payloads were remotely downloaded and AES encrypted...
While offers were the usual suspects back then (Advanced Mac Cleaner, MacKeeper, and a customized Chromium app), the technique could be abused in a couple of ways so to spy on specific targets.
Anyhow, I don't know what you do with FZ, I am very much into rsync (OSS) and Transmit app (Panic).
When I setup a new system, I always end up here: https://github.com/mathiasbynens/dotfiles/blob/master/.macos
Then I add the few missing ones as I use the machine, like this one for example: https://macos-defaults.com/finder/showwindowtitlebaricons.ht...
https://support.apple.com/en-my/guide/watch/apd890848603/wat...
And LibreOffice would display the images in the RTF document in a different size (a tiny block).
If my old Mac display would work, I could have been able to send the document over to CUPS via Netatalk, and make a PDF out of it. Unfortunately Mini vMac can't connect to that VM on the LAN...
Anyhow, it is scandalous that opening legacy documents became such a PITA.
Here you have it: https://neko.melomac.net/tmp/proposal.rtf
I certainly agree opening a document from this Macintosh era should be, by far, easier than the process I detailed below, but this is how it is ¯\_(ツ)_/¯
# https://www.petefreitag.com/blog/dns-over-https/
function dnsq --description "Query DNS name(s) over HTTPs using JSON"
argparse --ignore-unknown 'h/help' 'd/dns=' 'n/name=+' 't/type=+' -- $argv
if set -q _flag_help
echo "Usage: $_ example.com"
echo ' -n --name DNS query name(s)'
echo ' -t --type DNS query type(s), ex: A (default), MX, TXT...'
echo ' -d --dns DNS query endpoint: cloudflare (default), google'
echo ' -h --help Print this help message and exit'
return 0
end
if not set -q _flag_name && test (count $argv) -eq 0
echo 'Missing name parameter.'
return 1
end
if not set -q _flag_type
set _flag_type 'A'
end
switch $_flag_dns
case 'google'
set url 'https://dns.google/resolve'
case 'cloudflare' '*'
set url 'https://cloudflare-dns.com/dns-query'
end
for type in $_flag_type
for name in $_flag_name $argv
set query (string join '&' (string join '=' 'name' $name) (string join '=' 'type' $type))
if isatty stdout && type -q jq
curl --header 'Accept: application/dns-json' --silent (string join '?' $url $query) | jq -r
else
curl --header 'Accept: application/dns-json' --silent (string join '?' $url $query)
end
end
end
endif ( '' == $comment_content ) {
to:
if ( '' == $comment_content || 32768 < strlen($comment_content) ) {