Category Archives: Security

Updates to Domainname API, (Wed, Nov 5th)

This post was originally published on this site

For several years, we have offered a "new domain" list of recently registered (or, more accurately, recently discovered) domains. This list is offered via our API (https://isc.sans.edu/api). However, the size of the list has been causing issues, resulting in a "cut-off" list being returned. To resolve this issue, I updated the API call. It is sort of backward compatible, but it will not allow you to retrieve the full list. Additionally, we offer a simple "static file" containing the complete list. This file should be used whenever possible instead of the API.

To retrieve the full list, updated hourly, use:

https://isc.sans.edu/feeds/domaindata.json.gz

We also offer past versions of this list for the last few days. For example: 

https://isc.sans.edu/feeds/domaindata.2025-11-01.json.gz

I have not decided yet how long to keep these historic lists. The same data can be retrieved via the API request below. Likely, I will keep the last week as a "precompiled" list.

For the API, you may now retrieve partial copies of the list. The full URL for the API is:

https://isc.sans.edu/api/recentdomains/[date]/[searchstring]/[start]/[count]

For example:

https://isc.sans.edu/api/recentdomains/2025-11-05/sans/0/1000?json

Will return all domains found today (November 5th) that contain the string "sans". The first 1,000 matches are returned.

date: The date in "YYYY-MM-DD" format. The word "today" can be used instead of the current date if you only want the most recent data. The default is "today".
searchstring: only domains containing this string will be returned. Use "+" as a wildcard to get all domains. This defaults to returning any domain.
start: The number of the record to start with (defaults to 0)
count: How many records to return (defaults to all records)

In return, you will receive XML by default, but you may easily switch to other formats by adding, for example, "?json" to the end of the URL, which will return JSON.

The data returned remains the same:

{
    "domainname": "applewood-artisans.com",
    "ip": null,
    "type": null,
    "firstseen": "2025-11-04",
    "score": 0,
    "scorereason": "High entropy: 3.57 (+0.36)"
  },

domainname: The domain name
ip: IPv4 address (if available)
type: currently not used
firstseen: Date the domain name was first seen
score: The "anomaly score"
scorereason: reason behind the score

One of the sources of this data is the Certificate Transparency logs. It is possible that we will see new certificates for older domains that have not yet made it into our list of "existing" domains. As a result, you will see some older domains listed as "new" because they were not previously included in our feeds.

Regarding all our data: Use it at your own risk. The data is provided on a best-effort basis at no cost. Commercial use is permitted as long as the data is attributed to us and not resold. We do not recommend using the data as a block list. Instead, use it to "add color to your logs". The data may provide some useful context for other data you collect.

Why do we have a somewhat unusual API, rather than a more standard-compliant REST, GraphQL, or even SOAP API? Well, the API predates these standards (except for SOAP… and do you really want me to use SOAP?). At one point, we may offer something closer to whatever the REST standard will look like at the time, but don't hold your breath; there are a few other projects I want to complete first.

Feedback and bug reports are always welcome.


Johannes B. Ullrich, Ph.D. , Dean of Research, SANS.edu
Twitter|

(c) SANS Internet Storm Center. https://isc.sans.edu Creative Commons Attribution-Noncommercial 3.0 United States License.

Apple Patches Everything, Again, (Tue, Nov 4th)

This post was originally published on this site

Apple released its expected set of operating system upgrades. This is a minor feature upgrade that also includes fixes for 110 different vulnerabilities. As usual for Apple, many of the vulnerabilities affect multiple operating systems. None of the vulnerabilities is marked as already exploited. Apple only offers very sparse vulnerability descriptions. Here are some vulnerabilities that may be worth watching:

CVE-2025-43338, CVE-2025-43372: A memory corruption vulnerability in ImageIO. ImageIO is responsible for rendering images, and vulnerabilities like this have been exploited in the past for remote code execution. CVE-2025-43400, a vulnerability affecting FontParser, could have a similar impact.

CVE-2025-43431: A memory corruption issue in WebKit. This could be used to execute code via Safari.

 

iOS 26.1 and iPadOS 26.1 macOS Tahoe 26.1 macOS Sequoia 15.7.2 macOS Sonoma 14.8.2 tvOS 26.1 watchOS 26.1 visionOS 26.1 Safari 26.1 Xcode 26.1
CVE-2025-31199: An app may be able to access sensitive user data.
Affects Spotlight
      x          
CVE-2025-43292: An app may be able to access sensitive user data.
Affects CoreMedia
    x            
CVE-2025-43294: An app may be able to access sensitive user data.
Affects MallocStackLogging
x       x x      
CVE-2025-43322: An app may be able to access user-sensitive data.
Affects Admin Framework
  x x x          
CVE-2025-43334: An app may be able to access user-sensitive data.
Affects sudo
  x x x          
CVE-2025-43335: An app may be able to access user-sensitive data.
Affects Security
  x x x          
CVE-2025-43336: An app with root privileges may be able to access private information.
Affects SoftwareUpdate
  x x x          
CVE-2025-43337: An app may be able to access sensitive user data.
Affects AppleMobileFileIntegrity
    x            
CVE-2025-43338: Processing a maliciously crafted media file may lead to unexpected app termination or corrupt process memory.
Affects ImageIO
      x          
CVE-2025-43348: An app may bypass Gatekeeper checks.
Affects Finder
  x x x          
CVE-2025-43350: An attacker may be able to view restricted content from the lock screen.
Affects Control Center
x                
CVE-2025-43351: An app may be able to access protected user data.
Affects StorageKit
  x              
CVE-2025-43361: A malicious app may be able to read kernel memory.
Affects Audio
    x x          
CVE-2025-43364: An app may be able to break out of its sandbox.
Affects NetFSFramework
  x              
CVE-2025-43372: Processing a maliciously crafted media file may lead to unexpected app termination or corrupt process memory.
Affects ImageIO
      x          
CVE-2025-43373: An app may be able to cause unexpected system termination or corrupt kernel memory.
Affects Wi-Fi
  x x x          
CVE-2025-43377: An app may be able to cause a denial-of-service.
Affects Model I/O
  x x            
CVE-2025-43378: An app may be able to access sensitive user data.
Affects AppleMobileFileIntegrity
  x x            
CVE-2025-43379: An app may be able to access protected user data.
Affects AppleMobileFileIntegrity
x x x x x x x    
CVE-2025-43380: Parsing a file may lead to an unexpected app termination.
Affects sips
  x x x          
CVE-2025-43381: A malicious app may be able to delete protected user data.
Affects CoreServicesUIAgent
  x              
CVE-2025-43382: An app may be able to access sensitive user data.
Affects AppleMobileFileIntegrity
  x x x          
CVE-2025-43383: Processing a maliciously crafted media file may lead to unexpected app termination or corrupt process memory.
Affects Model I/O
x x     x   x    
CVE-2025-43384: Processing a maliciously crafted media file may lead to unexpected app termination or corrupt process memory.
Affects Model I/O
    x            
CVE-2025-43387: A malicious app may be able to gain root privileges.
Affects DiskArbitration
  x x            
CVE-2025-43389: An app may be able to access sensitive user data.
Affects Notes
x x x x     x    
CVE-2025-43390: An app may be able to access user-sensitive data.
Affects AppleMobileFileIntegrity
  x x            
CVE-2025-43391: An app may be able to access sensitive user data.
Affects Photos
x x x x          
CVE-2025-43392: A website may exfiltrate image data cross-origin.
Affects WebKit Canvas
x x     x x x x  
CVE-2025-43393: An app may be able to break out of its sandbox.
Affects quarantine
  x              
CVE-2025-43394: An app may be able to access protected user data.
Affects bootp
  x x x          
CVE-2025-43395: An app may be able to access protected user data.
Affects configd
  x x x          
CVE-2025-43396: A sandboxed app may be able to access sensitive user data.
Affects Installer
  x x x          
CVE-2025-43397: An app may be able to cause a denial-of-service.
Affects SoftwareUpdate
  x x x          
CVE-2025-43398: An app may be able to cause unexpected system termination.
Affects Kernel
x x x x x x x    
CVE-2025-43399: An app may be able to access protected user data.
Affects Siri
  x x            
CVE-2025-43400: Processing a maliciously crafted font may lead to unexpected app termination or corrupt process memory.
Affects FontParser
        x x      
CVE-2025-43401: A remote attacker may be able to cause a denial-of-service.
Affects CoreAnimation
  x x x          
CVE-2025-43402: An app may be able to cause unexpected system termination or corrupt process memory.
Affects WindowServer
  x              
CVE-2025-43404: An app may be able to access sensitive user data.
Affects Sandbox
  x              
CVE-2025-43405: An app may be able to access user-sensitive data.
Affects Photos
  x x x          
CVE-2025-43406: An app may be able to access sensitive user data.
Affects Sandbox
  x              
CVE-2025-43407: An app may be able to break out of its sandbox.
Affects Assets
x x x x x   x    
CVE-2025-43408: An attacker with physical access may be able to access contacts from the lock screen.
Affects Share Sheet
  x x x          
CVE-2025-43409: An app may be able to access sensitive user data.
Affects Spotlight
  x x            
CVE-2025-43411: An app may be able to access user-sensitive data.
Affects PackageKit
  x x x          
CVE-2025-43412: An app may be able to break out of its sandbox.
Affects TCC
  x x x          
CVE-2025-43413: A sandboxed app may be able to observe system-wide network connections.
Affects libxpc
x x x x x x x    
CVE-2025-43414: A shortcut may be able to access files that are normally inaccessible to the Shortcuts app.
Affects Shortcuts
  x x x          
CVE-2025-43420: An app may be able to access sensitive user data.
Affects Dock
  x x x          
CVE-2025-43421: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
x x         x x  
CVE-2025-43422: An attacker with physical access to a device may be able to disable Stolen Device Protection.
Affects Stolen Device Protection
x                
CVE-2025-43423: An attacker with physical access to an unlocked device paired with a Mac may be able to view sensitive user information in system logging.
Affects Audio
x x x       x    
CVE-2025-43424: A malicious HID device may cause an unexpected process crash.
Affects Multi-Touch
x x              
CVE-2025-43425: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
x x     x x x x  
CVE-2025-43426: An app may be able to access sensitive user data.
Affects Contacts
x x              
CVE-2025-43427: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
x x     x   x x  
CVE-2025-43429: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
x x     x x x x  
CVE-2025-43430: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
          x      
CVE-2025-43431: Processing maliciously crafted web content may lead to memory corruption.
Affects WebKit
x x     x x x x  
CVE-2025-43432: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
x x     x x x x  
CVE-2025-43434: Processing maliciously crafted web content may lead to an unexpected Safari crash.
Affects WebKit
x x       x x x  
CVE-2025-43436: An app may be able to enumerate a user's installed apps.
Affects CoreServices
x x     x x x    
CVE-2025-43439: An app may be able to fingerprint the user.
Affects On-device Intelligence
x           x    
CVE-2025-43440: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
x x     x x x x  
CVE-2025-43442: An app may be able to identify what other apps a user has installed.
Affects Accessibility
x                
CVE-2025-43443: Processing maliciously crafted web content may lead to an unexpected process crash.
Affects WebKit
x x     x x x x  
CVE-2025-43444: An app may be able to fingerprint the user.
Affects Installer
x x     x x x    
CVE-2025-43445: Processing a maliciously crafted media file may lead to unexpected app termination or corrupt process memory.
Affects CoreText
x x x x x x x    
CVE-2025-43446: An app may be able to modify protected parts of the file system.
Affects Assets
  x x x          
CVE-2025-43448: An app may be able to break out of its sandbox.
Affects CloudKit
x x x x x x x    
CVE-2025-43449: A malicious app may be able to track users between installs.
Affects Apple TV Remote
x                
CVE-2025-43450: An app may be able to learn information about the current camera view before being granted camera access.
Affects Camera
x                
CVE-2025-43452: Keyboard suggestions may display sensitive information on the lock screen.
Affects Text Input
x                
CVE-2025-43454: A device may persistently fail to lock.
Affects Siri
x                
CVE-2025-43455: A malicious app may be able to take a screenshot of sensitive information in embedded views.
Affects Apple Account
x x       x x    
CVE-2025-43459: An attacker with physical access to a locked Apple Watch may be able to view Live Voicemail.
Affects Phone
          x      
CVE-2025-43460: An attacker with physical access to a locked device may be able to view sensitive user information.
Affects Status Bar
x                
CVE-2025-43461: An app may be able to access protected user data.
Affects configd
  x              
CVE-2025-43462: An app may be able to cause unexpected system termination or corrupt kernel memory.
Affects Apple Neural Engine
x x     x x x    
CVE-2025-43463: An app may be able to access sensitive user data.
Affects StorageKit
  x              
CVE-2025-43464: Visiting a website may lead to an app denial-of-service.
Affects dyld
  x              
CVE-2025-43465: An app may be able to access sensitive user data.
Affects ATS
  x              
CVE-2025-43466: An app may be able to access sensitive user data.
Affects AppleMobileFileIntegrity
  x              
CVE-2025-43467: An app may be able to gain root privileges.
Affects Installer
  x              
CVE-2025-43468: An app may be able to access sensitive user data.
Affects AppleMobileFileIntegrity
  x x x          
CVE-2025-43469: An app may be able to access sensitive user data.
Affects NSSpellChecker
  x x x          
CVE-2025-43471: An app may be able to access sensitive user data.
Affects Admin Framework
  x              
CVE-2025-43472: An app may be able to gain root privileges.
Affects zsh
  x x x          
CVE-2025-43473: An app may be able to access sensitive user data.
Affects Shortcuts
  x              
CVE-2025-43474: An app may be able to cause unexpected system termination or read kernel memory.
Affects GPU Drivers
  x x x          
CVE-2025-43476: An app may be able to break out of its sandbox.
Affects SharedFileList
  x x x          
CVE-2025-43477: An app may be able to access sensitive user data.
Affects Siri
  x x x          
CVE-2025-43478: An app may be able to cause unexpected system termination.
Affects ASP TCP
  x x x          
CVE-2025-43479: An app may be able to access sensitive user data.
Affects CoreServices
  x x x          
CVE-2025-43480: A malicious website may exfiltrate data cross-origin.
Affects WebKit
x x     x x x x  
CVE-2025-43481: An app may be able to break out of its sandbox.
Affects Disk Images
  x x            
CVE-2025-43493: Visiting a malicious website may lead to address bar spoofing.
Affects Safari
x x         x x  
CVE-2025-43495: An app may be able to monitor keystrokes without user permission.
Affects WebKit
x                
CVE-2025-43496: Remote content may be loaded even when the 'Load Remote Images' setting is turned off.
Affects Mail Drafts
x x x     x x    
CVE-2025-43497: An app may be able to break out of its sandbox.
Affects BackBoardServices
  x              
CVE-2025-43498: An app may be able to access sensitive user data.
Affects FileProvider
x x x x     x    
CVE-2025-43499: An app may be able to access sensitive user data.
Affects Shortcuts
  x x x          
CVE-2025-43500: An app may be able to access sensitive user data.
Affects Sandbox Profiles
x x       x x    
CVE-2025-43502: An app may be able to bypass certain Privacy preferences.
Affects Safari
x x         x x  
CVE-2025-43503: Visiting a malicious website may lead to user interface spoofing.
Affects Safari
x x       x x x  
CVE-2025-43504: A user in a privileged network position may be able to cause a denial-of-service.
Affects lldb
                x
CVE-2025-43505: Processing a maliciously crafted file may lead to heap corruption.
Affects GNU
                x
CVE-2025-43506: iCloud Private Relay may not activate when more than one user is logged in at the same time.
Affects Networking
  x              
CVE-2025-43507: An app may be able to fingerprint the user.
Affects Find My
x x       x x    


Johannes B. Ullrich, Ph.D. , Dean of Research, SANS.edu
Twitter|

(c) SANS Internet Storm Center. https://isc.sans.edu Creative Commons Attribution-Noncommercial 3.0 United States License.

XWiki SolrSearch Exploit Attempts (CVE-2025-24893) with link to Chicago Gangs/Rappers, (Mon, Nov 3rd)

This post was originally published on this site

XWiki describes itself as "The Advanced Open-Source Enterprise Wiki" and considers itself an alternative to Confluence and MediaWiki. In February, XWiki released an advisory (and patch) for an arbitrary remote code execution vulnerability. Affected was the SolrSearch component, which any user, even with minimal "Guest" privileges, can use. The advisory included PoC code, so it is a bit odd that it took so long for the vulnerability to be widely exploited.

Scans for Port 8530/8531 (TCP). Likely related to WSUS Vulnerability CVE-2025-59287, (Sun, Nov 2nd)

This post was originally published on this site

Sensors reporting firewall logs detected a significant increase in scans for port 8530/TCP and 8531/TCP over the course of last week. Some of these reports originate from Shadowserver, and likely other researchers, but there are also some that do not correspond to known research-related IP addresses.

X-Request-Purpose: Identifying "research" and bug bounty related scans?, (Thu, Oct 30th)

This post was originally published on this site

This week, I noticed some new HTTP request headers that I had not seen before:

X-Request-Purpose: Research

and

X-Hackerone-Research: plusultra
X-Bugcrowd-Ninja: plusultra
X-Bug-Hunter: true

The purpose of these headers appears to be to identify them as being sent as part of a bug bounty. Some companies request the use of these headers as part of their bug bounty. For example, see Web.com's Bugcrowd page [1]. If you see these headers, there is a good chance that the request was sent as part of a bug bounty. At the same time, it is a bit odd that we see these in our honeypots. But some of our honeypots are part of corporate networks, and it is possible that they are in scope for a bug bounty. If the header is genuine, the username of the researcher would be "plusultra". On the other hand, there is no guarantee. Anybody may send this header.

The idea of sending a header like this makes some sense. This way, it is easier for a company to contact a researcher in case the scans are causing any issues. From a defensive point of view, you should probably just ignore these requests. I would not treat them any differently from any request without the header. Blocking requests with these headers does not make a lot of sense, nor does allowing them. Just block (or allow them) based on the remainder of the request. 

And, for any website out there that doesn't have it yet: Setting up a /.well-known/security.txt file makes a lot of sense [2].

[1] https://bugcrowd.com/engagements/webdotcom-vdp
[2] https://datatracker.ietf.org/doc/rfc9116/

 

x-hackerone-research, x-brugcrowd-ninja, x-bug-hunter headers


Johannes B. Ullrich, Ph.D. , Dean of Research, SANS.edu
Twitter|

(c) SANS Internet Storm Center. https://isc.sans.edu Creative Commons Attribution-Noncommercial 3.0 United States License.

Bytes over DNS, (Mon, Oct 27th)

This post was originally published on this site

I was intrigued when Johannes talked about malware that uses BASE64 over DNS to communicate. Take a DNS request like this: label1.label2.tld. Labels in a request like this can only be composed with letters (not case-sensitive), digits and a hyphen character (-). While BASE64 is encoded with letters (uppercase and lowercase), digits and special characters + and /. And also a special padding character: =.

So when sticking to the standards, it is not possible to use BASE64 in a label. What happens when we don't stick to the standards?

So I wanted to know what byte values I could transmit over DNS when using third-party DNS infrastructure over which I have no control, like my ISP, CloudFlare, Google, …

Here is a schema:

 

In red, you have the machines I have control over: my workstation on the left, where I do the DNS queries, and my server on the Internet on the right, where I have my DNS software running (dnsresolver.py).

In blue are the servers of the DNS infrastructure I'm using, over which I have no control.

 

In a first test, I'm using the name resolution API of the OS.

My queries look like this: bytes.41.A.mydomain.com. In this example, 41 is the hexadecimal value of the byte value I'm transmitting, and A is the ASCII representation of the byte value I'm transmitting. On the other end, I have my dnsresolver.py software running with a custom function, that checks the incoming request to see if the hexadecimal value still corresponds to the ASCII value. It logs the result in a log file, and replies with 127.0.0.1 if it matches, and with NXDOMAIN if it doesn't.

Then on my workstation, I do these queries for all byte values between 0x00 and 0xFF.

On Windows using CloudFlare (1.1.1.1), I can only reliably transmit letters (uppercase and lowercase), digits, a hyphen (-) and an underscore (_).

On Windows using Google (8.8.8.8), I can only reliably digits, a hyphen (-) and an underscore (_). Letters can not be reliably transmitted, because of an anti DNS-spoofing measure: Google will change the case of letters (for example, google.com becomes GoOgLe.com). You don't see that as an enduser, but my DNS software sees it.

So in theory, I could use BASE64 in a DNS C2 channel, provided CloudFlare is used and provided I replace + and / with – and _. And provided I don't use a padding character.

On Ubuntu, I can transmit reliably all ASCII characters (0x00 – 0x7F), except 0x00 and 0x2E (.). That's for CloudFlare. Google is the same, except for letters.

So I could do even better than BASE64, since I have 126 byte values at my disposition.

All byte values between 0x80 and 0xFF fail, most of them because they get converted to punicode.

 

Second test is to use a DNS library in stead of the OS API (I use Python module dnspython/dns.resolver).

On Windows and Ubuntu, I can transmit reliably all ASCII characters (0x00 – 0x7F), except 0x2E (.). That's for CloudFlare. Google is the same, except for letters.

The reason that the library cannot transmit a dot (.), so that's request bytes.2E…mydomain.com., is that in a DNS packet, a query is a encoded as a sequence of run-length encoded labels, and dots are not represented. 

So mydomain.com. becomes:

0x08 is the length of label mydomain, 0x03 is the length of label com, and 0x00 is the length of the root label (the . at the end of mydomain.com.).

All byte values between 0x80 and 0xFF fail, most of them because they get converted to PUNICODE.

 

And as a third test, I'm going to craft and transmit my own DNS packets, so that I have full control:

On Windows and Ubuntu, I can transmit reliably all ASCII characters (0x00 – 0x7F), also 0x2E (.). That's for CloudFlare. Google is the same, except for the letters.

And I can reliably transmit all values between 0x80 and 0xFF, but my dnsresolver.py tool that uses the dnslib Python library, can not parse them. So I would need to find a DNS packet parser that handles this, or write my own. I verified that values between 0x80 and 0xFF arrive reliably, but doing a packet capture on my server.

Conclusion

All byte values (even 0x2E .) can be reliably transmitted over the CloudFlare DNS infrastructure, provided one crafts and parses their own DNS packets.

On Google, all values are accepted too, but the case of letters can change because of Google's anti-spoofing measure.

If you want to perform your own DNS tests, you can find more details on my blog post "Bytes over DNS Tools".

Next on my todo list is to perform research to detect abnormal DNS traffic like this.

 

Didier Stevens
Senior handler
blog.DidierStevens.com

(c) SANS Internet Storm Center. https://isc.sans.edu Creative Commons Attribution-Noncommercial 3.0 United States License.

Kaitai Struct WebIDE, (Sun, Oct 26th)

This post was originally published on this site

When I have a binary file to analyze, I often use tools like 010 Editor or format-bytes.py (a tool I develop). Sometimes I also use Kaitai Struct.

What I did not know, is that Kaitai Struct also has a WebIDE, that allows you to parse all kinds of binary file formats in your browser.

I learned this during a presentation of the KaiTai struct developers at Hack.lu this week.

The demo of the WebIDE starts around 17:31 in the video.

Didier Stevens
Senior handler
blog.DidierStevens.com

(c) SANS Internet Storm Center. https://isc.sans.edu Creative Commons Attribution-Noncommercial 3.0 United States License.