summaryrefslogtreecommitdiffstats
path: root/source/libsmb
Commit message (Collapse)AuthorAgeFilesLines
...
* you know what? this sort of thing makes me laugh. hmm, what functionsLuke Leighton1999-11-213-4/+40
| | | | | | | | | | | | | | | | | | | | have we got. and what data do we have. hmm.. i wonder what the NTLMv2 user session key can be... hmmm... weell.... there's some hidden data here, generated from the user password that doesn't go over-the-wire, so that's _got_ to be involved. and... that bit of data took a lot of computation to produce, so it's probably _also_ involved... and md4 no, md5? no, how about hmac_md5 yes let's try that one (the other's didn't work) oh goodie, it worked! i love it when this sort of thing happens. took all of fifteen minutes to guess it. tried concatenating client and server challenges. tried concatenating _random_ bits of client and server challenges. tried md5 of the above. tried hmac_md5 of the above. eventually, it boils down to this: kr = MD4(NT#,username,domainname) hmacntchal=hmac_md5(kr, nt server challenge) sess_key = hmac_md5(kr, hmacntchal);
* The First Necessary UNICODE String Support.Luke Leighton1999-11-191-19/+67
| | | | | | | | | the random workstation trust account password is TOTAL garbage. i mean, complete garbage. it's nowhere CLOSE to being a UNICODE string. therefore we can't just take every second character. created nt_owf_genW() which creates NT#(password) instead of NT#(Unicode(pw)). followed through to the password setting in srv_samr.c
* added regqueryval command (experimental) to get reg_io_q_info() andLuke Leighton1999-11-181-1/+1
| | | | | | | | reg_io_r_info() working properly. previously they weren't well understood (well, they were the first of the registry functions i did, back in december 97, ok??? :-) set ntversion to 0x1 in SAMQUERY, so that we reply same as NT4 srv.
* experimental spoolss rpcclient commandsLuke Leighton1999-11-051-0/+6
|
* samuserset <username> -p password. YESSSSS :)Luke Leighton1999-11-041-0/+11
| | | | you have to use "ntlmv1" at the moment (i.e set client ntlmv2 = no).
* adding experimental set user password command to rpcclient, it returnsLuke Leighton1999-11-041-0/+66
| | | | error wrong password against nt. ????
* the new CAP_EXTENDED_SECURITY code needed to support NTLMv2. also removedLuke Leighton1999-10-251-1/+1
| | | | | switching on CAP_STATUS32 from non-CAP_EXTENDED_SECURITY code (enabled for test purposes only)
* one of those wonderful moments when running against a different MSRPCLuke Leighton1999-10-251-5/+13
| | | | | | implementation (NT5) when you discover that your code is trash. samr_enum_dom_users(), samr_enum_dom_aliases() and samr_enum_dom_groups() all take a HANDLE for multiple-call enumeration purposes.
* split modify_trust_account_password into a separate module.Luke Leighton1999-10-211-0/+211
|
* need status codes from cli_net_req_chal() and cli_net_auth2().Luke Leighton1999-10-191-1/+2
| | | | | | this format is what i would like _all_ these functions to be (returning status codes, not BOOL) but that's a horrendous amount of work at the moment :)
* const issuesLuke Leighton1999-10-141-1/+1
|
* adding CAP_EXTENDED_SECURITY support in a hurry last week. forgot toLuke Leighton1999-10-141-0/+29
| | | | deal with linking issues in other binaries
* - added rudimentary CAP_UNICODE support because i thought it was part ofLuke Leighton1999-10-072-70/+417
| | | | | | | | | | | | | | | | | a problem i was having. - added rudimentary CAP_STATUS32 support for same reason. - added hard-coded, copy-the-same-data-from-over-the-wire version of CAP_EXTENDED_SECURITY, which is a security-blob to encapsulate GSSAPI which encodes SPNEGO which is used to negotiate Kerberos or NTLMSSP. i have implemented NTLMSSP which negotiates NTLMv1 or NTLMv2 and 40-bit or 128-bit etc. i have implemented NTLMv1 / 40-bit. *whew*.
* reading in smb server domain name from SMBnegprot responseLuke Leighton1999-09-161-5/+26
|
* #defines for port 445 to SMB_PORT2Luke Leighton1999-09-151-2/+2
|
* debug info display (netbios layer).Luke Leighton1999-08-181-4/+12
|
* bug-fix in connection to port 445. cool! it works!Luke Leighton1999-08-031-0/+1
|
* attempting a connection to port 445 first, followed by a connection to 139Luke Leighton1999-08-031-6/+23
| | | | if this fails.
* close socket issues:Luke Leighton1999-08-031-11/+33
| | | | | - ssl close from cli_reestablish_connection() not called. - ntlmv2 fall-back to ntlmv1 failed.
* BDC support.Matthew Chapman1999-07-221-0/+13
| | | | Algorithm based on previous work of Jeremy's.
* BDC support.Luke Leighton1999-07-211-1/+5
|
* anon passwd connection: passlen=1; ntpasslen=0.Luke Leighton1999-07-111-3/+4
|
* When making anonymous connections, must pass pointers to real ntTim Potter1999-07-091-5/+5
| | | | password and password length variables not constants.
* fixed problem with NULL ntpasswd parameters causing crash inLuke Leighton1999-07-081-9/+43
| | | | | static cli_calc_session_pwds(). this code used to be inside cli_session_setup() itself and worked on non-NULL local variables.
* removed old code/comments.Luke Leighton1999-06-291-66/+0
|
* smbclient modified to use cli_establish_connection(). smbclient thereforeLuke Leighton1999-06-292-5/+22
| | | | | | now uses improved authentication. smbclient now "broken" for "scripts" based on DEBUG() output. cli_establish_connection() requires modification to support old scripts.
* improving authentication code (tidyup).Luke Leighton1999-06-293-129/+483
|
* use nmb_safe_namestr.Luke Leighton1999-06-241-3/+8
|
* safe string version of nmb_namestr.Luke Leighton1999-06-241-4/+13
|
* safe string error reporting functions (found a potential buffer overflowLuke Leighton1999-06-243-62/+93
| | | | of a pstrcpy into an fstring).
* Adding scheduler control pipe (\atsvc), client-side routines, and rpcclientMatthew Chapman1999-04-231-1/+2
| | | | | command "at" (compatible with NT's "at" command - see rpcclient commit) - useful for remote NT administration.
* fixed issues with "Welcome to SAMBA Domain" for when admin user/pass isLuke Leighton1999-03-251-1/+1
| | | | | used to add workstation to domain. unix account db not modified: only SAM password db is used.
* NULL pointer handling in nt_lm_owf_genLuke Leighton1999-03-241-1/+4
|
* ERRmoredata is informational and should not be treated as a hard errorMatthew Chapman1999-03-231-7/+6
| | | | anywhere.
* const char* instead of char* for inputLuke Leighton1999-03-191-1/+1
|
* return type of nt_decrypt_string2 set to BOOL.Luke Leighton1999-03-191-4/+3
|
* Implemented encryption algorithm used for a number of RPC buffers.Matthew Chapman1999-03-192-1/+46
| | | | | | | (actually, decryption only currently because I need to get some sleep). Basically another Microsoft twist on DES; the "master key" is the user's NT hash MD4'd and subsets of this are chosen as the 56-bit DES keys.
* Benjamin Kuit's MYSQL SAM Database implementation.Luke Leighton1999-03-011-0/+2
| | | | Copyright (C) Benjamin Kuit <bj@mcs.uts.edu.au> 1999.
* UNICODE cleanup (see lib/util_unistr.c).Matthew Chapman1999-02-121-1/+1
| | | | | | No more ugly static library buffers and all functions take a destination string length (especially unistrcpy was rather dangerous; we were only saved by the fact that datagrams are limited in size).
* the UNICODE issue...Luke Leighton1999-02-112-2/+2
|
* UNICODE byte ordering issue: typecast to uint16* replaced with SSVAL()Luke Leighton1999-02-081-1/+1
|
* Must set password length to 24 after we encrypt a password.Matthew Chapman1999-02-011-0/+2
|
* returned cli_session_setup to previous behaviour. added a couple ofLuke Leighton1999-01-281-7/+22
| | | | | | | validation checks and also added capability to send plaintext passwords. send "ntpasslen" of zero to do this. sending same plaintext password for pass and ntpass arguments will result in previous behaviour of encrypting password if server supports it.
* - got client code cleartext passwords working again in cli_session_setup.Luke Leighton1999-01-271-20/+26
| | | | | | | | | | | | | | | | | | | needed this for some tests. - removed code that said "if lm password is not encrypted then encrypt both lm and nt passwords". actually it said "if lm password length is not 24 bytes and we're in security=user mode..." it didn't bother to check whether the nt password was NULL or not, and doing the encryption inside cli_session_setup is the wrong place. - checked all instances where cli_session_setup is called with cleartext passwords that are expected to then be encrypted (see above) with the test "if pwlen != 24...". there was only one: all the others either provide encrypted passwords, do null sessions or use cli_establish_connection. * recommendation: use cli_establish_connection() in smbwrapper/smbw.c
* Putting back the -p flag in smbclient.Richard Sharpe1999-01-251-1/+17
| | | | | However, it seems that the -s flag in smbclient is also ignored :-(
* In security=user mode we must allow cli_connect_serverlist to connect to ourMatthew Chapman1999-01-181-1/+1
| | | | own smbd process, rather than complaining about a password server loop.
* eclass != ERRDOS && num != ERRmoredataMatthew Chapman1999-01-151-1/+1
| | | | | | | is not the same as !(eclass == ERRDOS && num == ERRmoredata) This was causing smbclient to segfault on receiving certain errors.
* server_cryptkey() now calling cli_connectserverlist(). stupid microsoftLuke Leighton1998-12-141-2/+11
| | | | | idiotic *SMBSERVER connectionism added to cli_connect_serverlist(). also added check for protocol < LANMAN2.
* bugfix in smb_err_msgLuke Leighton1998-12-091-3/+2
|
* adding some enumerate services code, client and server.Luke Leighton1998-12-091-26/+39
|