### Is there an existing issue for this?

- [X] I have searched the existing issues and read the documentation

### Question

I'm trying to implement locally DLQ for SNS with SQS, the problem is, on localstack SQS DLQ message coming from SNS have different format than what you would expect in AWS

When I tested locally I received the message in the following format:

`"{\"Action\": [\"Publish\"], \"Message\": [\"(The original SNS message body here)\"], \"TopicArn\": [\"the topic arn in localstack\"], \"Version\": [\"2010-03-31\"]}"`

I'm using local stack 0.14.0 with docker-compose

my docker-compose file looks like this:


```
 aws:
    image: localstack/localstack:0.14.0
    restart: always
    volumes:
      - ./docker-mounts/localstack:/docker-entrypoint-initaws.d
    environment:
      - SERVICES=sqs,s3,ses,sns
      - DEFAULT_REGION=eu-west-1
      - HOSTNAME_EXTERNAL=aws.localtest.local
      - AWS_ACCESS_KEY_ID=foo
      - AWS_SECRET_ACCESS_KEY=bar
      - AWS_DEFAULT_REGION=eu-west-1
```

### Anything else?

_No response_
queue_url = sqs_queue
        sqs_client.send_message(QueueUrl=queue_url, MessageBody="foobar")
        result = sqs_client.receive_message(QueueUrl=queue_url, VisibilityTimeout=0)
        assert "Messages" in result
        message_receipt_0 = result["Messages"][0]
        result = sqs_client.receive_message(QueueUrl=queue_url)
        assert "Messages" in result
        message_receipt_1 = result["Messages"][0]
        assert (
            message_receipt_0["ReceiptHandle"] != message_receipt_1["ReceiptHandle"]
        ), "receipt handles should be different"
        
        result = sqs_client.receive_message(QueueUrl=queue_url)
        assert "Messages" not in result
    def test_delete_message_batch_from_lambda(
        self, sqs_client, sqs_create_queue, lambda_client, create_lambda_function