`tf.raw_ops.ConjugateTranspose`: negative value of `perm` can lead to out-of-bounds read
@Sehun0819,

I tried to execute the mentioned code with tensorflow official builds(default) and the code execution was successful with Tf2.15 and tf-nightly. Also the output is also displayed.
Kindly find the [gist](https://colab.research.google.com/gist/tilakrayal/2259609ffe3e68eee0a666ad1faea3f3/untitled1740.ipynb) for the reference.

Also this might be an issue with debug builds. We will check and provide more information. Thank you! This might be probably fixed in the PR #63064
### Issue type

Bug

### Have you reproduced the bug with TensorFlow Nightly?

Yes

### Source

source

### TensorFlow version

tf 2.17

### Custom code

Yes

### OS platform and distribution

Linux Ubuntu 22.04 LTS

### Mobile device

_No response_

### Python version

3.11.7

### Bazel version

6.5.0

### GCC/compiler version

clang 16

### CUDA/cuDNN version

_No response_

### GPU model and memory

_No response_

### Current behavior?

In `tf.raw_ops.ConjugateTranspose`, negative value of `perm` can lead to out-of-bounds read.
[Here](https://github.com/tensorflow/tensorflow/blob/617b5e97d6a9a71e1972dfe6fead5bf460094658/tensorflow/core/kernels/transpose_functor_cpu.cc#L52),
```C++
        i_idx += ratio * in_strides[perm[i]];
```
as there is no guard which checks validity of `perm`, when its value is -1 `in_strides[perm[i]]` can be an out-of-bounds reading(I guess -1 would be interpreted as an `SIZE_T_MAX` or something).
Note that the below code ends up with absl assertion failure in debug build.

### Standalone code to reproduce the issue

```Python
import tensorflow as tf

tf.raw_ops.ConjugateTranspose(
    x=tf.random.normal([2]),
    perm=[-1])
```


### Relevant log output

Release Build:
```shell
    Outputs nothing
```

Debug Build:
```shell
python: external/com_google_absl/absl/container/inlined_vector.h:363: auto absl::InlinedVector<long, 8>::operator[](size_type)::(anonymous class)::operator()() const [T = long, N = 8, A = std::allocator<long>]: Assertion `false && "i < size()"' failed.
Aborted (core dumped)
```
