Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Marriage is the only adventure open to the cowardly. -- Voltaire


devel / comp.os.ms-windows.programmer.win32 / Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

SubjectAuthor
* XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
+* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordShadow
|`* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
| `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordJJ
|  `- Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
`* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordVanguardLH
 `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
  +* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordVanguardLH
  |`* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
  | `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordVanguardLH
  |  +* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
  |  |`* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordVanguardLH
  |  | `- Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
  |  `- Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
  `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
   `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordVanguardLH
    `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
     `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordVanguardLH
      `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser
       `* Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordVanguardLH
        `- Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and passwordR.Wieser

1
XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<upqci1$89si$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10528&group=comp.os.ms-windows.programmer.win32#10528

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!news.niel.me!news.gegeweb.eu!gegeweb.org!news.mb-net.net!open-news-network.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 5 Feb 2024 11:16:21 +0100
Organization: A noiseless patient Spider
Lines: 20
Message-ID: <upqci1$89si$1@dont-email.me>
Injection-Date: Mon, 5 Feb 2024 10:16:33 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="83978d42173491fa057aac1e11a0f6f5";
logging-data="272274"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18PADUkdob8lAFyKZy6b9zSJLn8/4FnuyqdAgtbkdbCXw=="
Cancel-Lock: sha1:FPn3XJaCM59QyCSlMa/CeJJ9+N4=
X-RFC2646: Format=Flowed; Original
X-MSMail-Priority: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-Priority: 3
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
 by: R.Wieser - Mon, 5 Feb 2024 10:16 UTC

Hello all,

I'm still using OE6 to read/write newsgroup messages, and have written a
small program which retrieves the message count for each subscribed
newsgroup, so I can easily see if new messages are available for them.

The thing is, at some point I need to provide a username and password. The
OE6 account already has them, but can't seem to be able to retrieve them for
my "new messages" checking program.

Any idea where-and-how I can retrieve them ?

I've already taken a peek at the 'CredRead' and family functions
(advapi32.ddl), but those return nothing. Presumably OE6 uses another
method.

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<16g1silhhs4o9e70u30210umhn3d9bfjhg@4ax.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10529&group=comp.os.ms-windows.programmer.win32#10529

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Sh...@dow.br (Shadow)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 05 Feb 2024 08:07:08 -0300
Organization: A noiseless patient Shadow
Lines: 27
Message-ID: <16g1silhhs4o9e70u30210umhn3d9bfjhg@4ax.com>
References: <upqci1$89si$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Injection-Info: dont-email.me; posting-host="b86990f92291d7070670009c9a5c572f";
logging-data="288383"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+38lsbs7ZHiborJaiYMawzWePyue+/6iI="
Cancel-Lock: sha1:XakO+A2Fs8E19kUAPohf9jwtprQ=
X-Newsreader: Forte Agent 3.3/32.846
 by: Shadow - Mon, 5 Feb 2024 11:07 UTC

On Mon, 5 Feb 2024 11:16:21 +0100, "R.Wieser" <address@is.invalid>
wrote:

>Hello all,
>
>I'm still using OE6 to read/write newsgroup messages, and have written a
>small program which retrieves the message count for each subscribed
>newsgroup, so I can easily see if new messages are available for them.
>
>The thing is, at some point I need to provide a username and password. The
>OE6 account already has them, but can't seem to be able to retrieve them for
>my "new messages" checking program.
>
>Any idea where-and-how I can retrieve them ?
>
>I've already taken a peek at the 'CredRead' and family functions
>(advapi32.ddl), but those return nothing. Presumably OE6 uses another
>method.

Nirsoft probably has an utility to retrieve them. Filemon or
Regmon it and see where it searches.
Don't have OE installed, so can't test it myself.
[]'s
--
Don't be evil - Google 2004
We have a new policy - Google 2012
Google Fuchsia - 2021

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<upqis0$9ce8$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10530&group=comp.os.ms-windows.programmer.win32#10530

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 5 Feb 2024 13:03:35 +0100
Organization: A noiseless patient Spider
Lines: 33
Message-ID: <upqis0$9ce8$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <16g1silhhs4o9e70u30210umhn3d9bfjhg@4ax.com>
Injection-Date: Mon, 5 Feb 2024 12:04:16 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="83978d42173491fa057aac1e11a0f6f5";
logging-data="307656"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19CTA6pHObtvYdpRnl/tZ33MkOK2t4nbId19iHnF4aeyg=="
Cancel-Lock: sha1:c9JikmKLeeFGafKHDR7TWr3hxxE=
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-RFC2646: Format=Flowed; Original
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-MSMail-Priority: Normal
X-Priority: 3
 by: R.Wieser - Mon, 5 Feb 2024 12:03 UTC

Shadow,

>>The thing is, at some point I need to provide a username and password.
>>The OE6 account already has them, but can't seem to be able to retrieve
>>them for my "new messages" checking program.
>>
>>Any idea where-and-how I can retrieve them ?
....
> Nirsoft probably has an utility to retrieve them. Filemon or
> Regmon it and see where it searches.

Ah, I see that I should have been a bit clearer.

I have both the needed username and password, and currently have them
hardcoded in my "new messages" program. But that means that when I
add/change an account I need to edit the program by hand. And as I'm lazy
(as all programmers are :-) ) I would like to skip that step, and have the
program retrieve that information by itself.

After posting my question I did some "googeling", and found that the account
data gets stored in the registry here :

HKEY_CURRENT_USER\Software\Microsoft\Internet Account Manager\Accounts

It holds all kinds of stuff, but the accounts password is not among them.
Although there is a "NNTP Password2" key present, its data doesn't live up
to it.

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<149879gps9m69.oqo35k8h3j77$.dlg@40tude.net>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10531&group=comp.os.ms-windows.programmer.win32#10531

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!paganini.bofh.team!not-for-mail
From: jj4pub...@outlook.com (JJ)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 5 Feb 2024 20:54:50 +0700
Organization: To protect and to server
Message-ID: <149879gps9m69.oqo35k8h3j77$.dlg@40tude.net>
References: <upqci1$89si$1@dont-email.me> <16g1silhhs4o9e70u30210umhn3d9bfjhg@4ax.com> <upqis0$9ce8$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Injection-Info: paganini.bofh.team; logging-data="1965841"; posting-host="OF20ygzR4mcg9uIuWeI1RA.user.paganini.bofh.team"; mail-complaints-to="usenet@bofh.team"; posting-account="9dIQLXBM7WM9KzA+yjdR4A";
User-Agent: 40tude_Dialog/2.0.15.84
Cancel-Lock: sha256:9a37ZK+yADkOkt7thgLIs2pyHQHIpN8qoMmlOusPtK4=
X-Face: \*\`0(1j~VfYC>ebz[&O.]=,Nm\oRM{of,liRO#7Eqi4|!]!(Gs=Akgh{J)605>C9Air?pa d{sSZ09u+A7f<^paR"/NH_#<mE1S"hde\c6PZLUB[t/s5-+Iu5DSc?P0+4%,Hl
X-Notice: Filtered by postfilter v. 0.9.3
X-Bitcoin: 1LcqwCQBQmhcWfWsVEAeyLchkAY8ZfuMnS
 by: JJ - Mon, 5 Feb 2024 13:54 UTC

On Mon, 5 Feb 2024 13:03:35 +0100, R.Wieser wrote:
>
> Although there is a "NNTP Password2" key present, its data doesn't live up
> to it.

What do you mean? It's there in plain sight. Unencrypted and unobfuscated.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<upqrn9$av90$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10532&group=comp.os.ms-windows.programmer.win32#10532

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 5 Feb 2024 15:35:11 +0100
Organization: A noiseless patient Spider
Lines: 17
Message-ID: <upqrn9$av90$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <16g1silhhs4o9e70u30210umhn3d9bfjhg@4ax.com> <upqis0$9ce8$1@dont-email.me> <149879gps9m69.oqo35k8h3j77$.dlg@40tude.net>
Injection-Date: Mon, 5 Feb 2024 14:35:21 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="83978d42173491fa057aac1e11a0f6f5";
logging-data="359712"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18QLbJTHgxnRl19bXSI+2cK05r1Qx5eSXYnVxwkpkTsXg=="
Cancel-Lock: sha1:jJXukufhQACjXX64X5mYHKrpQgM=
X-Priority: 3
X-RFC2646: Format=Flowed; Original
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
 by: R.Wieser - Mon, 5 Feb 2024 14:35 UTC

JJ,

>> Although there is a "NNTP Password2" key present, its data doesn't live
>> up
>> to it.
>
> What do you mean? It's there in plain sight. Unencrypted and unobfuscated.

When I compare the keys data with the actual password (the first thing I
did, duh) they do not match. At all.

The keys data starts with 0x01,0x02. My password as all ASCII.

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<15ztdg8sahnj9.dlg@v.nguard.lh>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10533&group=comp.os.ms-windows.programmer.win32#10533

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: V...@nguard.LH (VanguardLH)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 5 Feb 2024 11:17:23 -0600
Organization: Usenet Elder
Lines: 96
Sender: V@nguard.LH
Message-ID: <15ztdg8sahnj9.dlg@v.nguard.lh>
References: <upqci1$89si$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: individual.net 2uAHsx44Mq9ttOLXqDkeqwyHLZ2fpttJmHTk2oqLjBMLybd+NP
Keywords: VanguardLH,VLH
Cancel-Lock: sha1:mqEmQgL/9BIJbTKdQktA3GZ4kzs= sha256:gZxW0Fl6YtBOMXUNMfdszgQu2c9kRd3cPR7FsOi3EJw=
User-Agent: 40tude_Dialog/2.0.15.41
 by: VanguardLH - Mon, 5 Feb 2024 17:17 UTC

"R.Wieser" <address@is.invalid> wrote:

> I'm still using OE6 to read/write newsgroup messages, and have written
> a small program which retrieves the message count for each subscribed
> newsgroup, so I can easily see if new messages are available for
> them.
>
> The thing is, at some point I need to provide a username and
> password. The OE6 account already has them, but can't seem to be
> able to retrieve them for my "new messages" checking program.
>
> Any idea where-and-how I can retrieve them ?
>
> I've already taken a peek at the 'CredRead' and family functions
> (advapi32.ddl), but those return nothing. Presumably OE6 uses
> another method.

https://www.nucleustechnologies.com/blog/know-your-outlook-password-location/

Not even those with admin privileges for their Windows account can see
the hidden crypto hive in the registry. regedit.exe doesn't show
everything.

As I recall, Pstore got deprecated (replaced with Data Protection API;
see https://en.wikipedia.org/wiki/Data_Protection_API), and made
read-only in Windows Vista, so programs could find their old login
credentials in Pstore, but you couldn't change them. That meant some
programs still using Pstore couldn't store their credentials as of
Windows Vista.

https://en.wikipedia.org/wiki/List_of_features_removed_in_Windows_Vista
Protected Storage (PStore) has been deprecated and therefore made
read-only in Windows Vista. Microsoft recommends using DPAPI to add
new PStore data items or manage existing ones.[35] However existing
applications such as Outlook 2002 which used PStore are unable to save
passwords as a result. Any application that tries to create new PStore
data items will fail."

You're still back on Windows XP, so Pstore (pstore.exe) is still used
there. I've never had to delve into Pstore, and it's way too late for
me to start now. OE would have the hints needed to extract its
credentials from Pstore along with code to provide the hints of what
items to extract. You can start learning about Pstore here:

https://learn.microsoft.com/en-us/windows/win32/devnotes/pstore
(Considering this is only for Windows XP and Server 2003, I'm surprised
Microsoft hasn't taken down this web page since they remove lots of docs
for old Windows versions when they get discontinued.)

I've not looked into getting a list of Pstore providers used to access
protected data in Pstore. The article above has a sub-article on how to
code to get a list of those. Pstore corruption is one of the causes for
OE to be very slow; see:

https://support.microsoft.com/en-au/topic/olexp-outlook-express-performance-is-slow-a5548db3-b7e0-689a-475b-91c535dbefc6

However, the step suggesting to delete the ProtectedStorage registry key
means losing all credentials stored there for any program using Pstore.
I'm surprised even back in Windows XP that the key wasn't protected with
access privileges that you had to change, like take Ownership, apply,
and then change/add users with full control privileges. Maybe the
registry wasn't so well protected back in Windows XP from user mistakes.
I'm not sure if any non-Microsoft programs (and any other than Outlook
98 and OE) used Pstore. DPAPI was available back in Windows 2000, so it
overlap and superseded Pstore.

OE supported plug-ins; for examples, see:

https://www.mapilab.com/outlook_express/

At one time for a short time, Microsoft provided documentation on OE
plug-ins, but they yanked it, because they considered it too flaky.

https://en.wikipedia.org/wiki/Outlook_Express#Extensibility

I don't know if anyone grabbed the doc, and I don't know the URL to see
if web.archive.org has an old page with the doc. Possibly a script
could ask a plug-in to ask OE to get the login credentials to put in a
temp file that a script could read, and then destroy the file (not just
delete, but erase its sectors). Looks some devs came up with their own
API to write add-ins for OE, like:

https://www.add-in-express.com/programming-outlook-express/

Rather than delve into all that trying to gain expertise in something
that is dead, why not hard code the login credentials into your script?
Yeah, you end up exposing the login credentials in what is likely text
to define a script, so you might need to figure out how to do something
of reduced Pstore functionality by encrypting the login credentials into
a file, and somehow obfuscating your decrypt key(s).

While Nirsoft has some tools to get at protected data (see
https://www.nirsoft.net/password_recovery_tools.html), some only work
wit DPAPI. His Protected Storage PassView tool (pspv.exe) looks for
passwords stored in Pstore. I have some of his tools, but didn't keep
this one since Pstore died with Windows XP/Server 2003.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<upr9ih$dgro$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10534&group=comp.os.ms-windows.programmer.win32#10534

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 5 Feb 2024 19:31:14 +0100
Organization: A noiseless patient Spider
Lines: 58
Message-ID: <upr9ih$dgro$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh>
Injection-Date: Mon, 5 Feb 2024 18:31:45 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="83978d42173491fa057aac1e11a0f6f5";
logging-data="443256"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+3jPInxt5Gfe033EHfeiTJ2t1yP6u4BLyszQxUptFVgA=="
Cancel-Lock: sha1:hVFN17K7PMyGG9f9Kth+mEmg7To=
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-Priority: 3
X-RFC2646: Format=Flowed; Original
 by: R.Wieser - Mon, 5 Feb 2024 18:31 UTC

Vanguard,

Thank you for the links and explanation to them.

Further googeling (following some hunches) resulted in finding the registry
key to where the OutLook Express accounts is stored. Although the name is
there the password isn't stored there.

> Not even those with admin privileges for their Windows account
> can see the hidden crypto hive in the registry.

I'm going to assume that the crypto hive is protected by the OS, meaning
that low-level access to the registry thru NTDLL won't help either.

> replaced with Data Protection API;
> see https://en.wikipedia.org/wiki/Data_Protection_API

Alas, that page talks a lot, but doesn't tell me anything. After having
read it I do not even know which (XPsp3) DLLs are involved :-|

The problem with all I find is that I've still got zero in regard to
information (sample code) to what to use and how to apply it.

> https://learn.microsoft.com/en-us/windows/win32/devnotes/pstore

The problem with MS is that, contradicting the domans name, that site works
well enough when you know what to do but need to check how to call the
functions, but not all that much when you are trying to figure out what you
need do to arrive at a goal. :-(

I could try and and see what all those enums return, but I would be
stumbling in the dark. Probably will try anyway though, its the best thing
I currently got (not that hard when you got nothing :-) ).

I don't think I will mess up the store in any way, as all I need is read
access.

As for the possibility to write some plug-ins for OE ? I am not trying to
extend OE - how would I access the results from another program ?

> why not hard code the login credentials into your script? Yeah, you
> end up exposing the login credentials

Thats currently what I'm doing, and not all worried about exposing them.

The thing is the above solution means that I have to manage the data
(username, password) at (several) different places, and would like to bring
that back to just a single one.

Having to deal with encryption (thru pstore or other) is how it was
implemented in Outlook Express, and I have no other choice(?) than to do the
same.

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<zumsovcgnfzl$.dlg@v.nguard.lh>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10535&group=comp.os.ms-windows.programmer.win32#10535

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!news.chmurka.net!news.szaf.org!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: V...@nguard.LH (VanguardLH)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Mon, 5 Feb 2024 17:10:03 -0600
Organization: Usenet Elder
Lines: 65
Sender: V@nguard.LH
Message-ID: <zumsovcgnfzl$.dlg@v.nguard.lh>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: individual.net QCZoRfT1OS2ObCULzfEF/gESRvyEc6/8gSORkWWkgOx6JQWbjh
Keywords: VanguardLH,VLH
Cancel-Lock: sha1:P4et5XA9YqQ/4vNBnUr8m1tk750= sha256:LiW+4oGlPKP71gd0cXLm3bCW1qT6t2/Q4XienzIWKBs=
User-Agent: 40tude_Dialog/2.0.15.41
 by: VanguardLH - Mon, 5 Feb 2024 23:10 UTC

"R.Wieser" <address@is.invalid> wrote:

> Vanguard,
>
> Thank you for the links and explanation to them.
>
> Further googeling (following some hunches) resulted in finding the registry
> key to where the OutLook Express accounts is stored. Although the name is
> there the password isn't stored there.
>
>> Not even those with admin privileges for their Windows account
>> can see the hidden crypto hive in the registry.
>
> I'm going to assume that the crypto hive is protected by the OS, meaning
> that low-level access to the registry thru NTDLL won't help either.
>
>> replaced with Data Protection API;
>> see https://en.wikipedia.org/wiki/Data_Protection_API
>
> Alas, that page talks a lot, but doesn't tell me anything. After having
> read it I do not even know which (XPsp3) DLLs are involved :-|
>
> The problem with all I find is that I've still got zero in regard to
> information (sample code) to what to use and how to apply it.
>
>> https://learn.microsoft.com/en-us/windows/win32/devnotes/pstore
>
> The problem with MS is that, contradicting the domans name, that site works
> well enough when you know what to do but need to check how to call the
> functions, but not all that much when you are trying to figure out what you
> need do to arrive at a goal. :-(
>
> I could try and and see what all those enums return, but I would be
> stumbling in the dark. Probably will try anyway though, its the best thing
> I currently got (not that hard when you got nothing :-) ).
>
> I don't think I will mess up the store in any way, as all I need is read
> access.
>
> As for the possibility to write some plug-ins for OE ? I am not trying to
> extend OE - how would I access the results from another program ?
>
>> why not hard code the login credentials into your script? Yeah, you
>> end up exposing the login credentials
>
> Thats currently what I'm doing, and not all worried about exposing them.
>
> The thing is the above solution means that I have to manage the data
> (username, password) at (several) different places, and would like to bring
> that back to just a single one.
>
> Having to deal with encryption (thru pstore or other) is how it was
> implemented in Outlook Express, and I have no other choice(?) than to do the
> same.
>
> Regards,
> Rudy Wieser

If you find the documentation on writing OE plug-ins, perhaps there was
a function to ask OE for login credentials. OE gets the data from its
Pstore data, and returns to the plug-in. Seem far fetched that plug-ins
would have access to that info since that seems a security hole.

Without the hints in OE itself on how it uses Pstore, and what key it
used to seed the encryption, not sure you'll get it outside of OE.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<upsmjf$p6oe$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10536&group=comp.os.ms-windows.programmer.win32#10536

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!rocksolid2!news.neodome.net!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Tue, 6 Feb 2024 08:19:37 +0100
Organization: A noiseless patient Spider
Lines: 30
Message-ID: <upsmjf$p6oe$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <zumsovcgnfzl$.dlg@v.nguard.lh>
Injection-Date: Tue, 6 Feb 2024 07:20:15 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="6968d33b0ce7980cd6df1f1c5b8a2018";
logging-data="826126"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18Dkh1eOeOuJQ+NJFQDf0ej0ADra2x2I8vRcPixo5Bt2Q=="
Cancel-Lock: sha1:9iEg78WVNbUvAJ/VEJGrdGuzBAw=
X-MSMail-Priority: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-RFC2646: Format=Flowed; Original
X-Priority: 3
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
 by: R.Wieser - Tue, 6 Feb 2024 07:19 UTC

Vanguard,

> If you find the documentation on writing OE plug-ins, perhaps there
> was a function to ask OE for login credentials. OE gets the data
> from its Pstore data, and returns to the plug-in.

And than I would need to find a way to have another program communicate with
such a plug-in, a way that is not given to exist.

> Seem far fetched that plug-ins would have access to that info since
> that seems a security hole.

And then there is that ofcourse.

> Without the hints in OE itself on how it uses Pstore, and what
> key it used to seed the encryption, not sure you'll get it
> outside of OE.

:-) Thats what this question is all about : if someone knows how to
retrieve/extract the sought for data from OE6, sparing me (possible
fruitless) hours-upon-hours scouring possible leads in the hope to find such
a hint.

I already checked what DLLs and functions thereof it exports, but none are
geared towards encryption.

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<jbywtqar73le$.dlg@v.nguard.lh>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10538&group=comp.os.ms-windows.programmer.win32#10538

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: V...@nguard.LH (VanguardLH)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Tue, 6 Feb 2024 14:57:46 -0600
Organization: Usenet Elder
Lines: 36
Sender: V@nguard.LH
Message-ID: <jbywtqar73le$.dlg@v.nguard.lh>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <zumsovcgnfzl$.dlg@v.nguard.lh> <upsmjf$p6oe$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: individual.net 44R1hNKWL+4PjiM2gyvcFgg4ZXBHeqgXHoLqMxIgw5GK408FMq
Keywords: VanguardLH,VLH
Cancel-Lock: sha1:8ho8ygTkpjF3ER9dm/qyT/E/lj0= sha256:xUx2Uh0k/N8ZLpmIKRR1jWafEI2BFOlP9zw3/LvmfKs=
User-Agent: 40tude_Dialog/2.0.15.41
 by: VanguardLH - Tue, 6 Feb 2024 20:57 UTC

"R.Wieser" <address@is.invalid> wrote:

> Thats what this question is all about : if someone knows how to
> retrieve/extract the sought for data from OE6, sparing me (possible
> fruitless) hours-upon-hours scouring possible leads in the hope to find such
> a hint.

Seems way too much works for just one instance of OE, so my guess is you
use your script on many instances of OE.

If all you need is the password(s) from OE from one instance, why not
use Nirsoft's Protected Storage Passview (pspv) tool already mentioned
(https://www.nirsoft.net/utils/pspv.html)? It has command-line
arguments to save the passwords into a file. Your script could call it
via command-line, and then your script would parse the output file to
find the OE passwords. I don't what its output file looks like
regarding syntax to know if there are separate sections for each type of
app that uses Pstore, or if all passwords in Pstore get dumped out en
masse without any indicator of the app to which they belong. Since I'm
on Windows 10, there is no Pstore there to dump anything out of it.
You'd have to see what pspv showed you.

From the GUI version of pspv, there is a column called "Resource Type",
and the example shows "Outlook Express" as one of those. So, perhaps
the command-line arg to output to a file will also show Resource Types.
My guess is the output will be records (lines) with fields, and one of
the fields would be the resource type.

I'd watch pspv to see if it was issuring pstore.exe commands. If so,
you could see the syntax of those commands to use in your script. Else,
you could contact Nir Sofer (nirsofer@yahoo.com) to see if he was
conducive to showing you his source code for pspv.

Note that Pstore is only used if the user selects to save the password
when they access an account using OE. If the user elects to manually
enter it each time, the password does not get saved in Pstore.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<upv8ql$1aqep$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10539&group=comp.os.ms-windows.programmer.win32#10539

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Wed, 7 Feb 2024 07:42:26 +0100
Organization: A noiseless patient Spider
Lines: 40
Message-ID: <upv8ql$1aqep$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <zumsovcgnfzl$.dlg@v.nguard.lh> <upsmjf$p6oe$1@dont-email.me> <jbywtqar73le$.dlg@v.nguard.lh>
Injection-Date: Wed, 7 Feb 2024 06:43:34 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="3e92484431c682df8b4faac7a7654413";
logging-data="1403353"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18gNNnlcnyBCdw6MrfS1Jc86/W0xMDnKYpLx6fuNsxEAA=="
Cancel-Lock: sha1:Hvu28QalyBSDQ5HK1d7K13cNJyg=
X-RFC2646: Format=Flowed; Original
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-MSMail-Priority: Normal
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-Priority: 3
 by: R.Wieser - Wed, 7 Feb 2024 06:42 UTC

Vanguard,

>> Thats what this question is all about : if someone knows how to
>> retrieve/extract the sought for data from OE6, sparing me (possible
>> fruitless) hours-upon-hours scouring possible leads in the hope to find
>> such
>> a hint.
>
> Seems way too much works for just one instance of OE,

Indeed*, hence my question. An example of what needs to be done and how
would fix.

* though I'm a hobby programmer, and just/might/ go thru all that trouble
just to see if I can actually do it. You know, like some people like to put
a 10.000 piece puzzle together.

> so my guess is you use your script on many instances of OE.

Nope. Just one.

And what "your script" are you talking about ?

> why not use Nirsoft's Protected Storage Passview (pspv) tool already
> mentioned (https://www.nirsoft.net/utils/pspv.html)?

Reasons:

1) Knowledge. I like to know how its done.

2) Interoperability. it won't work well together with my program (which is
GUI based)

3) Having a hobby. I dislike using other peoples (small) programs when I can
write them myself (also see #1).

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<upvf8c$1bnuj$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10540&group=comp.os.ms-windows.programmer.win32#10540

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Wed, 7 Feb 2024 09:32:48 +0100
Organization: A noiseless patient Spider
Lines: 65
Message-ID: <upvf8c$1bnuj$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me>
Injection-Date: Wed, 7 Feb 2024 08:33:16 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="3e92484431c682df8b4faac7a7654413";
logging-data="1433555"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/Thh3pNf9SLiOj0MgKxQX80skBGZBk44kcbCk5NdZYUg=="
Cancel-Lock: sha1:cfpGeT2Qcr0qrShQfo7ij8LueKM=
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-Priority: 3
X-RFC2646: Format=Flowed; Response
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-MSMail-Priority: Normal
 by: R.Wieser - Wed, 7 Feb 2024 08:32 UTC

Vanguard,

>> https://learn.microsoft.com/en-us/windows/win32/devnotes/pstore
>
> The problem with MS is that, contradicting the domans name, that site
> works well enough when you know what to do but need to check how to call
> the functions, but not all that much when you are trying to figure out
> what you need do to arrive at a goal. :-(

To make a point :

I just enumerated the "PStoreProviders" using IEnumPStoreProviders::Next",
but am now looking at ... I have no idea, and MS webpage about it* doesn't
explain it either.

*
https://learn.microsoft.com/en-us/windows/win32/devnotes/ienumpstoreproviders-next

Worse, the "[out] LPWSTR *rgelt" argument is described as :

"A pointer to a string in which to return the provider type name."

As its an "LPWSTR" I'm /assuming/ it returns a pointer to a string manages
it itself. But the phrasing "A pointer to a string in which to return"
seems to indicate I have to provide space for such a string myself.

To check I just provided a pointer to some space and compared that with what
got returned, and they differ. Which seems to indicate my first hunch was
correct, and the "A pointer to a string in which to return" *should* have
been written as "in which a pointer to a string is returned".

.... which still is wrong, as it looks like some /value/ is returned (the
first four bytes are 0x1C 0x00 0x00 0x00. Not at all looking like a string,
wide or not).

Ofcourse, with the MS webpages giving zero indication to what that code
might mean.

Second, very similar issue : I thought I could take a look at what
"IEnumPStoreItems::next" would return (and get lucky and get the password).
For that I need to call the "IPStore"s "EnumItems" method. But although MS
provided a list of methods*, there is no indication of if that list is in
VTable order. As such I can't even create the needed VTable.

* https://learn.microsoft.com/en-us/windows/win32/devnotes/ipstore

And than there is the problem that that "EnumItems" method needs "pItemType"
and "pItemSubtype" arguments, which are not described anywhere either. And
without them I don't stand a chance of even getting the enumeration started.
:-(

IOW, even when I go to the horses mouth to get my information I do not get
everything thats needed (and have to scour the internet to hopefully find
it).

And by the way : I've not seen the msimn.exe or msoe.dll import the
pstore.dll anywhere.

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<1rqwo9nibf6mz$.dlg@v.nguard.lh>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10541&group=comp.os.ms-windows.programmer.win32#10541

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: V...@nguard.LH (VanguardLH)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Wed, 7 Feb 2024 12:49:46 -0600
Organization: Usenet Elder
Lines: 25
Sender: V@nguard.LH
Message-ID: <1rqwo9nibf6mz$.dlg@v.nguard.lh>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <zumsovcgnfzl$.dlg@v.nguard.lh> <upsmjf$p6oe$1@dont-email.me> <jbywtqar73le$.dlg@v.nguard.lh> <upv8ql$1aqep$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: individual.net sXCoFw/OnoG3ePvid0OTLQ2asvxIO1XLpAYWW7T0xjyao8wUXs
Keywords: VanguardLH,VLH
Cancel-Lock: sha1:JEXrZmKsjqSZGi8omIL/bcaYgVE= sha256:2ShpGS95Dmu/jgKeSn8k4Tovxq3jD3NmD3WXnAwDyZU=
User-Agent: 40tude_Dialog/2.0.15.41
 by: VanguardLH - Wed, 7 Feb 2024 18:49 UTC

"R.Wieser" <address@is.invalid> wrote:

> And what "your script" are you talking about ?

Reread your first message. Says you're using a program. Well that
could be compiled C, or some other language, a script, or whatever that
executes code whether compiled or intrepreted. Can your program call
external programs, like to run pspv.exe with command-line args?

>> why not use Nirsoft's Protected Storage Passview (pspv) tool already
>> mentioned (https://www.nirsoft.net/utils/pspv.html)?
>
> 3) Having a hobby. I dislike using other peoples (small) programs when
> I can write them myself (also see #1).

Then I suggest writing to Nir Sofer to ask if he will show you his code;
else, you're into learning Pstore programming. I only know about Pstore
because of problems with OE back in XP many years ago. I never go into
delving into Pstore nor using any code to extract data from it.
Microsoft's articles describe what it is, and describes some functions
(already gave the URL to the MS article, but really isn't where you go
for programming guidance unless you really want to learn from the ground
up by trial and error. Pstore was a Windows XP-only thing, became read
only in Windows Vista, and dropped in Windows 7, so not sure if you'll
find many hits in online search on Pstore programming.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<uq0ndt$1io1i$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10542&group=comp.os.ms-windows.programmer.win32#10542

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Wed, 7 Feb 2024 20:58:37 +0100
Organization: A noiseless patient Spider
Lines: 54
Message-ID: <uq0ndt$1io1i$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <zumsovcgnfzl$.dlg@v.nguard.lh> <upsmjf$p6oe$1@dont-email.me> <jbywtqar73le$.dlg@v.nguard.lh> <upv8ql$1aqep$1@dont-email.me> <1rqwo9nibf6mz$.dlg@v.nguard.lh>
Injection-Date: Wed, 7 Feb 2024 19:58:53 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="3e92484431c682df8b4faac7a7654413";
logging-data="1663026"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/Kzu8ZSI9CWsTosLsM6MWh8tMbmPFDaFqZMpnZFTFF/g=="
Cancel-Lock: sha1:RIoFi2pPf2epSG9qJVETRt6EdhM=
X-MSMail-Priority: Normal
X-RFC2646: Format=Flowed; Original
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-Priority: 3
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
 by: R.Wieser - Wed, 7 Feb 2024 19:58 UTC

Vanguard,

>> And what "your script" are you talking about ?
>
> Reread your first message. Says you're using a program.

Indeed, "a program". Not "a script".

> Well that could be compiled C, or some other language, a script,
> or whatever that executes code whether compiled or intrepreted.

Again, indeed.

But somehow you decided that my program must have been of the subtype
"script". How come ?

> Can your program call external programs, like to run pspv.exe
> with command-line args?

Nope, sorry.

> Then I suggest writing to Nir Sofer to ask if he will show you
> his code;

:-) If he wanted to share it I would have already found his sourcecode.
Outlook Express is over two decades old.

Hmmm... that pspv.exe program is just 52 KByte. Perhaps I should pull it
thru the disassembler and see what I can glean from it ..

> else, you're into learning Pstore programming.

Yeah, about that : I just spend some time trying to "google" that IPStore
objects vtable. I can find some partial Linux info, but nothing about the
one in Windows. And without that VTable I don't know how to call a named
method. And without being able to do that ...

> Pstore was a Windows XP-only thing, became read only in Windows
> Vista, and dropped in Windows 7

Yep. Every webpage about its functions, methods, constants and types has
that info directly below its title. Almost as if they wanted to make sure
you could not miss it. :-)

I would have thought that the information itself would, if not on an MS
website, still be floating around somewhere. It looks like I was wrong in
that.

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<1k0hqm4g58vz7.dlg@v.nguard.lh>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10543&group=comp.os.ms-windows.programmer.win32#10543

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!usenet.goja.nl.eu.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: V...@nguard.LH (VanguardLH)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Wed, 7 Feb 2024 18:50:37 -0600
Organization: Usenet Elder
Lines: 70
Sender: V@nguard.LH
Message-ID: <1k0hqm4g58vz7.dlg@v.nguard.lh>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <upvf8c$1bnuj$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: individual.net e5o1IZ42ZlyIw/YPggiwZAnOhkKsDnMAHEt9Gv5MDEDmWtuas0
Keywords: VanguardLH,VLH
Cancel-Lock: sha1:MhkEdwDEY359Zth7hrPvqd1/hU0= sha256:vA2P/1OHiFYRlCjRotUAC7ePXyHb9c+jrrUs/1qrK9I=
User-Agent: 40tude_Dialog/2.0.15.41
 by: VanguardLH - Thu, 8 Feb 2024 00:50 UTC

"R.Wieser" <address@is.invalid> wrote:

> Vanguard,
>
>>> https://learn.microsoft.com/en-us/windows/win32/devnotes/pstore
>>
>> The problem with MS is that, contradicting the domans name, that site
>> works well enough when you know what to do but need to check how to call
>> the functions, but not all that much when you are trying to figure out
>> what you need do to arrive at a goal. :-(
>
> To make a point :
>
> I just enumerated the "PStoreProviders" using IEnumPStoreProviders::Next",
> but am now looking at ... I have no idea, and MS webpage about it* doesn't
> explain it either.
>
> *
> https://learn.microsoft.com/en-us/windows/win32/devnotes/ienumpstoreproviders-next
>
> Worse, the "[out] LPWSTR *rgelt" argument is described as :
>
> "A pointer to a string in which to return the provider type name."
>
> As its an "LPWSTR" I'm /assuming/ it returns a pointer to a string manages
> it itself. But the phrasing "A pointer to a string in which to return"
> seems to indicate I have to provide space for such a string myself.
>
> To check I just provided a pointer to some space and compared that with what
> got returned, and they differ. Which seems to indicate my first hunch was
> correct, and the "A pointer to a string in which to return" *should* have
> been written as "in which a pointer to a string is returned".
>
> ... which still is wrong, as it looks like some /value/ is returned (the
> first four bytes are 0x1C 0x00 0x00 0x00. Not at all looking like a string,
> wide or not).
>
> Ofcourse, with the MS webpages giving zero indication to what that code
> might mean.
>
> Second, very similar issue : I thought I could take a look at what
> "IEnumPStoreItems::next" would return (and get lucky and get the password).
> For that I need to call the "IPStore"s "EnumItems" method. But although MS
> provided a list of methods*, there is no indication of if that list is in
> VTable order. As such I can't even create the needed VTable.
>
> * https://learn.microsoft.com/en-us/windows/win32/devnotes/ipstore
>
> And than there is the problem that that "EnumItems" method needs "pItemType"
> and "pItemSubtype" arguments, which are not described anywhere either. And
> without them I don't stand a chance of even getting the enumeration started.
> :-(
>
> IOW, even when I go to the horses mouth to get my information I do not get
> everything thats needed (and have to scour the internet to hopefully find
> it).
>
> And by the way : I've not seen the msimn.exe or msoe.dll import the
> pstore.dll anywhere.

Before going off on a red herring, have you used Nirsoft PSPV to check
if there is anything in Pstore (for the Windows account under which you
are logged into since Pstore is a per-user crypto cache)? Along with
its Resource Type column that should show 1, or more, entries named
"Outlook Express", it should also show non-blank username and password
credentials. If PSPV doesn't list any Pstore entries, somehow OE is
saving the login credentials elsewhere. Everything I read, and for
resolution of some problems with account logins in OE, Pstore was used
by OE to store login credentials. If PSPV doesn't show any login creds
for OE, there's nothing there to pull out.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<uq38ge$23e4m$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10544&group=comp.os.ms-windows.programmer.win32#10544

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Thu, 8 Feb 2024 07:11:11 +0100
Organization: A noiseless patient Spider
Lines: 27
Message-ID: <uq38ge$23e4m$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <upvf8c$1bnuj$1@dont-email.me> <1k0hqm4g58vz7.dlg@v.nguard.lh>
Injection-Date: Thu, 8 Feb 2024 19:02:38 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="359b2900c20d3cadb27ee08560ab6317";
logging-data="2209942"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18MpUeMwY42qsREs9ZXkTEIkXv4Yyze+5DTzWKirwon3g=="
Cancel-Lock: sha1:8C2LEfJKuSN7uI5xNvXSlewQqwY=
X-RFC2646: Format=Flowed; Original
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
 by: R.Wieser - Thu, 8 Feb 2024 06:11 UTC

Vanguard,

> Before going off on a red herring, have you used Nirsoft PSPV
> to check if there is anything in Pstore (...) ?

You have a point, and I did not do so until just now. There are multiple
"outlook express" entries. And yes, one with the (accountname, username
and) password I am looking for.

Though I already found out that pstorec.dll is used (and the pstore object
created), it didn't tell me if something has been stored in it.

> (for the Windows account under which you are logged into since
> Pstore is a per-user crypto cache)?

:-) It would not be much of a /protected/ store if the different users could
just take a peek at each others (username and) passwords. IOW, I already
assumed it would be linked to the users account.

I just realized : as the pspv program is GUI (and not console) based, how
did you think you could retrieve (get it to return) the password ?

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<15wbxqlv6tx27.dlg@v.nguard.lh>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10545&group=comp.os.ms-windows.programmer.win32#10545

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: V...@nguard.LH (VanguardLH)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Thu, 8 Feb 2024 13:14:25 -0600
Organization: Usenet Elder
Lines: 11
Sender: V@nguard.LH
Message-ID: <15wbxqlv6tx27.dlg@v.nguard.lh>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <upvf8c$1bnuj$1@dont-email.me> <1k0hqm4g58vz7.dlg@v.nguard.lh> <uq38ge$23e4m$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: individual.net 4Emqk4N0Au3f6+7R056EYAAYkalyLV2VLngUvFlyMLKnpNWj8B
Keywords: VanguardLH,VLH
Cancel-Lock: sha1:aVYQFqAYpvw3gLYQ0H3QEV+tFyQ= sha256:eRAzNiIhDm5neebpgVNXeTvMZwbllcmDrINCK9Osx34=
User-Agent: 40tude_Dialog/2.0.15.41
 by: VanguardLH - Thu, 8 Feb 2024 19:14 UTC

"R.Wieser" <address@is.invalid> wrote:

> I just realized : as the pspv program is GUI (and not console) based, how
> did you think you could retrieve (get it to return) the password ?

It has command-line args to dump to file. That's why I wondered if your
program could call an external program to create the output file, and
then your program would parse the output file to extract the OE creds.

https://www.nirsoft.net/utils/pspv.html
Scroll down to the "Command-line options" section.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<uq3b45$23si5$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10546&group=comp.os.ms-windows.programmer.win32#10546

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Thu, 8 Feb 2024 20:46:56 +0100
Organization: A noiseless patient Spider
Lines: 28
Message-ID: <uq3b45$23si5$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <zumsovcgnfzl$.dlg@v.nguard.lh> <upsmjf$p6oe$1@dont-email.me> <jbywtqar73le$.dlg@v.nguard.lh>
Injection-Date: Thu, 8 Feb 2024 19:47:17 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="359b2900c20d3cadb27ee08560ab6317";
logging-data="2224709"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+qryL898Oxg8qEPf/NWF4RTrodlIpViy5YmgTuwDYE8Q=="
Cancel-Lock: sha1:Tn5E/dbQSCjke0+9z7u0MPSposE=
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-MSMail-Priority: Normal
X-Priority: 3
X-RFC2646: Format=Flowed; Original
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
 by: R.Wieser - Thu, 8 Feb 2024 19:46 UTC

Vanguard (and others),

>> Thats what this question is all about : if someone knows how to
>> retrieve/extract the sought for data from OE6, sparing me (possible
>> fruitless) hours-upon-hours scouring possible leads in the hope to find
>> such
>> a hint.
>
> Seems way too much works for just one instance of OE,

I got lucky, and found the order of methods of the iPStore vtable in an
incomplete PowerBasic snippet. That helped quite a bit. Combined with a few
other incomplete snippets I was able to figure out what needed to be done to
get a list of OE (mail and news) passwords (and some other stuff).

Looking /back/ its not at all complex. When I was looking /forward/ however
....

I stil have to go thru the OE accounts data in the registry to retrieve the
data needed to select the correct password to extract, but that should not
be a problem.

Or, with /way/ less words : "mischief managed". :-)

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<uq4ofs$2i2tl$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10547&group=comp.os.ms-windows.programmer.win32#10547

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Fri, 9 Feb 2024 09:40:59 +0100
Organization: A noiseless patient Spider
Lines: 29
Message-ID: <uq4ofs$2i2tl$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <upvf8c$1bnuj$1@dont-email.me> <1k0hqm4g58vz7.dlg@v.nguard.lh> <uq38ge$23e4m$1@dont-email.me> <15wbxqlv6tx27.dlg@v.nguard.lh>
Injection-Date: Fri, 9 Feb 2024 08:41:32 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="4e872e72268baaded9645df212a503cc";
logging-data="2689973"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/RdzicQqDza/YE7VlMKSt5K8GdekhH5qOvCPjXITwHJA=="
Cancel-Lock: sha1:r+mQ9XWzU+m2LJ04M5fH3b3ErV0=
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-Priority: 3
X-RFC2646: Format=Flowed; Original
 by: R.Wieser - Fri, 9 Feb 2024 08:40 UTC

Vanguard,

>> I just realized : as the pspv program is GUI (and not console) based, how
>> did you think you could retrieve (get it to return) the password ?
>
> It has command-line args to dump to file.
....
> https://www.nirsoft.net/utils/pspv.html
> Scroll down to the "Command-line options" section.

Thanks. I did not notice those before.

> That's why I wondered if your program could call an external program
> to create the output file, and then your program would parse the output
> file to extract the OE creds.

My current program reads the username and password from an INI file. I
could imagine a (VB)script running the psvp program, reading the output and
stuffing the read items into the INI file, and than start my program.

A bit of a downside : the psvp program does not seem to mark email and
newsgroups differently (even though the registy "Accounts" entries make it
rather clear which type they are - pop3/smtp vs nntp). The generated INI
would be a bit murky ...

Regards,
Rudy Wieser

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<3h480qj6z900$.dlg@v.nguard.lh>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10548&group=comp.os.ms-windows.programmer.win32#10548

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: V...@nguard.LH (VanguardLH)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Fri, 9 Feb 2024 11:38:09 -0600
Organization: Usenet Elder
Lines: 32
Sender: V@nguard.LH
Message-ID: <3h480qj6z900$.dlg@v.nguard.lh>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <upvf8c$1bnuj$1@dont-email.me> <1k0hqm4g58vz7.dlg@v.nguard.lh> <uq38ge$23e4m$1@dont-email.me> <15wbxqlv6tx27.dlg@v.nguard.lh> <uq4ofs$2i2tl$1@dont-email.me>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Trace: individual.net Mas83V7/R8PNRg25gmXnawuMNTG9hWtSiYR2/Xw+uMGpKW9UDT
Keywords: VanguardLH,VLH
Cancel-Lock: sha1:88ANZzR2rBPQVfVWDPyCsm6B4FY= sha256:D80Y1jWnxdRa1rsDy/tjP9tJNak76rbm0QD54HADbAk=
User-Agent: 40tude_Dialog/2.0.15.41
 by: VanguardLH - Fri, 9 Feb 2024 17:38 UTC

"R.Wieser" <address@is.invalid> wrote:

> A bit of a downside : the psvp program does not seem to mark email and
> newsgroups differently (even though the registy "Accounts" entries
> make it rather clear which type they are - pop3/smtp vs nntp). The
> generated INI would be a bit murky ...

Other than the Resource Type that identifies the credentials belong to
Outlook Express, doesn't the Resource Name identify the account? I'm
going by the Nirsoft PSPV sample shown at its web site. The column
headers shown in PSPV are:

Resource Name
Resource Type
User Name/Value
Password

The Resource Name looks to be the account name. It won't help if you
give e-mail and newsgroups accounts the same name. However, I don't see
the Resource Name, or another field shown, that identifies the type of
account, just its name.

If the registry entries identify type of account, and also give the
account name, you could pair up the registry account name for NNTP
accounts with the PSPV Resource Names. You'd have a table of registry
account names of NNTP type, pair the account name to the PSPV Resource
Name, and then get the password from the matching PSPV entry.

Pstore was just to secrete the passwords (and usernames), and really
that's all it did. Supposedly the program using Pstore would know which
Resource Name to use for which account, but maybe it got that from the
accounts list in the registry.

Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password

<uq5ulk$2p13s$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=10549&group=comp.os.ms-windows.programmer.win32#10549

  copy link   Newsgroups: alt.comp.os.windows-xp comp.os.ms-windows.programmer.win32
Path: i2pn2.org!i2pn.org!news.nntp4.net!paganini.bofh.team!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: addr...@is.invalid (R.Wieser)
Newsgroups: alt.comp.os.windows-xp,comp.os.ms-windows.programmer.win32
Subject: Re: XPsp3 - (how to) retrieve OE6 newsgroup account name and password
Date: Fri, 9 Feb 2024 20:31:26 +0100
Organization: A noiseless patient Spider
Lines: 30
Message-ID: <uq5ulk$2p13s$1@dont-email.me>
References: <upqci1$89si$1@dont-email.me> <15ztdg8sahnj9.dlg@v.nguard.lh> <upr9ih$dgro$1@dont-email.me> <upvf8c$1bnuj$1@dont-email.me> <1k0hqm4g58vz7.dlg@v.nguard.lh> <uq38ge$23e4m$1@dont-email.me> <15wbxqlv6tx27.dlg@v.nguard.lh> <uq4ofs$2i2tl$1@dont-email.me> <3h480qj6z900$.dlg@v.nguard.lh>
Injection-Date: Fri, 9 Feb 2024 19:33:08 -0000 (UTC)
Injection-Info: dont-email.me; posting-host="4e872e72268baaded9645df212a503cc";
logging-data="2917500"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18ahUQ6TGr7IRUfGOC/IfP+bbQyONVxBDQxGSyEF1Ox0A=="
Cancel-Lock: sha1:rt0/b7q92eKb7UoCHgVSPdgIoeg=
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5512
X-Priority: 3
X-RFC2646: Format=Flowed; Original
X-Newsreader: Microsoft Outlook Express 6.00.2900.5512
X-MSMail-Priority: Normal
 by: R.Wieser - Fri, 9 Feb 2024 19:31 UTC

Vanguard,

>> A bit of a downside : the psvp program does not seem to mark email
>> andnewsgroups differently (even though the registy "Accounts"
>> entries make it rather clear which type they are - pop3/smtp vs
>> nntp). The generated INI would be a bit murky ...

> It won't help if you give e-mail and newsgroups accounts the same name.

That.

> If the registry entries identify type of account, and also give the
> account name, you could pair up the registry account name for NNTP
> accounts with the PSPV Resource Names.

Oh man, thats hacks and more hacks ...

Yes, it could be done that way. No, there is not a single hair on my head
which would think of creating such a "solution". Sorry.

Luckily I have some finished pstore code, as well as most of the registry
account-retrieval code. A bit more work tomorrow and I will have a nice
function which I can feed a newsgroup-servers name and get its username and
password back.

Regards,
Rudy Wieser

1
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor