There are many ways to create cross-hairs and cross-hair-like effects in Unity. Here are just a few of them:
9-sliced image:
You don't need a 2kx2k pixel texture just for a cross-hair. In fact, that would be (very) bad practice. Instead, you can have Unity scale and tile a simple, very small texture, based on it's parts.
In the case of a single-pixel cross-hair, a 3x3 image is enough, through the process of 9-slicing; there the image will be sliced in up to 9 different parts, and where each edge slice will be tiled or stretched to fit/fill a certain area.
Normal image(s):
You don't need a 2kx2k texture. A 1-pixel image stretched across the screen will look like a 1-pixel line. Make two of them cross at the middle, and you have a 1-pixel cross-hair.
When dealing with UI, transformations, variations and combinations of small images are pretty much always better than monolithic textures.
Vector-Graphics:
In engines that support this, or with the help of plugins, vector-graphics is often the best choice for screen-space UI, as it provides clean, crisp, graphics, which are easy to transform, maintain, extend, and can greatly simplify the process of making dynamic effects.
Unfortunately, very few game-engines support this out-of-the-box, and Unity is not one of them. Further unfortunately still, almost all plugins that provide this functionality do so through work-arounds, like transforming the vector-graphics into normal images, which, despite allowing the engine to "support vector-graphics", doesn't really maintain most of the advantages of vector-graphics.
Scripted Graphics-Library rendering:
Most game engines allow (direct or indirect) access to their underlying low-level Graphics-Library (IE OpenGL, DirectX, Vulkan, etc), and it is trivial to draw simple cross-hairs through these libraries.
In Unity, this access is provided through the GL class.
Note: This is usually not recommended, because it's overkill and much harder to change/maintain than an image-based approach, specially since there is no difference if you do the image-based approach correctly.
And many more...
These are just the main/most common few of many, many other methods... You're strongly advised to do some research on this, as many of the methods for creating cross-hairs also provide interesting starting-points and/or clues for more advanced graphics and effects.
NOTE:
To get a pixel-perfect effect, you need a pixel-aligned approach, obviously. In Unity, for screen-space UI, that's as easy as marking the "pixel-perfect" checkbox in the canvas' inspector.