### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

Note: I create this bug as I didn't get an answer in another related [issue](https://github.com/localstack/localstack/issues/98#issuecomment-929993979) (#98).

After restarting localstorage, when I do a S3 getObject of a file, it gives me the file with some extra chunk-signature data. Example: 
```json
1e5;chunk-signature=83a45ce7e9db52171538036b946102068a9f2005c53049b23c63515f1c048fbc
{ "test": "this is a test json" }
0;chunk-signature=bd812928970799e2d5d16a86900629155d7d38aba42ed2dcbc7d6559c364671f
```

### Expected Behavior

The behaviour expected is getting the object without the extra chunk-signature data as it breaks parsing the file after.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

In order to easily reproduce this bug, I've created a [repository](https://github.com/herrlegno/localstack-s3-signature-error).

# Steps:
* Create a s3 bucket named: test
* Run 1º test (the one with (Order(1) decorator)
* After the test has successfully passed, restart the localstack container.
* Run only the "extendsS3Object" (Order(2) decorator) test or download the file "test.json" from s3 through awscli.

The file will look like something like this:
```json
19;chunk-signature=f64cba77c6523187a1448fd7bd9cd739ce9d953c951af6fe34ac787b8b8f60d6
{"foo":"bar"}
0;chunk-signature=fcc672670aab469d7e23cd6eeea9cb5639feca2f065510bcfb77f057bb391c9b
```


### Environment

```markdown
- OS: Pengwin WSL (but also tried in a native ubuntu 20.10)
- LocalStack: latest
- AWS Java S3 Client: 1.11.73
```


### Anything else?

_No response_
actual = md5(strip_chunk_signatures(data))
    try:
        md5_header = headers["Content-MD5"]
        if not is_base64(md5_header):
            raise Exception('Content-MD5 header is not in Base64 format: "%s"' % md5_header)
        expected = to_str(codecs.encode(base64.b64decode(md5_header), "hex"))
    except Exception:
        return error_response(
            "The Content-MD5 you specified is not valid.",
            "InvalidDigest",
            status_code=400,
        )
    if actual != expected:
        return error_response(
            "The Content-MD5 you specified did not match what we received.",
            "BadDigest",
            status_code=400,
        )
def error_response(message, code, status_code=400):
    result = {"Error": {"Code": code, "Message": message}}
    content = xmltodict.unparse(result)
    return xml_response(content, status_code=status_code)
def xml_response(content, status_code=200):