current_user_can
checks whether current user has a specific capability. And only that…
It won’t protect you from XSS attacks – so it would be a good idea to check some nonces too – this way you can be certain that user wants to perform given action.
Let’s say there’s a link to delete a post. Of course you will check if user can delete posts. But what if a user is logged in and I make him click the link? He doesn’t have to know – it can be a shortened link or an image.
It also won’t check if the current user is owner of given object.
Let’s day I’m a customer in shop. Of course I can add comments to orders. But only for my orders.
So you should always check full access rights and not only roles and capabilities.
And of course it won’t make the action safe. So you still have to sanitize, and escape, and so on…
Related Posts:
- What is the difference between a cer, pvk, and pfx file?
- How to solve “Kernel panic – not syncing – Attempted to kill init” — without erasing any user data
- What’s the best approach for generating a new API key?
- Is it possible to decrypt SHA1
- Error `sec_error_revoked_certificate` when viewed in Firefox only
- Convert .pfx to .cer
- how fix “this certificate cannot be verified up to a trusted certification authority”
- Getting a List of Currently Available Roles on a WordPress Site?
- Why should I use the esc_url?
- Where to securely store API keys and passwords in WordPress?
- Why escape if the_content isnt?
- Why are passwords exportable as plain text in WordPress?
- Full path disclosure on rss-functions.php
- What to use instead of wp_kses() in user output
- Are the default salts secure?
- is_email() VS sanitize_email()
- Subscribe to email for security fixes?
- What is the purpose of having a token in cookies?
- How to escape custom css?
- Understanding SVG vulnerabilities in WordPress related to a specific fix
- Moving wp-config.php: Can this be done after site launch?
- How to secure or disable the RSS feeds?
- Make password invalid once logged out of password-protected page
- How to get WordPress to save upload file beyond web root [closed]
- Is security a problem in WordPress?
- Moving wordpress out of the public directory
- Logout via Subdomain, non-wordpress page on a different server?
- How to secure WordPress XMLRPC?
- Protecting HTML5 video [closed]
- How can I tell who changed the password?
- WordPress website Security [closed]
- Do I need to use the esc_html() function on hard coded links?
- Can’t reset WordPress password
- Is the “lost password” feature truly a vulnerability?
- Frontend Password change
- Is it possible to reduce the minimum character length for passwords?
- Handling email piping attachments and detecting unsupported file types
- Downloading File from Outside Web Root
- Why are xmlrpc.php and wp-cron.php being called so often?
- site get login attempts after htaccess ip restriction
- Is it good security advice to install wordpress in subdirectory but link to root?
- Why was my blog post inserted lot’s of ad links by others?
- Moving wp-config.php up 2 levels
- How Could I sanitize the receive data from this code
- WordPress SQL Injections through User Agent
- Should I Worry About SQL Injection When Using wp_insert_post?
- Is there a way for a user to have an alias?
- How to prevent wp-login brute force attack from thousand of different IP? [duplicate]
- What permissions should I give directories if I want to make WordPress more secure?
- Security threat with `home_url`?
- When is wp_set_password() called or how to capture a password
- How to protect wp-admin through .htaccess?
- Something is unescaping all html entities before output to browser [closed]
- Frequently getting attacks on admin-ajax.php, wp-cron.php, xmlrpc.php and wp-login.php
- How to get WordPress to send Password Reset Link Email instead of New Password?
- Verifying that I have fully removed a WordPress hack?
- Large Session Tokens
- How to change permissions of WordPress and/or apache on macOS securely?
- Using an Encryption class in a WordPress Plugin
- Limit Login Attempts BEFORE PHP is executed?
- Which Versions of WordPress Ship with the Patched TimThumb?
- Safe to say WordPress security releases don’t have database upgrades
- Config file with no Keys..?
- How much should I worry about these messages?
- Security concerns with external links
- Uploading .webm format on WordPress results in security guidline breach and fail
- fail2ban to prevent Brute Force Attacks on WordPress?
- Use Google authentication for pages within a website [closed]
- How to give the same error message when the wrong password or wrong username is used?
- Side effects of disallowing *.php requests in production environment?
- should I escape a literal url added in functions.php
- Moving wp-config.php outside root folder where we have multiple wordpress websites for enhanced security [duplicate]
- Replace domain in database
- Adding Security Keys?
- How might I sanitize an XML file before WP Import? (Does wordpress verify or clean text when importing from an XML document? )
- Secret keys in SCM
- Secure Server after configuration
- Uploading attachment (pdf) and prevent download for anonymous user
- After limiting the access to my wp-login.php by IP through .htaccess, all my password-protected posts stopped working. What’s the best solution now?
- Specific Page/Post Need to Stay Non SSL
- Block JSON access over the net
- Can someone do something to my website if I posted a snapped image of the header and covered my logo? (On reddit, when explaining a question)
- Scan multiple websites for malware that are in same webhost root?
- The in-famous Unable to locate WordPress Content directory (wp-content) and the Direct Method
- Security: AWS (shared hosting) claims template file malicious
- How to check whether a site has been compromised without browsing into it?
- My site thinks it’s secure when it is fact not
- Is it possible to only have the admin interface bind to the local loopback?
- PHP Code Sniffer – WordPress VIP Coding Standards
- How do I hide WordPress users from security scanning?
- Trying to understand nature of hacking
- What is the best security $_POST method?
- Default installation permissions for wp-config.php
- Correct setup to block file modifications from hackers
- Is my WP site being hacked?
- How do you search for backdoors from the previous IT person?
- Possible to change email address in keypair?
- Why is SSH password authentication a security risk?
- Is wp-cron.php vulnerable to external attacks and how to protect it?
- How to address security vulnerabilities: LUCKY13, BEAST, and BREACH