✨ Feature Requests

  • Search existing ideas before submitting- Use support.secondlife.com for customer support issues- Keep posts on-topicThank you for your ideas!
Add "X-SecondLife-Region-Hostname" Header to llHTTPRequest
Background With Second Life's transition from traditional data centers to AWS, many content creators and service operators had to disable IP-based filtering for external script communications. AWS's dynamic and ambiguous IP allocation makes it impractical to define a reliable range of Second Life simulator IP addresses. This change has introduced security challenges for external systems interacting with in-world scripts. Some scripts cannot be updated because they were distributed by creators who are no longer active, while others remain unchanged due to user hesitation. Reasons include lack of technical knowledge, extensive modifications, or accidental use of outdated versions. The Problem Without a reliable way to verify that an HTTP request originates from a legitimate Second Life simulator, external services are vulnerable. If an attacker discovers the URLs and payloads used by in-world scripts, they can replicate the requests, potentially tricking external systems into treating them as legitimate in-world interactions. Proposed Solution A simple but effective solution is to add a new HTTP header to llHTTPRequest : X-SecondLife-Region-Hostname - This header would return the value of llGetEnv("simulator_hostname") , providing a hostname in the format: simhost-0dd08effbc13e71c9.agni.secondlife.io Security Benefits External systems can verify the request's authenticity by: Ensuring the hostname ends with .secondlife.io , confirming it originated from a Second Life simulator. Performing a DNS lookup on the hostname (e.g., simhost-0dd08effbc13e71c9.agni.secondlife.io ) to retrieve an IP address. Comparing the resolved IP address with the IP address that initiated the request. If they match, the request is valid. Impact This change would allow external systems to restore security measures for scripts that cannot be modified, ensuring continued protection without requiring manual updates from creators or users. By leveraging an existing environment variable, this solution is lightweight, practical, and easy to implement.
4
Optional Region Security - Viewer Validation by Simulator
I want to suggest a feature idea to help counter copy-bots and bot-based griefers in private regions. This feature would let region owners optionally enable more security for their regions. The idea is for regions to validate viewers with special keys Related - https://feedback.secondlife.com/feature-requests/p/start-verifying-viewers Proposal Details: Region owners can turn this feature on or off If turned on: * LL and official TPV viewers would connect to regions using a private key for validation * The simulator would check the connection with public keys and decide if the viewer can connect. Validation happens entirely on the simulator side, and viewers would send encrypted requests with private keys if the region has this feature turned on * To handle viewer/simulator updates or key refreshes, the system could support multiple keys (old and new) * The "officialness" through key can be controlled by Linden Lab through key management with each TPV project Benefits: Regions with this option turned on would block viewers that don’t have valid keys. This could stop unauthorized viewers from stealing content or trolling other residents and region owners Residents using official viewers wouldn’t notice any difference. They’d connect to the region just like always through LL and Official TPV viewers Project viewers or new TPVs without keys could still connect to regions that don’t use this feature like right now Residents and region owners would have fewer concerns about trolls and content thefts. Linden Lab will have to deal with less AR cases This does not leave a trace of connections except on the simulator so 3rd party would not know which viewer was used to connect to the region (rejected would not be in the region) Key Management: Linden Lab would issue unique key pairs (private and public), and give the private key for each LL and TPV viewer TPV teams would be responsible for keeping their private keys secure. These keys should be kept secure to prevent leaks or misuse Linden Lab would revoke keys if they are leaked or misused Linden Lab would provide a way for TPV teams to request new keys if they are lost or compromised Why This Matters: I had a chance to meet a region owner who has been dealing with massive griefing and suspected content theft. They have a large community in their region, and visitors are systematically trolled, and their unique content seems to be stolen. This idea came to me as a way to give region owners more control while still keeping things simple for users
20