Reachability for Ruby Now in Beta
Blog post from Socket
Security teams are overwhelmed with numerous CVEs, and while upgrading dependencies is time-consuming and risky, prioritizing vulnerabilities that can be exploited within an application can save significant time and effort. Socket's reachability engine, already effective for JavaScript/TypeScript and Python, is now available in beta for Ruby, despite its dynamic nature posing challenges for deep reachability analysis. The engine uses function-level call graph analysis to determine which functions may call vulnerable ones, ensuring no exploitable issues are overlooked by classifying uncertainties as reachable or unknown. This approach, developed in collaboration with Aarhus University, builds on previous experiences with dynamic languages and addresses Ruby's frequent use of runtime class modification in meta-programming. While the Ruby reachability support is still in beta and may occasionally fail due to unexpected conditions, Socket is continuously improving it and welcomes community feedback. Users can access this analysis via pre-computed results on the Socket Dashboard or through the Socket CLI for enterprise customers, marking a step towards expanding precise, function-level analysis across major ecosystems.