WordPress.WP.AlternativeFunctions.rand_rand
rand rand
The plugin uses a random function that may not be appropriate for the task.
Why It Shows Up
The scan found functions such as `rand()`, `mt_rand()`, `srand()`, or `mt_srand()`.
Why It Matters
General random functions are not suitable for security-sensitive tokens and manual seeding can reduce randomness.
How to Fix
- Use `wp_rand()` for ordinary WordPress randomness.
- Use PHP cryptographic randomness for security-sensitive tokens.
- Avoid manual random seeding unless there is a narrow, documented reason.
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #1 | Themify Builder | 9 | 5,334 | 2,171 | 5k+ | Text Domain Mismatch | ||
| #2 | JetBackup – Backup, Restore & Migrate | 10 | 1,567 | 156 | 200k+ | Exception output is not escaped | ||
| #3 | RestroPress – Online Food Ordering System | 17 | 535 | 3,234 | 1k+ | Non-prefixed global variable | ||
| #4 | Efí Bank | 17 | 886 | 553 | 300 | Exception output is not escaped | ||
| #5 | wpForo Forum | 17 | 4,306 | 3,026 | 20k+ | Unsafe printing function | ||
| #6 | Administrator Z | 18 | 2,061 | 799 | 400 | Output is not escaped | ||
| #7 | Shopping Cart & eCommerce Store | 18 | 8,240 | 18,478 | 3k+ | Non-prefixed global variable | ||
| #8 | GiveWP – Donation Plugin and Fundraising Platform | 19 | 3,402 | 3,555 | 100k+ | Output is not escaped | ||
| #9 | Go Fetch Jobs (for WP Job Manager) | 19 | 1,410 | 1,741 | 600 | Non-prefixed global variable | ||
| #10 | Leaflet Maps Marker (Google Maps, OpenStreetMap, Bing Maps) | 19 | 3,275 | 3,228 | 9k+ | Output is not escaped | ||
| #11 | Matomo Analytics – Powerful, Privacy-First Insights for WordPress | 19 | 1,993 | 892 | 100k+ | Exception output is not escaped | ||
| #12 | Netgsm | 19 | 352 | 348 | 1k+ | Non-prefixed global variable | ||
| #13 | Really Simple Security – Simple and Performant Security (formerly Really Simple SSL) | 19 | 530 | 375 | 3m+ | Missing Translators Comment | ||
| #14 | SendPress Newsletters | 19 | 2,293 | 1,422 | 1k+ | Output is not escaped | ||
| #15 | WP Directory Kit | 19 | 1,502 | 2,641 | 2k+ | Non-prefixed global variable | ||
| #16 | WPOSS阿里云对象存储 | 19 | 269 | 315 | 900 | Non-prefixed namespace | ||
| #17 | WPQiNiu七牛云对象存储 | 19 | 138 | 612 | 400 | Non-prefixed global variable | ||
| #18 | Brizy – Page Builder | 20 | 585 | 726 | 60k+ | Output is not escaped | ||
| #19 | Broadstreet | 20 | 434 | 273 | 800 | Output is not escaped | ||
| #20 | Post Form – Registration Form – Profile Form for User Profiles – Frontend Content Forms for User Submissions (UGC) | 20 | 736 | 2,112 | 900 | Non-prefixed global variable | ||
| #21 | EventPrime – Events Calendar, Bookings, Tickets & AI | 20 | 846 | 4,224 | 7k+ | Non-prefixed global variable | ||
| #22 | GoUrl Bitcoin Payment Gateway & Paid Downloads & Membership | 20 | 1,832 | 720 | 700 | Non Singular String Literal Domain | ||
| #23 | MBE eShip | 20 | 527 | 740 | 1k+ | Non-prefixed global variable | ||
| #24 | MAS Videos | 20 | 519 | 1,693 | 1k+ | Non-prefixed global variable | ||
| #25 | Nimble Page Builder | 20 | 1,591 | 1,684 | 30k+ | Missing Arg Domain | ||
| #26 | پلاگین پرداخت دلخواه | 20 | 584 | 446 | 900 | Text Domain Mismatch | ||
| #27 | Pix por Piggly (para Woocommerce) | 20 | 547 | 195 | 4k+ | Exception output is not escaped | ||
| #28 | Membership Plugin – Kadence Memberships | 20 | 5,089 | 3,005 | 9k+ | Text Domain Mismatch | ||
| #29 | Robin Image Optimizer – Unlimited Image Optimization, WebP & AVIF | 20 | 556 | 543 | 100k+ | Output is not escaped | ||
| #30 | Events Manager – OpenStreetMaps | 20 | 559 | 444 | 600 | Output is not escaped | ||
| #31 | Booster for WooCommerce – PDF Invoices, Abandoned Cart, Variation Swatches & 100+ Tools | 20 | 787 | 3,416 | 30k+ | Non-prefixed global variable | ||
| #32 | WP Compress – Instant Performance & Speed Optimization | 20 | 4,292 | 3,691 | 10k+ | Non Singular String Literal Domain | ||
| #33 | Backup Migration | 21 | 999 | 1,081 | 80k+ | Non-prefixed global variable | ||
| #34 | Captcha Them All | 21 | 300 | 323 | 5k+ | Output is not escaped | ||
| #35 | Spam protection, Honeypot, Anti-Spam by CleanTalk | 21 | 835 | 1,146 | 200k+ | Missing nonce verification | ||
| #36 | Directorist: AI-Powered Business Directory, Listings & Classified Ads | 21 | 484 | 2,327 | 20k+ | Non-prefixed global variable | ||
| #37 | Event Espresso – Event Registration & Ticketing Sales | 21 | 12,710 | 2,136 | 600 | Text Domain Mismatch | ||
| #38 | Feeds for YouTube (YouTube video, channel, and gallery plugin) | 21 | 503 | 995 | 100k+ | Output is not escaped | ||
| #39 | Filter Everything — WordPress & WooCommerce Filters | 21 | 634 | 943 | 50k+ | Non-prefixed global variable | ||
| #40 | Campaign Monitor for WordPress | 21 | 386 | 461 | 2k+ | Non-prefixed global variable | ||
| #41 | Front End Users | 21 | 719 | 2,759 | 400 | Non-prefixed global variable | ||
| #42 | Ibtana – Ecommerce Product Addons | 21 | 1,548 | 1,718 | 6k+ | Non Singular String Literal Domain | ||
| #43 | JCH Optimize | 21 | 2,292 | 277 | 4k+ | Output is not escaped | ||
| #44 | Link Library | 21 | 1,932 | 1,387 | 10k+ | Unsafe printing function | ||
| #45 | Mooberry Book Manager | 21 | 1,040 | 399 | 1k+ | Text Domain Mismatch | ||
| #46 | Landing Page Builder – Coming Soon page, Maintenance Mode, Lead Page, WordPress Landing Pages | 21 | 1,120 | 2,913 | 8k+ | Non-prefixed global variable | ||
| #47 | User Profile Builder – Beautiful User Registration Forms, User Profiles & User Role Editor | 21 | 739 | 1,495 | 40k+ | Non-prefixed global variable | ||
| #48 | Five Star Restaurant Reservations – WordPress Booking Plugin | 21 | 1,101 | 1,159 | 10k+ | Output is not escaped | ||
| #49 | Royal Addons for Elementor – Addons and Templates Kit for Elementor | 21 | 12,997 | 2,344 | 600k+ | Text Domain Mismatch | ||
| #50 | SeatReg | 21 | 350 | 1,842 | 300 | Missing nonce verification |