Received signal strength indication (RSSI) obtained by Medium Access Control (MAC) layer is widely used in range-based and fingerprint location systems due to its low cost and low complexity. However, RSS is affected by noise signals and multi-path, and its positioning performance is not stable. In recent years, many commercial WiFi devices support the acquisition of physical layer channel state information (CSI). CSI is an index that can characterize the signal characteristics with more fine granularity than RSS. Compared with RSS, CSI can avoid the effects of multi-path and noise by analyzing the characteristics of multi-channel sub-carriers. To improve the indoor location accuracy and algorithm efficiency, this paper proposes a hybrid fingerprint location technology based on RSS and CSI. In the off-line phase, to overcome the problems of low positioning accuracy and fingerprint drift caused by signal instability, a methodology based on the Kalman filter and a Gaussian function is proposed to preprocess the RSSI value and CSI amplitude value, and the improved CSI phase is incorporated after the linear transformation. The mutation and noisy data are then effectively eliminated, and the accurate and smoother outputs of the RSSI and CSI values can be achieved. Then, the accurate hybrid fingerprint database is established after dimensionality reduction of the obtained high-dimensional data values. The weighted k-nearest neighbor (WKNN) algorithm is applied to reduce the complexity of the algorithm during the online positioning stage, and the accurate indoor positioning algorithm is accomplished. Experimental results show that the proposed algorithm exhibits good performance on anti-noise ability, fusion positioning accuracy, and real-time filtering. Compared with CSI-MIMO, FIFS, and RSSI-based methods, the proposed fusion correction method has higher positioning accuracy and smaller positioning error.