Tag: availability

Amazon STS regional instead of global endpoint

Use setRegion and setEndpoint methods to make calls to Regional Amazon STS endpoints.

Unspecified default value

Unspecified defaults can cause your application to crash.

Device Permission Usage.

Do not use API that requests system permission directly. Please onboard mShop Permission Service first.

Missing check on the value returned by moveToFirst API

Missing check on the value returned by moveToFirst API can cause your application to crash.

Overflow when deserializing relational database objects

Deserializing objects from relational databases should allocate a 64-bit, not 32-bit, type for the auto-incremented identifier.

Custom manual retries of AWS SDK calls

Custom manual retries of calls to AWS SDK APIs are inefficient.

Missing null check for cache response metadata

Accessing the cache response metadata without performing a null check might cause a null dereference error.

Use of a deprecated method

This code uses deprecated methods, which suggests that it has not been recently reviewed or maintained.

Bit shift checking

Rule to detect bit shifting.

AWS Lambda client not reused

Reuse AWS clients in Lambda.

AWS client not reused in a Lambda function

Recreating AWS clients in each Lambda function invocation is expensive.

Denial of service rule

A denial of service (DOS) attack can make a critical resource unavailable for legitimate users.

Insecure temporary file or directory

Insecure ways of creating temporary files and directories can lead to race conditions, privilege escalation, and other security vulnerabilities.

Concurrency deadlock

Improper use of locks in a multi-threaded program can lead to deadlock and cause the program to be unresponsive.

Override of reserved variable names in a Lambda function

Overriding environment variables that are reserved by AWS Lambda might lead to unexpected behavior.

Not calling finalize causes skipped cleanup steps

Always call super.finalize explicitly.

Unchecked S3 object metadata content length

Failure to specify a content length causes the contents of the input stream to buffer locally in memory in order to calculate its length. This can result in performance problems.

Resource leak

Allocated resources are not released properly.

Missing position check before getting substring

Getting a substring outside the range of a string can cause an index-out-of-bounds exception.

Invalid public method parameters

Public method parameters should be validated for nullness, unexpected values, and malicious values.

Improper use of classes that aren't thread-safe

Improper use of thread-unsafe classes in multi-threaded programs can cause the programs to be unstable.

Insufficient use of name in Amazon SQS queue

Provide the full URL for the Amazon SQS queue.

Missing check on the value returned by ResultSet.next

Missing check on the value returned by ResultSet.next can cause your application to crash.

Use an enum to specify an AWS Region

To minimize the risk of error, use an enum instead of a string to specify an AWS Region.

Missing null check when retrieving the owner of an Amazon S3 object

Missing null check when retrieving the owner of an Amazon S3 object can result in a null dereference error.

Thread safety violation

A thread safety violation might indicate a data race which can put the system into an inconsistent state.

Null pointer dereference

Dereferencing a null pointer can lead to unexpected null pointer exceptions.

Atomicity violation

Atomicity violations caused by improper usage of ConcurrentHashMap or ConcurrentLinkedQueue can result in crashses or incorrect program results.

Missing check when launching an Android activity with an implicit intent

Your application can crash if the check for an application that can receive the implicit intent is missing from code.

Infinite loop

Use loop control flow to ensure that loops are exited, even if exceptional behaviors are encountered.

Inconsistent null check

A missing null check might cause a null dereference error.

Missing handling of file deletion result

Unhandled failures of deleting files can exhaust file handles.

Buffer underflow prevention

An improper buffer read operation might lead to a BufferUnderflowException.