Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
ntlm.cpython-313.pyc59 linesDownload Raw Back to __pycache__
1�

2��j�N����SrSSKJrJr SSKJrJr SSKJr SSK	J	r	 SSK3r4SSKrSSKrSSK
Jr SSKJr \"5rS5SKJr SrS
rS6rSrSrSrSrSrSrSrSrSr Sr!Sr"Sr#Sr$Sr%Sr&Sr'Sr(Sr)S r*S!r+S7r,S
r-Sr.\\\\\\\\ \!\"\#\$\%\&\'\(\)\*\+\,\-\./r/Sr0S
r1S8r2Sr3S!r4S r5Sr6Sr7S"r8Sr9S#r:\0\1\2\3\4\5\6\7\8\9\:/r;Sr<S
r=S9r>\<\=\>/r?S(S$jr@S%rA"S&S'\B5rCg!\a S	rN�f=f))�10�)�pack�unpack)�system�version)�gethostname)�timeN)�urandom)�getpreferredencodingzutf-8�)�format_ad_timestampsNTLMSSP��������������
���	������11c���U(ab[5R5S:Xa?[5RS5upn[	U5n[	U5n[	U5nO
SnSnSnOSnSnSn[
SU5[
SU5-[
SU5-[
SS5-[
SS5-[
SS5-[
SS	5-$![12a	 SnSnSnNlf=f)13N�windows�.r!ri(14r�<B�<Hr)r�lowerr�split�int�	Exceptionr)�debug�
major_release�
minor_release�builds    �VD:\code\apps\devtools\python\user_packages\Python313\site-packages\ldap3/utils/ntlm.py�pack_windows_versionr3�s�����8�>�>��y�(�
�6=�i�o�o�c�6J�3�
�e� #�M� 2�
� #�M� 2�
��E�15���M��M��E��
��
�����m�$���m�$�%���e�����a�=����a�=�	�16��a�=����b�>�
����
� !�
� !�
���
�s�=C17�18C�Cc19�b�[U5S:wa[S5e[[LaF[	SUS5S[	SUS5S[	SUSS5S[	SUS	5S4$[US5[US5[[	SUSS5S5[US	54$)20Nr#z"version field must be 8 bytes longr(rrr)rr"r)�len�21ValueError�str�bytesrr,)�version_messages r2�unpack_windows_versionr:�s���22�?��q� ��=�>�>�23�e�|��t�_�Q�/�0��3��t�_�Q�/�0��3��t�_�Q�q�1�2�1�5��t�_�Q�/�0��3�5�	5�24�O�A�&�'��O�A�&�'��F�4���1�!5�6�q�9�:��O�A�&�'�)�	)�c��\rSrSrSrSrSrSrSrSr	Sr25S	rS26rSr
\S5r\S
5r\S5r\S5r\S5rSrSrSrg)�27NtlmClient�c�t�SUlSUlSUlX lXlSUlSUl/UlSUlSUl	SUl28SUlSUlSUl
SUlSUlSUlSUlSUlSUlSUlSUlSUlSUlX0lSUlSUlSUlSUlSUlSUlSUlSUl SUl!SUl"SUl#SUl$SUl%SUl&SUl'SUl(SUl)SUl*SUl+SUl,g)NrF)-�client_config_flags�exported_session_key�negotiated_flags�	user_name�user_domain�no_lm_response_ntlm_v1�client_blocked�client_block_exceptions�!client_require_128_bit_encryption�
max_life_time�client_signing_key�client_sealing_key�sequence_number�server_sealing_key�server_signing_key�	integrity�
replay_detect�sequence_detect�confidentiality�datagram�identity�client_supplied_target_name�client_channel_binding_unhashed�unverified_target_name�	_password�server_challenge�server_target_name�server_target_info�server_version�server_av_netbios_computer_name�server_av_netbios_domain_name�server_av_dns_computer_name�server_av_dns_domain_name�server_av_dns_forest_name�server_av_target_name�server_av_flags�server_av_timestamp�server_av_single_host_data�server_av_channel_bindings�server_av_flag_constrained�server_av_flag_integrity�#server_av_flag_target_spn_untrusted�current_encoding�client_challenge�server_target_info_raw)�self�domainrC�passwords    r2�__init__�NtlmClient.__init__�s_��#$�� �$(��!� $���"��!��&*��#�#���')��$�15��.�!���"&���"&���#���"&���"&������"���$���$�����
���
�+/��(�/3��,�&*��#�!�� $���"&���"&���"���/3��,�-1��*�+/��(�)-��&�)-��&�%)��"�#���#'�� �*.��'�*.��'�*.��'�(,��%�37��0� $��� $���&*��#r;c��UR(dgU[;aURSU--(aS$S$[S5e)NFrT�invalid flag)r@�29FLAG_TYPESr6�rm�flags  r2�get_client_flag�NtlmClient.get_client_flag�s=���'�'���:���3�3�q�D�y�A�4�L�u�L���(�(r;c��UR(dgU[;a[S5eURSU--(aS$S$)NFrsrT)rBrtr6rus  r2�get_negotiated_flag�NtlmClient.get_negotiated_flag�s=���$�$���z�!��^�,�,��,�,��T�	�:�t�E��Er;c��UR(dgU[;a[S5eURSU--(aS$S$)NFzinvalid AV flagrT)rc�
AV_FLAG_TYPESr6rus  r2�get_server_av_flag�NtlmClient.get_server_av_flag�s>���#�#���}�$��.�/�/��+�+�q�D�y�9�t�D�u�Dr;c��[U5[:XaU/nUH0nU[;aU=RSU--slM'[	S5e g�Nrrs��typer,rtr@r6�rm�flagsrvs   r2�set_client_flag�NtlmClient.set_client_flag�sG����;�#���G�E��D��z�!��(�(�Q�$�Y�7�(� ��0�0�	r;c��SUlg)Nr)r@)rms r2�reset_client_flags�NtlmClient.reset_client_flagss30��#$�� r;c��[U5[:XaU/nUH1nU[;aU=RSU-)-slM([	S5e gr�r�r�s   r2�unset_client_flag�NtlmClient.unset_client_flagsI����;�#���G�E��D��z�!��(�(�a�4�i�L�8�(� ��0�0�	r;c31��UR5 UR[[[[32[[[[/5 [nU[S[5-
nU[SUR5-
nXRSS5-
nUR[ 5(aU[#S5-
nU$U[#S5-
nU$)z33Microsoft MS-NLMP 2.2.1.134�<I��(TF)r�r��FLAG_REQUEST_TARGET�FLAG_NEGOTIATE_56�FLAG_NEGOTIATE_128�FLAG_NEGOTIATE_NTLM�FLAG_NEGOTIATE_ALWAYS_SIGN�FLAG_NEGOTIATE_OEM�FLAG_NEGOTIATE_UNICODE�'FLAG_NEGOTIATE_EXTENDED_SESSIONSECURITY�NTLM_SIGNATUREr� NTLM_MESSAGE_TYPE_NTLM_NEGOTIATEr@�35pack_fieldrw�FLAG_NEGOTIATE_VERSIONr3)rm�messages  r2�create_negotiate_message�#NtlmClient.create_negotiate_messages���	
���!����1�/�0�1�8�0�4�E�G�	H�!���4��>�?�?���4��d�6�6�7�7���?�?�2�r�*�*����� 6�7�7��+�D�1�1�G���
�+�E�2�2�G��r;c�"�[U5S:agUSS[:wag[[SUSS5S5[:wagURUSS5up#n[SUSS5SUlUR[5(aS	O[Ul36USS37UlURUSS5upSn[USS5Ul
UR[5(a+U(a$XXB-RUR5UlUR["5(Ga�U(Ga�XXe-UlUR'UR$5UlUR(GH�upxU[*:XaURS	5UlM(U[.:XaURS	5UlMJU[2:XaURS	5UlMlU[6:XaURS	5UlM�U[::XaURS	5UlM�U[>:XaiURA[B5(aS
Ul"URA[F5(aS
Ul$URA[J5(a38S
Ul&GM GM#U[N:Xa [Q[SU5S5Ul)GMMU[T:Xa	X�l+GM`U[X:XaURS	5Ul-GM�U[\:Xa	X�l/GM�[aS5e ggg)z39Microsoft MS-NLMP 2.2.1.240�8Frr#r�rr��	utf-16-le� r��0T�<Q�unknown AV typeN)1r5r�r,r� NTLM_MESSAGE_TYPE_NTLM_CHALLENGE�unpack_fieldrBrzr��oem_encodingrjrYr:r\r��decoderZ�FLAG_NEGOTIATE_TARGET_INFOrl�unpack_av_infor[�AV_NETBIOS_COMPUTER_NAMEr]�AV_NETBIOS_DOMAIN_NAMEr^�AV_DNS_COMPUTER_NAMEr_�AV_DNS_DOMAIN_NAMEr`�AV_DNS_TREE_NAMEra�AV_FLAGSr~�AV_FLAG_CONSTRAINEDrg�AV_FLAG_INTEGRITYrh�AV_FLAG_TARGET_SPN_UNTRUSTEDri�AV_TIMESTAMPr
rd�AV_SINGLE_HOST_DATAre�AV_TARGET_NAMErb�AV_CHANNEL_BINDINGSrfr6)	rmr��target_name_len�_�target_name_offset�target_info_len�target_info_offset�	attribute�values	         r2�parse_challenge_message�"NtlmClient.parse_challenge_message's����w�<�"����1�Q�<�>�)���v�d�G�A�b�M�*�1�-�.�2R�R��15�1B�1B�7�2�b�>�1R�.��.� &�t�W�R��^� <�Q� ?���/3�/G�/G�"�0$�0$��)5�	
��!(��2����15�1B�1B�7�2�b�>�1R�.��.�4�W�R��^�D����#�#�$7�8�8�_�&-�BT�Bf�&g�&n�&n��%�%�''�D�#��#�#�$>�?�?�O�*1�FX�Fj�*k�D�'�&*�&9�&9�$�:U�:U�&V�D�#�$(�$;�$;� �	�� 8�8�;@�<�<��;T�D�8��"8�8�9>���k�9R�D�6��"6�6�7<�|�|�K�7P�D�4��"4�4�5:�\�\�+�5N�D�2��"2�2�5:�\�\�+�5N�D�2��(�*��.�.�/B�C�C�:>��7��.�.�/@�A�A�8<��5��.�.�/K�L�L�CG��@�M��,�.�/B�6�$�PU�CV�WX�CY�/Z�D�,��"5�5�6;�3��.�0�16���k�1J�D�.��"5�5�6;�3�$�%6�7�7�7%<�ET�?r;c��UR(dUR(dgUR[5(aUR	[5(dgUR41(aUR(dUR(ag[nU[S[5-
nSnUR(aSnOSnXRX25-
nU[U5-
nUR5nXRXB5-
nU[U5-
nURR!UR"5nXRXR5-
nU[U5-
nUR$R!UR"5nXRXb5-
nU[U5-
nUR	[&5(dUR	[(5(a$[+5R!UR"5nOSnXRXr5-
nU[U5-
nSnXRX�5-
nU[U5-
nU[SUR5-
nUR	[(5(aU[-S5-
nO
U[-5-
nU[SS5-
nU[SS5-
nX-
nX-
nX-
nX-
nX-
nX-
nU$)z42Microsoft MS-NLMP 2.2.1.343Fr��Xr;Tr�r)r@rBrwr�rzr]r^rhr�r�#NTLM_MESSAGE_TYPE_NTLM_AUTHENTICATEr[r�r5�compute_nt_responserD�encoderjrC�'FLAG_NEGOTIATE_OEM_WORKSTATION_SUPPLIEDr�rr3)	rmr��pos�lm_challenge_response�nt_challenge_response�domain_namerC�workstation�encrypted_random_session_keys	         r2�create_authenticate_message�&NtlmClient.create_authenticate_message_s���44�'�'��0E�0E����� 2�3�3�D�<T�<T�Ug�<h�<h���4�4�D�<^�<^�dh�eB�eB�� ���4��A�B�B�����"�"�$'�!�%(�!��?�?�#8�>�>���s�(�)�)�� $� 8� 8� :���?�?�#8�>�>���s�(�)�)���&�&�-�-�d�.C�.C�D���?�?�;�4�4���s�;�����N�N�)�)�$�*?�*?�@�	��?�?�9�2�2���s�9�~����#�#�$K�L�L�PT�Ph�Ph�&�Q(�Q(�%�-�.�.�t�/D�/D�E�K��K��?�?�;�4�4���s�;����'*�$��?�?�#?�E�E���s�/�0�0���4��d�3�3�4�4���#�#�$:�;�;��+�D�1�1�G��+�-�-�G��4��a�=� ���4��a�=� ���(���(������������/���r;c�B�[S[U5[U5U5$)Nz<HHI)rr5)r��offsets  r2r��NtlmClient.pack_field�s���F�C��J��E�45�F�;�;r;c��[U5S:wa[S5e[SUSS5S[SUSS5S[SUSS5S4$)Nr#zntlm field must be 8 bytes longr)rrr"r�)r5r6r)�
field_messages r2r��NtlmClient.unpack_field�sg���}���"��>�?�?��d�M�!�A�.�/��2��d�M�!�A�.�/��2��d�M�!�A�.�/��2�3�	3r;c�J�U(a�[5nSnSnU(d|[SXUS-5SnU[;a[S5e[SXS-US-5SnXS-US-U-nX5S--
nU[:XaSnOURXF45 U(dM|U$[5$)NFrr)rr�r"T)�listr�AV_TYPESr6�AV_END_OF_LIST�append)�info�avs�doner��av_type�av_len�av_values       r2r��NtlmClient.unpack_av_info�s�����&�C��D��C�� ��t��q��'9�:�1�=���(�*�$�%6�7�7���d��7�C�!�G�&<�=�a�@���a���q��6�)9�:����z�!���n�,��D��J�J��2�3��d��46��6�Mr;c���SnUHBup#U"S5[:XaMU[SU5-
nU[S[U55-
nX-
nMD U[S[5-
nU[SS5-
nU$)Nr;rr))r�rr5)r�r�r�r�s    r2�pack_av_info�NtlmClient.pack_av_info�s{����!$��G��q�z�^�+���D��w�'�'�D��D��s�8�}�-�-�D���D�"%�	
��T�>�*�*����T�1�
����r;c�H�[S[[55S-S-5$)Nr�l!l47i���)rr,r	�r;r2�pack_windows_timestamp�!NtlmClient.pack_windows_timestamp�s���D�3�t�v�;��4��@�A�Ar;c�$�UR(dUR(dg[S5UlSnU[	SS5-
nU[	SS5-
nU[	SS5-
nU[	SS5-
nXR5-
nXR-
nU[	SS5-
nXR-
nU[	SS5-
nUR5n[R"X RU-[RS9R5nX1-nU$)	Nr;r#r(rr)rr���	digestmod)rCrXr48rkrr�rl�ntowf_v2�hmac�newrY�hashlib�md5�digest)rm�temp�response_key_nt�nt_proof_strr�s     r2r��NtlmClient.compute_nt_response�s����~�~�d�n�n�� '��49�������T�1�
�����T�1�
�����T�1�
�����T�1�
����+�+�-�-���%�%�%����T�1�
����+�+�+����T�1�
����-�-�/���x�x��1F�1F��1M�Y`�Yd�Yd�e�l�l�n�� ,� 3��$�$r;c���URRS5n[U5S:Xa>[US5S:Xa,[US5S:Xa[R"US5nO?[50R"SURRS55R5n[R"X RR5UR -RS5[51R"S	9R5$![aYnSSK52Jn UR
URRS55R5nSnAN�![a Uef=fSnAff=f)53N�:rrr�r�MD4r�)r�r�)rXr+r5�binascii�	unhexlifyr�r�r�r�r6�Crypto.Hashr��ImportErrorr�rC�upperrDr�)rm�	passparts�password_digest�er�s     r2r��NtlmClient.ntowf_v2�s-���N�N�(�(��-�	��y�>�Q��3�y��|�#4��#:�s�9�Q�<�?P�TV�?V�&�0�0��1��>�O�
�")�+�+�e�T�^�^�5J�5J�;�5W�"X�"_�"_�"a���x�x��.�.�*>�*>�*@�4�CS�CS�*S�)[�)[�\g�)h�t{�t�t�A�H�H�J�	J���
��/�&)�g�g�d�n�n�.C�.C�K�.P�&Q�&X�&X�&Z�O��"���G���	
�s$�*>D
�
54E0�>E�
E(�(E+�+E0)-rXrGrFrkrVr@rHrKrJrUrRrjrSrArTrOrIrBrErPrQrLrfr_r`rargrhrircr]r^rerbrdrYrMrNr[rlrZr\rWrDrCN)�__name__�55__module__�__qualname__�__firstlineno__rprwrzr~r�r�r�r�r�r��staticmethodr�r�r�r�r�r�r��__static_attributes__r�r;r2r=r=�s���-+�^)�F�E�1�%�1��068�p>�@�<��<��3��3�����*���� �B��B�%�(Jr;r=)F)D�__doc__�structrr�platformrr�socketrr	r�r�r��osr56�localerr�r-�protocol.formatters.formattersr
r�r�r�r�r��FLAG_NEGOTIATE_KEY_EXCHr�r�r��FLAG_REQUEST_NOT_NT_SESSION_KEY�FLAG_NEGOTIATE_IDENTIFYr��FLAG_TARGET_TYPE_SERVER�FLAG_TARGET_TYPE_DOMAINr�r��"FLAG_NEGOTIATE_OEM_DOMAIN_SUPPLIED�FLAG_NEGOTIATE_ANONYMOUSr��FLAG_NEGOTIATE_LM_KEY�FLAG_NEGOTIATE_DATAGRAM�FLAG_NEGOTIATE_SEAL�FLAG_NEGOTIATE_SIGNr�r�r�rtr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r}r3r:�objectr=r�r;r2�<module>rs����6 �$��������+�'�)�L�A���#$� �#$� �&'�#�����������"$����*,�'�������*,�'�%'�"��������������������%� �$�(�-�%�5�%�%�(�5�0�&�!�#�%�!�!�!� �$�+&�57�.�����������������������$�"� ��������58!������ ��$�"�-�/�
�59�<
)� JJ��JJ��O���L��s�
C�C�C
codekingpro/portable-devtools · Team Ai